head	1.4;
access;
symbols
	pkgsrc-2026Q1:1.4.0.2
	pkgsrc-2026Q1-base:1.4
	pkgsrc-2025Q4:1.2.0.8
	pkgsrc-2025Q4-base:1.2
	pkgsrc-2025Q3:1.2.0.6
	pkgsrc-2025Q3-base:1.2
	pkgsrc-2025Q2:1.2.0.4
	pkgsrc-2025Q2-base:1.2
	pkgsrc-2025Q1:1.2.0.2
	pkgsrc-2025Q1-base:1.2
	pkgsrc-2024Q4:1.1.0.46
	pkgsrc-2024Q4-base:1.1
	pkgsrc-2024Q3:1.1.0.44
	pkgsrc-2024Q3-base:1.1
	pkgsrc-2024Q2:1.1.0.42
	pkgsrc-2024Q2-base:1.1
	pkgsrc-2024Q1:1.1.0.40
	pkgsrc-2024Q1-base:1.1
	pkgsrc-2023Q4:1.1.0.38
	pkgsrc-2023Q4-base:1.1
	pkgsrc-2023Q3:1.1.0.36
	pkgsrc-2023Q3-base:1.1
	pkgsrc-2023Q2:1.1.0.34
	pkgsrc-2023Q2-base:1.1
	pkgsrc-2023Q1:1.1.0.32
	pkgsrc-2023Q1-base:1.1
	pkgsrc-2022Q4:1.1.0.30
	pkgsrc-2022Q4-base:1.1
	pkgsrc-2022Q3:1.1.0.28
	pkgsrc-2022Q3-base:1.1
	pkgsrc-2022Q2:1.1.0.26
	pkgsrc-2022Q2-base:1.1
	pkgsrc-2022Q1:1.1.0.24
	pkgsrc-2022Q1-base:1.1
	pkgsrc-2021Q4:1.1.0.22
	pkgsrc-2021Q4-base:1.1
	pkgsrc-2021Q3:1.1.0.20
	pkgsrc-2021Q3-base:1.1
	pkgsrc-2021Q2:1.1.0.18
	pkgsrc-2021Q2-base:1.1
	pkgsrc-2021Q1:1.1.0.16
	pkgsrc-2021Q1-base:1.1
	pkgsrc-2020Q4:1.1.0.14
	pkgsrc-2020Q4-base:1.1
	pkgsrc-2020Q3:1.1.0.12
	pkgsrc-2020Q3-base:1.1
	pkgsrc-2020Q2:1.1.0.10
	pkgsrc-2020Q2-base:1.1
	pkgsrc-2020Q1:1.1.0.6
	pkgsrc-2020Q1-base:1.1
	pkgsrc-2019Q4:1.1.0.8
	pkgsrc-2019Q4-base:1.1
	pkgsrc-2019Q3:1.1.0.4
	pkgsrc-2019Q3-base:1.1
	pkgsrc-2019Q2:1.1.0.2
	pkgsrc-2019Q2-base:1.1;
locks; strict;
comment	@# @;


1.4
date	2026.01.11.12.25.20;	author adam;	state Exp;
branches;
next	1.3;
commitid	uEU3rqwp1dJSkYpG;

1.3
date	2025.12.26.16.08.04;	author adam;	state Exp;
branches;
next	1.2;
commitid	21Jw5b2v3m8a5WnG;

1.2
date	2025.02.12.13.08.06;	author adam;	state Exp;
branches;
next	1.1;
commitid	1Sa8ZSwRAlJ8hbJF;

1.1
date	2019.06.11.11.34.39;	author markd;	state Exp;
branches;
next	;
commitid	nU1JGjCP0udhoLqB;


desc
@@


1.4
log
@py-gcovr: updated to 8.5

8.5
Breaking changes:

The option --lcov-test-name doesn't accept values with spaces anymore.
The option --lcov-format-1.x is deprecated and mapped to --lcov-format-version=1.x.
Changes to HTML templates:
The file overview table in the default theme now uses a grid layout.
The function lists table in both themes are changed to a grid layout.
Add a common template folder where the common templates for the themes are stored.
It contains the function content and source page navigation templates.
Restructure the the summary and move some data to the footer.
Add sorting by clicking on the headers of the file overview table and the function table.
Add common stylesheet for all themes.
Add navigation links to source details.
Add buttons to toggle line background color in source details view.
Add a document overview with all active lines in source details view.
Added --html-static-report and remove argument from --html-single-page.
New features and notable changes:

Due to added support for LLVM source based code coverage format some configuration file
keys got changed. The old gcov named options are still supported but they also affect the
LLVM toolchain.

gcov-exclude-directory is changed to exclude-directory.
keep-gcov-files is changed to keep-intermediate-files.
delete-gcov-files is changed to delete-input-files.
Bug fixes and small improvements:

Fix coveralls report if there are several coverage elements per line.
Fix not excluded conditions if branches are excluded by comments.
Fix reported excluded branches in LCOV report.
Fix exclusion filter --gcov-exclude.
Add --json-trace-data-source to include the trace data source in the JSON report
independent from --verbose.
Remove generated gcov files on error and catch additional gcov error message.
Change default HTML theme excluded line color.
Move theme colors to a separate CSS file so they can be overridden with a simple
--html-template-dir directory with only the style.colors.css file
Fix regular expression for detecting a version mismatch between gcc and gcov.
Improve logging messages for GCOV execution errors to not print information twice and add trace
messages for gcov execution.
Fix handling of lines after function specialization.
Improve performance by changing logging messages (level and lazy interpolation).
Fix text report for covered decisions.
Fix runtime problem introduced with 8.4.
Fix wrong entries in data source attribute of JSON report.
Fix nested HTML report without coverage data.
Add warning if coverage data is empty.
Add warning if function lines are missing in external generated GCOV files.
Extend support for zipped reports. If last suffix is .xz then LZMA is used to compress the report.
Fix function exclusion in report generation.
Do not ignore lines without functions, e.g. from inlined code.
Ignore all whitespaces instead of only spaces for detection of noncode lines.
Add support for temporary merging line coverage objects without modifying the data model.
Change internal behavior of --exclude-function-lines to exclude the line of function definition
instead of removing it completely.
Ensure that all functions have a line coverage element in LCOV report.
@
text
@@@comment $NetBSD: PLIST,v 1.3 2025/12/26 16:08:04 adam Exp $
bin/gcovr-${PYVERSSUFFIX}
${PYSITELIB}/${WHEEL_INFODIR}/METADATA
${PYSITELIB}/${WHEEL_INFODIR}/RECORD
${PYSITELIB}/${WHEEL_INFODIR}/WHEEL
${PYSITELIB}/${WHEEL_INFODIR}/entry_points.txt
${PYSITELIB}/${WHEEL_INFODIR}/licenses/LICENSE.txt
${PYSITELIB}/gcovr/__init__.py
${PYSITELIB}/gcovr/__init__.pyc
${PYSITELIB}/gcovr/__init__.pyo
${PYSITELIB}/gcovr/__main__.py
${PYSITELIB}/gcovr/__main__.pyc
${PYSITELIB}/gcovr/__main__.pyo
${PYSITELIB}/gcovr/configuration.py
${PYSITELIB}/gcovr/configuration.pyc
${PYSITELIB}/gcovr/configuration.pyo
${PYSITELIB}/gcovr/data_model/__init__.py
${PYSITELIB}/gcovr/data_model/__init__.pyc
${PYSITELIB}/gcovr/data_model/__init__.pyo
${PYSITELIB}/gcovr/data_model/container.py
${PYSITELIB}/gcovr/data_model/container.pyc
${PYSITELIB}/gcovr/data_model/container.pyo
${PYSITELIB}/gcovr/data_model/coverage.py
${PYSITELIB}/gcovr/data_model/coverage.pyc
${PYSITELIB}/gcovr/data_model/coverage.pyo
${PYSITELIB}/gcovr/data_model/coverage_dict.py
${PYSITELIB}/gcovr/data_model/coverage_dict.pyc
${PYSITELIB}/gcovr/data_model/coverage_dict.pyo
${PYSITELIB}/gcovr/data_model/merging.py
${PYSITELIB}/gcovr/data_model/merging.pyc
${PYSITELIB}/gcovr/data_model/merging.pyo
${PYSITELIB}/gcovr/data_model/stats.py
${PYSITELIB}/gcovr/data_model/stats.pyc
${PYSITELIB}/gcovr/data_model/stats.pyo
${PYSITELIB}/gcovr/data_model/version.py
${PYSITELIB}/gcovr/data_model/version.pyc
${PYSITELIB}/gcovr/data_model/version.pyo
${PYSITELIB}/gcovr/decision_analysis.py
${PYSITELIB}/gcovr/decision_analysis.pyc
${PYSITELIB}/gcovr/decision_analysis.pyo
${PYSITELIB}/gcovr/exceptions.py
${PYSITELIB}/gcovr/exceptions.pyc
${PYSITELIB}/gcovr/exceptions.pyo
${PYSITELIB}/gcovr/exclusions/__init__.py
${PYSITELIB}/gcovr/exclusions/__init__.pyc
${PYSITELIB}/gcovr/exclusions/__init__.pyo
${PYSITELIB}/gcovr/exclusions/markers.py
${PYSITELIB}/gcovr/exclusions/markers.pyc
${PYSITELIB}/gcovr/exclusions/markers.pyo
${PYSITELIB}/gcovr/exclusions/noncode.py
${PYSITELIB}/gcovr/exclusions/noncode.pyc
${PYSITELIB}/gcovr/exclusions/noncode.pyo
${PYSITELIB}/gcovr/exclusions/utils.py
${PYSITELIB}/gcovr/exclusions/utils.pyc
${PYSITELIB}/gcovr/exclusions/utils.pyo
${PYSITELIB}/gcovr/filter.py
${PYSITELIB}/gcovr/filter.pyc
${PYSITELIB}/gcovr/filter.pyo
${PYSITELIB}/gcovr/formats/__init__.py
${PYSITELIB}/gcovr/formats/__init__.pyc
${PYSITELIB}/gcovr/formats/__init__.pyo
${PYSITELIB}/gcovr/formats/base.py
${PYSITELIB}/gcovr/formats/base.pyc
${PYSITELIB}/gcovr/formats/base.pyo
${PYSITELIB}/gcovr/formats/clover/__init__.py
${PYSITELIB}/gcovr/formats/clover/__init__.pyc
${PYSITELIB}/gcovr/formats/clover/__init__.pyo
${PYSITELIB}/gcovr/formats/clover/write.py
${PYSITELIB}/gcovr/formats/clover/write.pyc
${PYSITELIB}/gcovr/formats/clover/write.pyo
${PYSITELIB}/gcovr/formats/cobertura/__init__.py
${PYSITELIB}/gcovr/formats/cobertura/__init__.pyc
${PYSITELIB}/gcovr/formats/cobertura/__init__.pyo
${PYSITELIB}/gcovr/formats/cobertura/read.py
${PYSITELIB}/gcovr/formats/cobertura/read.pyc
${PYSITELIB}/gcovr/formats/cobertura/read.pyo
${PYSITELIB}/gcovr/formats/cobertura/write.py
${PYSITELIB}/gcovr/formats/cobertura/write.pyc
${PYSITELIB}/gcovr/formats/cobertura/write.pyo
${PYSITELIB}/gcovr/formats/coveralls/__init__.py
${PYSITELIB}/gcovr/formats/coveralls/__init__.pyc
${PYSITELIB}/gcovr/formats/coveralls/__init__.pyo
${PYSITELIB}/gcovr/formats/coveralls/write.py
${PYSITELIB}/gcovr/formats/coveralls/write.pyc
${PYSITELIB}/gcovr/formats/coveralls/write.pyo
${PYSITELIB}/gcovr/formats/csv/__init__.py
${PYSITELIB}/gcovr/formats/csv/__init__.pyc
${PYSITELIB}/gcovr/formats/csv/__init__.pyo
${PYSITELIB}/gcovr/formats/csv/write.py
${PYSITELIB}/gcovr/formats/csv/write.pyc
${PYSITELIB}/gcovr/formats/csv/write.pyo
${PYSITELIB}/gcovr/formats/gcov/__init__.py
${PYSITELIB}/gcovr/formats/gcov/__init__.pyc
${PYSITELIB}/gcovr/formats/gcov/__init__.pyo
${PYSITELIB}/gcovr/formats/gcov/parser/__init__.py
${PYSITELIB}/gcovr/formats/gcov/parser/__init__.pyc
${PYSITELIB}/gcovr/formats/gcov/parser/__init__.pyo
${PYSITELIB}/gcovr/formats/gcov/parser/common.py
${PYSITELIB}/gcovr/formats/gcov/parser/common.pyc
${PYSITELIB}/gcovr/formats/gcov/parser/common.pyo
${PYSITELIB}/gcovr/formats/gcov/parser/json.py
${PYSITELIB}/gcovr/formats/gcov/parser/json.pyc
${PYSITELIB}/gcovr/formats/gcov/parser/json.pyo
${PYSITELIB}/gcovr/formats/gcov/parser/text.py
${PYSITELIB}/gcovr/formats/gcov/parser/text.pyc
${PYSITELIB}/gcovr/formats/gcov/parser/text.pyo
${PYSITELIB}/gcovr/formats/gcov/read.py
${PYSITELIB}/gcovr/formats/gcov/read.pyc
${PYSITELIB}/gcovr/formats/gcov/read.pyo
${PYSITELIB}/gcovr/formats/gcov/workers.py
${PYSITELIB}/gcovr/formats/gcov/workers.pyc
${PYSITELIB}/gcovr/formats/gcov/workers.pyo
${PYSITELIB}/gcovr/formats/html/__init__.py
${PYSITELIB}/gcovr/formats/html/__init__.pyc
${PYSITELIB}/gcovr/formats/html/__init__.pyo
${PYSITELIB}/gcovr/formats/html/common/base.html
${PYSITELIB}/gcovr/formats/html/common/functions_page.content.html
${PYSITELIB}/gcovr/formats/html/common/gcovr.js
${PYSITELIB}/gcovr/formats/html/common/single_page.html
${PYSITELIB}/gcovr/formats/html/common/source_page.navigation.html
${PYSITELIB}/gcovr/formats/html/common/style.common.css
${PYSITELIB}/gcovr/formats/html/default/directory_page.content.html
${PYSITELIB}/gcovr/formats/html/default/directory_page.html
${PYSITELIB}/gcovr/formats/html/default/directory_page.navigation.html
${PYSITELIB}/gcovr/formats/html/default/directory_page.summary.html
${PYSITELIB}/gcovr/formats/html/default/functions_page.html
${PYSITELIB}/gcovr/formats/html/default/functions_page.summary.html
${PYSITELIB}/gcovr/formats/html/default/pygments.blue
${PYSITELIB}/gcovr/formats/html/default/pygments.green
${PYSITELIB}/gcovr/formats/html/default/source_page.content.html
${PYSITELIB}/gcovr/formats/html/default/source_page.html
${PYSITELIB}/gcovr/formats/html/default/source_page.summary.html
${PYSITELIB}/gcovr/formats/html/default/style.colors.css
${PYSITELIB}/gcovr/formats/html/default/style.css
${PYSITELIB}/gcovr/formats/html/default/style.details.css
${PYSITELIB}/gcovr/formats/html/default/style.filelist.css
${PYSITELIB}/gcovr/formats/html/default/style.meter.css
${PYSITELIB}/gcovr/formats/html/default/style.primer-stub.css
${PYSITELIB}/gcovr/formats/html/default/style.summary.css
${PYSITELIB}/gcovr/formats/html/github/directory_page.content.html
${PYSITELIB}/gcovr/formats/html/github/directory_page.html
${PYSITELIB}/gcovr/formats/html/github/directory_page.navigation.html
${PYSITELIB}/gcovr/formats/html/github/directory_page.summary.html
${PYSITELIB}/gcovr/formats/html/github/functions_page.html
${PYSITELIB}/gcovr/formats/html/github/functions_page.summary.html
${PYSITELIB}/gcovr/formats/html/github/primer.css
${PYSITELIB}/gcovr/formats/html/github/pygments.blue
${PYSITELIB}/gcovr/formats/html/github/pygments.dark-blue
${PYSITELIB}/gcovr/formats/html/github/pygments.dark-green
${PYSITELIB}/gcovr/formats/html/github/pygments.green
${PYSITELIB}/gcovr/formats/html/github/source_page.content.html
${PYSITELIB}/gcovr/formats/html/github/source_page.html
${PYSITELIB}/gcovr/formats/html/github/source_page.summary.html
${PYSITELIB}/gcovr/formats/html/github/style.colors.css
${PYSITELIB}/gcovr/formats/html/github/style.css
${PYSITELIB}/gcovr/formats/html/write.py
${PYSITELIB}/gcovr/formats/html/write.pyc
${PYSITELIB}/gcovr/formats/html/write.pyo
${PYSITELIB}/gcovr/formats/jacoco/__init__.py
${PYSITELIB}/gcovr/formats/jacoco/__init__.pyc
${PYSITELIB}/gcovr/formats/jacoco/__init__.pyo
${PYSITELIB}/gcovr/formats/jacoco/write.py
${PYSITELIB}/gcovr/formats/jacoco/write.pyc
${PYSITELIB}/gcovr/formats/jacoco/write.pyo
${PYSITELIB}/gcovr/formats/json/__init__.py
${PYSITELIB}/gcovr/formats/json/__init__.pyc
${PYSITELIB}/gcovr/formats/json/__init__.pyo
${PYSITELIB}/gcovr/formats/json/read.py
${PYSITELIB}/gcovr/formats/json/read.pyc
${PYSITELIB}/gcovr/formats/json/read.pyo
${PYSITELIB}/gcovr/formats/json/write.py
${PYSITELIB}/gcovr/formats/json/write.pyc
${PYSITELIB}/gcovr/formats/json/write.pyo
${PYSITELIB}/gcovr/formats/lcov/__init__.py
${PYSITELIB}/gcovr/formats/lcov/__init__.pyc
${PYSITELIB}/gcovr/formats/lcov/__init__.pyo
${PYSITELIB}/gcovr/formats/lcov/write.py
${PYSITELIB}/gcovr/formats/lcov/write.pyc
${PYSITELIB}/gcovr/formats/lcov/write.pyo
${PYSITELIB}/gcovr/formats/llvm/__init__.py
${PYSITELIB}/gcovr/formats/llvm/__init__.pyc
${PYSITELIB}/gcovr/formats/llvm/__init__.pyo
${PYSITELIB}/gcovr/formats/llvm/read.py
${PYSITELIB}/gcovr/formats/llvm/read.pyc
${PYSITELIB}/gcovr/formats/llvm/read.pyo
${PYSITELIB}/gcovr/formats/markdown/__init__.py
${PYSITELIB}/gcovr/formats/markdown/__init__.pyc
${PYSITELIB}/gcovr/formats/markdown/__init__.pyo
${PYSITELIB}/gcovr/formats/markdown/default/report_template.md.j2
${PYSITELIB}/gcovr/formats/markdown/write.py
${PYSITELIB}/gcovr/formats/markdown/write.pyc
${PYSITELIB}/gcovr/formats/markdown/write.pyo
${PYSITELIB}/gcovr/formats/sonarqube/__init__.py
${PYSITELIB}/gcovr/formats/sonarqube/__init__.pyc
${PYSITELIB}/gcovr/formats/sonarqube/__init__.pyo
${PYSITELIB}/gcovr/formats/sonarqube/write.py
${PYSITELIB}/gcovr/formats/sonarqube/write.pyc
${PYSITELIB}/gcovr/formats/sonarqube/write.pyo
${PYSITELIB}/gcovr/formats/txt/__init__.py
${PYSITELIB}/gcovr/formats/txt/__init__.pyc
${PYSITELIB}/gcovr/formats/txt/__init__.pyo
${PYSITELIB}/gcovr/formats/txt/write.py
${PYSITELIB}/gcovr/formats/txt/write.pyc
${PYSITELIB}/gcovr/formats/txt/write.pyo
${PYSITELIB}/gcovr/logging.py
${PYSITELIB}/gcovr/logging.pyc
${PYSITELIB}/gcovr/logging.pyo
${PYSITELIB}/gcovr/options.py
${PYSITELIB}/gcovr/options.pyc
${PYSITELIB}/gcovr/options.pyo
${PYSITELIB}/gcovr/py.typed
${PYSITELIB}/gcovr/timestamps.py
${PYSITELIB}/gcovr/timestamps.pyc
${PYSITELIB}/gcovr/timestamps.pyo
${PYSITELIB}/gcovr/utils.py
${PYSITELIB}/gcovr/utils.pyc
${PYSITELIB}/gcovr/utils.pyo
${PYSITELIB}/gcovr/version.py
${PYSITELIB}/gcovr/version.pyc
${PYSITELIB}/gcovr/version.pyo
@


1.3
log
@py-gcovr: updated to 8.4

8.4

Breaking changes:

Improve data model to have several coverage information per line.
Option --merge-mode-conditions is removed.
Property function_name for a line in JSON report is now always set.
JSON report can now have several entries per line also with legacy text parser.
Cobertura and HTML report now contain function coverage also for older GCC versions.
Add excluded metrics to HTML report. The total numbers in the report contain now also
the excluded elements.
New features and notable changes:

Add support for Markdown output format.
Add filename and line number in warning logs.
Add option --markdown-file-link to link files in Markdown report.
Abort on version mismatch between gcc/gcov instead of trying all working directories.
Clean up temporary files generated by gcov tool when exception occurs.
Add branch information to Coveralls report.
Add support to define --exclude-lines-by-pattern and --exclude-branches-by-pattern
more than once.
Add --sonarqube-metric to define which metric is used as branch metric in report.
Add --sonarqube-pretty to pretty print the report.
If the value for -j is 0, the number of CPUs is used. If it is negative the it means "all but N CPUs".
Add --warn-excluded-lines-with-hits to print a warning if a line which is excluded by comments has a hit counter != 0.
Add comment to exclude branches without hit in addition to exclude all.
Bug fixes and small improvements:

Fix warning Deprecated config key None used, please use 'txt-metric=branch' instead.
if txt-metric="branch" is used in config file.

Add excluded property for conditions and calls to the JSON report.

Remove the fixed width of the HTML details which leads to text overflows.

Fix duplicate constructors, destructors and wrong const overload functions in Cobertura report.

Fix JaCoCo report to follow the DTD.

Do not use option --calls as exclusion filter.

Add support for reading gcov JSON data without source files.

Add back references to the data model to get source location in error messages.

Fix deprecation warning in standalone application.

Improvements of development environment

Add optional dependencies for development.
Add pre-commit hook to ensure quality checks.
All line endings, except for the git internal files, are preserved.
Update the reference data to the newest pygments version and extend the tests with clang-17,
clang-18 and clang-19.

Fix error when merging conditions (and branches) for the same line if they are reported different
across GCOV data files.

Improve branch details view if there are branches for several functions on same line.

Do not add files without functions and lines from gcov JSON files to data model.

Improve error message if regex pattern is wrong.

The error message now contains the option name.
Align option names if it can be used multiple times. The key used for storing the option is always
written in singular and the option always has a singular version, except the options
--gcov-ignore-errors and --gcov-ignore-parse-errors.
Fix wrong handling of functions with specialization.

Fix errors in Clover XML report.

Remove optional attributes where information is not available:
loc contained the highest line number with coverage information instead of lines of the file.
ncloc contained the number of reportable lines instead of the lines of the file without comments.
statements and coveredstatements contain now the correct value instead of 0.
Add highlighting for exclusion markers in HTML report file details.

Make <title> of HTML reports more informative. The title of a file's source listing page now includes the file path.

Documentation:

Fix formatting of verbatim text included from external files.
Internal changes:

Refactor internal data model:
Add merge functionality to coverage objects instead of an own file.
Move data serialization and deserialization from JSON report to coverage classes.
Update Windows runner to windows-2022 and windows-2025.
Add trusted publishing.
Restructure the line coverage data model and change the sort order in the reports.
Improve creation of docker image and fix build warnings.
@
text
@d1 1
a1 1
@@comment $NetBSD: PLIST,v 1.2 2025/02/12 13:08:06 adam Exp $
d41 3
d116 6
a121 1
${PYSITELIB}/gcovr/formats/html/default/base.html
a125 1
${PYSITELIB}/gcovr/formats/html/default/functions_page.content.html
a129 1
${PYSITELIB}/gcovr/formats/html/default/single_page.html
a131 1
${PYSITELIB}/gcovr/formats/html/default/source_page.navigation.html
d133 1
d138 1
a139 1
${PYSITELIB}/gcovr/formats/html/github/base.html
a143 1
${PYSITELIB}/gcovr/formats/html/github/functions_page.content.html
a150 1
${PYSITELIB}/gcovr/formats/html/github/single_page.html
a152 1
${PYSITELIB}/gcovr/formats/html/github/source_page.navigation.html
d154 1
d180 6
d211 1
@


1.2
log
@py-gcovr: updated to 8.3

8.3

Known bugs:

Breaking changes:

Replace setup.py with hatchling. To install from source at least version 21.3 of pip is needed.
Drop support for Python 3.8.

New features and notable changes:

Add condition coverage to text summary report.
Add --include to search files in search paths which should be added to report.
Add option to generate LCOV format produced by version 1.x of LCOV tool.
Extend logging for data merge errors with info about the data sources.
Add condition coverage merge mode option --merge-mode-conditions
Add --gcov-suspicious-hits-threshold to configure the value for detecting suspicious hits in GCOV files.
Renamed JSON element destination_blockno to destination_block_id.
Add --html-block-ids to show the block ids of the lines and branches in HTML report.

Bug fixes and small improvements:

Fixed an error handling bug throwing a TypeError exception on a gcov merge assertion failure
instead of reporting the error and (if requested by the user) continuing execution.
Check format version of external generated gcov JSON files.
Fix crash on Windows when trying to fix the case of the files.
Fix LCOV report. Excluded lines where added with a count of 0.
Fix line exclusion not clearing all child coverage data.
Fix summary stats in JaCoCo report.
Fix path issue when reading/writing Coveralls report.
Fix issue with negative counters in GCOV JSON export.

Documentation:

Update documentation for developing with Docker.

Internal changes:

Add MacOs 15 and clang-16 to the GitHub test workflow.
Fix sporadic timestamp mismatch in development build package.
Replace black and flake8 with ruff and move configuration of pytest to pyproject.toml.
Add pylint for testing code.
Align variable names across the files.
Rework exclusion handling to keep information about excluded coverage.
Add mypy (using strict configuration) for testing code.
Add a container class for the coverage data.
Replace setup.py with hatchling.
Move gcovr to src directory.
The main routine doesn't call sys.exit on it's own, we always return the exit code.
@
text
@d1 1
a1 1
@@comment $NetBSD: PLIST,v 1.1 2019/06/11 11:34:39 markd Exp $
d17 21
a37 3
${PYSITELIB}/gcovr/coverage.py
${PYSITELIB}/gcovr/coverage.pyc
${PYSITELIB}/gcovr/coverage.pyo
a166 3
${PYSITELIB}/gcovr/formats/json/versions.py
${PYSITELIB}/gcovr/formats/json/versions.pyc
${PYSITELIB}/gcovr/formats/json/versions.pyo
d176 7
a197 3
${PYSITELIB}/gcovr/merging.py
${PYSITELIB}/gcovr/merging.pyc
${PYSITELIB}/gcovr/merging.pyo
@


1.1
log
@py-gcovr: Add version 4.1

Gcovr provides a utility for managing the use of the GNU gcov utility
and generating summarized code coverage results. This command is
inspired by the Python coverage.py package, which provides a similar
utility for Python.
@
text
@d1 7
a7 8
@@comment $NetBSD$
bin/gcovr
${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt
${PYSITELIB}/${EGG_INFODIR}/entry_points.txt
${PYSITELIB}/${EGG_INFODIR}/requires.txt
${PYSITELIB}/${EGG_INFODIR}/top_level.txt
d9 2
d12 1
a12 2
${PYSITELIB}/gcovr/__init__.pyo
${PYSITELIB}/gcovr/__init__.pyc
d14 5
a18 3
${PYSITELIB}/gcovr/__main__.pyc
${PYSITELIB}/gcovr/cobertura_xml_generator.pyo
${PYSITELIB}/gcovr/cobertura_xml_generator.pyc
d20 167
a186 9
${PYSITELIB}/gcovr/coverage.pyc
${PYSITELIB}/gcovr/gcov.pyo
${PYSITELIB}/gcovr/gcov.pyc
${PYSITELIB}/gcovr/html_generator.pyo
${PYSITELIB}/gcovr/html_generator.pyc
${PYSITELIB}/gcovr/summary_generator.pyo
${PYSITELIB}/gcovr/summary_generator.pyc
${PYSITELIB}/gcovr/txt_generator.pyo
${PYSITELIB}/gcovr/txt_generator.pyc
d188 2
a189 1
${PYSITELIB}/gcovr/utils.pyc
a190 15
${PYSITELIB}/gcovr/version.pyc
${PYSITELIB}/gcovr/workers.pyo
${PYSITELIB}/gcovr/workers.pyc
${PYSITELIB}/gcovr/cobertura_xml_generator.py
${PYSITELIB}/gcovr/coverage.py
${PYSITELIB}/gcovr/gcov.py
${PYSITELIB}/gcovr/html_generator.py
${PYSITELIB}/gcovr/summary_generator.py
${PYSITELIB}/gcovr/templates/root_page.html
${PYSITELIB}/gcovr/templates/source_page.html
${PYSITELIB}/gcovr/templates/style.css
${PYSITELIB}/gcovr/txt_generator.py
${PYSITELIB}/gcovr/utils.py
${PYSITELIB}/gcovr/version.py
${PYSITELIB}/gcovr/workers.py
@

