Skip to content

Add Codecov coverage shield to the README build status#419

Merged
ptr727 merged 1 commit into
developfrom
docs/readme-codecov-shield
Jul 18, 2026
Merged

Add Codecov coverage shield to the README build status#419
ptr727 merged 1 commit into
developfrom
docs/readme-codecov-shield

Conversation

@ptr727

@ptr727 ptr727 commented Jul 18, 2026

Copy link
Copy Markdown
Owner

Coverage has been uploaded to Codecov since the coverage workflow landed (#377), but the README never surfaced it.

Adds a Coverage shield to the Build Status block, following the badge pattern used in aiopurpleair:

[![Release Status][releasebuildstatus-shield]][actions-link]\
[![Last Commit][lastcommit-shield]][commits-link]\
[![Coverage][coverage-shield]][coverage-link]

Shield and link definitions were inserted in the file's existing alphabetical order, between commits-link and github-link.

Verification

  • Shield URL returns HTTP 200 and renders real data (coverage: 67%), not unknown
  • markdownlint MD052 (undefined reference) clean -- both definitions resolve
  • CRLF preserved
  • No cspell.json change needed: codecov is not flagged (aiopurpleair carries the same badge with no dictionary entry), and README is in the CI spell-check scope per CODESTYLE

Coverage has been uploaded to Codecov since the coverage workflow landed,
but the README never surfaced it. Follows the aiopurpleair badge pattern:
a Coverage shield in the Build Status block, with the shield and link
definitions kept in the file's existing alphabetical order.

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
Copilot AI review requested due to automatic review settings July 18, 2026 16:31
@codecov

codecov Bot commented Jul 18, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 66.89%. Comparing base (281b96c) to head (5b29492).

Additional details and impacted files
@@           Coverage Diff            @@
##           develop     #419   +/-   ##
========================================
  Coverage    66.89%   66.89%           
========================================
  Files           13       13           
  Lines         1160     1160           
  Branches       108      108           
========================================
  Hits           776      776           
  Misses         338      338           
  Partials        46       46           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a Codecov coverage badge to the README’s Build Status badge block so readers can see current coverage alongside the existing release and last-commit status.

Changes:

  • Add a third badge line for Coverage in the Build Status block.
  • Add coverage-link and coverage-shield reference definitions, keeping the existing reference-definition alphabetical ordering.

@ptr727
ptr727 merged commit a46e3cd into develop Jul 18, 2026
12 checks passed
@ptr727
ptr727 deleted the docs/readme-codecov-shield branch July 18, 2026 16:39
@ptr727 ptr727 mentioned this pull request Jul 18, 2026
ptr727 added a commit that referenced this pull request Jul 18, 2026
Promotion of the current `develop` integration state to `main`.

## Contents

| Area | Change |
| --- | --- |
| Analyzer conformance | #418 -- removed the repo-wide
`dotnet_analyzer_diagnostic` relaxation, fixed the 29 `xUnit1051` sites
it hid |
| Docs | #419 -- Codecov coverage shield in the README build status
block |
| Repo config | #417 -- repo-config carry refresh and self-audit carry |

## Conformance issues resolved

Closes #380
Closes #387

#380 (xUnit v3 + AwesomeAssertions, `ILoggerFactory` seam) was already
satisfied in the tree -- verified rather than assumed: 0 `Assert.*`
remaining against 245 `.Should()` calls, `xunit.v3` 3.2.2 pinned with no
v2 package, zero Serilog references in the library, and
`Utilities/LogOptions.cs` matching the LanguageTags reference seam.

#387's four findings were likewise already addressed except finding 1
(analyzer suppression hygiene), which #418 closes. Every remaining
suppression was independently probed by removing it and rebuilding, and
all proved load-bearing (`CA1711`, `CA1707`, `CA1515`, `NoWarn IL3058`).

## Release impact: no auto-publish

This promotion carries **no shipped input**. Per
[WORKFLOW.md](../blob/main/WORKFLOW.md) the inclusion list is
`Utilities/**`, `version.json`, `Directory.Build.props`,
`Directory.Packages.props`; this diff is confined to tests, docs, CI,
and repo config:

```
.editorconfig  .github/workflows/merge-bot-pull-request.yml  AUDIT.md  README.md
UtilitiesTests/*.cs  repo-config/*  spec/secrets.json
```

`Utilities/**` is byte-identical between `main` and `develop`, so the
published package is already current and merging this will correctly
**not** trigger a stable release.
ptr727-codegen Bot pushed a commit to ptr727/LanguageTags that referenced this pull request Jul 21, 2026
Updated [ptr727.Utilities](https://github.com/ptr727/Utilities) from
4.0.18 to 4.0.28.

<details>
<summary>Release notes</summary>

_Sourced from [ptr727.Utilities's
releases](https://github.com/ptr727/Utilities/releases)._

## 4.0.28

## What's Changed
* Bump the nuget-deps group with 3 updates by @​dependabot[bot] in
ptr727/Utilities#411
* Document the README + HISTORY cspell CI scope in CODESTYLE by @​ptr727
in ptr727/Utilities#413
* Document the README + HISTORY cspell CI scope (main-only) by @​ptr727
in ptr727/Utilities#414
* Bump actions/setup-dotnet from 5.4.0 to 6.0.0 in the actions-deps
group by @​dependabot[bot] in
ptr727/Utilities#415
* Bump actions/setup-dotnet from 5.4.0 to 6.0.0 in the actions-deps
group by @​dependabot[bot] in
ptr727/Utilities#416
* Refresh repo-config carry to current reference; add self-audit carry
by @​ptr727 in ptr727/Utilities#417
* Remove repo-wide analyzer relaxation and honor test cancellation by
@​ptr727 in ptr727/Utilities#418
* Add Codecov coverage shield to the README build status by @​ptr727 in
ptr727/Utilities#419
* Promote develop to main by @​ptr727 in
ptr727/Utilities#420
* Correct WORKFLOW.md audit flow and NUGET_USERNAME secret store by
@​ptr727 in ptr727/Utilities#422
* Describe the 5D audit as reporting defects, not failing by @​ptr727 in
ptr727/Utilities#424
* Promote develop to main by @​ptr727 in
ptr727/Utilities#423
* Spell out the up-to-date ruleset setting in the 5D audit summary by
@​ptr727 in ptr727/Utilities#425
* Promote develop to main by @​ptr727 in
ptr727/Utilities#426
* Bump DavidAnson/markdownlint-cli2-action from 24.0.0 to 24.1.0 in the
actions-deps group by @​dependabot[bot] in
ptr727/Utilities#429
* Bump the nuget-deps group with 1 update by @​dependabot[bot] in
ptr727/Utilities#431


**Full Changelog**:
ptr727/Utilities@4.0.18...4.0.28

Commits viewable in [compare
view](ptr727/Utilities@4.0.18...4.0.28).
</details>

[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=ptr727.Utilities&package-manager=nuget&previous-version=4.0.18&new-version=4.0.28)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants