Repository navigation
Conversation
Expand block boundaries before serializing file fixes as line numbers. The JSON uploader previously discarded marker text without expanding the intervening lines, leaving code inside exclusion blocks counted. Match the legacy worker handling of LCOV_EXCL_START with STOP or END and block-comment boundaries. Keep unmatched markers limited to their own lines and sort the serialized exclusions for deterministic output. Add payload regressions for paired blocks, multiple blocks, unmatched markers, and single-line exclusions. Update the existing block-comment expectation to include its interior lines. AI-Assisted-By: Codex (GPT-6 Astra Medium)
Collect LCOV_EXCL_LINE, START, STOP, and END markers from D line comments, including indented and trailing comments. Upload explicit exclusions as file-fix metadata without changing D coverage reports or filtering unmarked executable lines. Skip ordinary, raw, and backtick strings, character literals, and block comments when scanning for markers. Normalize marker reasons so explanatory text cannot alter block pairing. Conservatively emit no exclusions for files containing token or delimited strings, and document this limitation and the non-nesting block rules. Add scanner and serialized-payload regressions for literals, nested comments, CRLF input, disabled fixes, and neighboring executable lines. Preserve the disable-file-fixes option. AI-Assisted-By: Codex (GPT-6 Astra Medium)
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add explicit coverage exclusions for D source files and fix exclusion-block serialization in the modern upload payload.
The CLI currently omits
.dfiles from source-file fixes. Separately, the JSON uploader discards exclusion-marker text without expanding block interiors, so only the marker lines are excluded.Changes
LCOV_EXCL_LINE,LCOV_EXCL_START,LCOV_EXCL_STOP, andLCOV_EXCL_ENDin D line comments, including indented and trailing comments.--disable-file-fixes.Exclusions are sent as file-fix metadata; the original D
.lstreports remain unchanged. Files containing D token or delimited strings conservatively receive no exclusions because those forms require more extensive parsing. Exclusion blocks must be paired and must not nest.The payload correction and D support are separate commits.
Testing
AI-Assisted-By: Codex (GPT-6 Astra Medium)