• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

dennisdoomen / packageguard / 32579286261
81%

Build:
DEFAULT BRANCH: main
Ran 22 Aug 2026 02:44PM UTC
Jobs 1
Files 74
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

22 Aug 2026 02:38PM UTC coverage: 78.351% (+1.0%) from 77.38%
32579286261

push

github

web-flow
Fix missing using directive for ValidationResult (#226)

AnalyzeCommandSettingsSpecs.cs referenced Spectre.Console.ValidationResult
but only imported Spectre.Console.Cli, which doesn't contain that type
(ValidationResult lives in the Spectre.Console namespace itself).



Fix schema-validation issues in generated CycloneDX and SPDX documents

Both issues surfaced from running the generated files through the
official CycloneDX 1.6 and SPDX 2.3 JSON schemas:

- CycloneDX: the tool component used a 'vendor' string property, which
  CycloneDX 1.6 removed from the component schema in favor of
  'manufacturer' (an organizationalEntity object with a 'name' field).
- SPDX: creationInfo.created and every annotation's annotationDate used
  .NET's default DateTimeOffset round-trip format
  (2026-08-17T19:12:46.6595686+00:00), which isn't valid per SPDX 2.3 -
  it requires strict 'YYYY-MM-DDThh:mm:ssZ': no fractional seconds and
  a literal 'Z' instead of a numeric offset.

Verified against a real generated SBOM: both fields now match the
required formats, and added regression tests for each so a future
regression fails the build instead of only showing up in downstream
SBOM validators (dependency-track, sbom-utility, etc.).



Re-trigger CI

The previous run's build/test/analyze job failed only on a transient
Coveralls 503 rate-limit, and a separate test-results reporting job
got stuck in-progress and wouldn't respond to cancellation. Empty
commit to get a clean workflow run.



Address InspectCode findings introduced by the SBOM feature

- Remove SbomComponent.Ecosystem: computed but never read after
  construction (ecosystem is already encoded in each component's purl
  and separately tracked per-ecosystem on SbomModel.EcosystemGraphIsAccurate).
- SpdxSbomWriter: use a format specifier in the interpolated severity
  string instead of ToString("0.0"), and target-typed new() where the
  type is already evident from the surrounding List<SpdxRelationship>.
- SbomEn... (continued)

1691 of 2426 branches covered (69.7%)

Branch coverage included in aggregate %.

559 of 602 new or added lines in 22 files covered. (92.86%)

2 existing lines in 1 file now uncovered.

5294 of 6489 relevant lines covered (81.58%)

1895.8 hits per line

Uncovered Changes

Lines Coverage ∆ File
13
0.0
0.0% Src/PackageGuard/AnalyzeCommand.cs
7
79.17
-3.06% Src/PackageGuard.Core/PackageInfoCollection.cs
7
81.4
Src/PackageGuard.Core/Sbom/SbomModelBuilder.cs
4
91.22
-1.31% Src/PackageGuard.Core/CSharp/NuGetPackageAnalyzer.cs
4
69.86
1.21% Src/PackageGuard.Core/OsvRiskEnricher.cs
4
97.35
Src/PackageGuard.Core/Sbom/CycloneDxSbomWriter.cs
2
72.0
-1.91% Src/PackageGuard.Core/CSharp/FetchingStrategies/UrlLicenseFetcher.cs
1
93.33
Src/PackageGuard.Core/Sbom/PackageUrlBuilder.cs
1
98.84
Src/PackageGuard.Core/Sbom/SpdxSbomWriter.cs

Coverage Regressions

Lines Coverage ∆ File
2
72.0
-1.91% Src/PackageGuard.Core/CSharp/FetchingStrategies/UrlLicenseFetcher.cs
Jobs
ID Job ID Ran Files Coverage
1 32579286261.1 22 Aug 2026 02:44PM UTC 74
78.35
GitHub Action Run
Source Files on build 32579286261
  • Tree
  • List 74
  • Changed 51
  • Source Changed 12
  • Coverage Changed 51
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #32579286261
  • 7cc838b4 on github
  • Prev Build on main (#32578900825)
  • Next Build on main (#32582277322)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc