Bump coverlet.collector from 6.0.2 to 10.0.1 - #23
Closed
dependabot[bot] wants to merge 1 commit into
Closed
Conversation
--- updated-dependencies: - dependency-name: coverlet.collector dependency-version: 10.0.1 dependency-type: direct:production update-type: version-update:semver-major - dependency-name: coverlet.collector dependency-version: 10.0.1 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
Owner
|
Closing to let Dependabot recreate after dependabot/fetch-metadata was added to the Actions allowlist. The auto-merge workflow was hitting startup_failure without it. |
Contributor
Author
|
OK, I won't notify you again about this release, but will get in touch when a new version is available. You can also ignore all major, minor, or patch releases for a dependency by adding an If you change your mind, just re-open this PR and I'll resolve any conflicts on it. |
bilbospocketses
deleted the
dependabot/nuget/tests/ControlMenu.Tests/multi-f6c42fbeeb
branch
May 27, 2026 16:46
This was referenced Jun 18, 2026
bilbospocketses
added a commit
that referenced
this pull request
Jun 18, 2026
…can guard (audit #23/#24) (#64) * perf(cameras): O(1) subnet membership via shared SubnetMath; fix /0,/31,/32 enumerate CameraScanService tested subnet membership (IsInAnySubnet, used to filter ONVIF responses) by enumerating every address in the subnet and comparing — O(subnet size) per check, O(N responses x subnet size) overall. Its EnumerateAddresses also computed the host count with `1u << hostBits`, which wraps at hostBits 32: a /0 yielded nothing instead of the whole space, and /31 and /32 yielded nothing instead of their hosts. Extract a shared SubnetMath (IPv4 arithmetic): - Contains() is an O(1) mask/range compare (and correctly includes network + broadcast in membership). - Enumerate() uses a 64-bit size to avoid the shift wrap, and yields /31 (RFC 3021, 2 hosts) and /32 (1 host) correctly. - IpToInt/IntToIp are shared; SubnetParser's private copies are removed. CameraScanService uses SubnetMath.Contains for membership and SubnetMath.Enumerate for the TCP sweep. Existing SubnetParser + CameraScanService tests stay green; new SubnetMath tests cover the mask compare and the boundary prefixes. Review finding #23 (2026-06-14 security/code-review audit). * fix(cameras): atomic scan guard + ARP map as a local (concurrency) Two concurrency defects in CameraScanService: - RunScanAsync used a non-atomic `if (Phase == Scanning) return; Phase = Scanning;`. Two concurrent starts both passed the check before either set the flag, so several overlapping scans ran — each clearing the others' hits mid-flight. A gated stress test fired 32 concurrent starts and saw 14 scans begin. Now the check-and-set runs under a lock (mirrors NetworkScanService), admitting exactly one. - The ARP table lived in a mutable `_arpByIp` instance field that the ONVIF and TCP branches read concurrently. It's now a local passed into both branches, so there's no shared-field race across scans. Review finding #24 (2026-06-14 security/code-review audit). * fix(cameras): close review nits — locked terminal Phase writes + Enumerate guard From the whole-branch review: - The winning scan's terminal Phase writes (Idle on cancel, Complete) now go through _scanLock, so the next StartScanAsync's guarded read has a proper happens-before edge with them — completing the atomic-guard story. - SubnetMath.Enumerate now throws on prefixes shorter than /16 instead of attempting to materialize millions of addresses. Unreachable via SubnetParser (which caps at /16), but SubnetMath is public — fail loud, not hang.
bilbospocketses
added a commit
that referenced
this pull request
Jun 18, 2026
…ent-scan test) (#66) * docs: changelog + technical-guide for PRs #64/#65 (audit #23/#24/#33/#34/#35) The #64 (CameraScan #23/#24) and #65 (UI dedup #33/#34/#35) findings landed without their CHANGELOG entries. Adds the [Unreleased] Changed/Fixed bullets, and updates the TECHNICAL_GUIDE Pages section (Phone/Tablet/Watch now render a shared DeviceDashboard) + the scanner test list (SubnetMathTests). * test(cameras): de-flake the concurrent-scan guard test StartScanAsync_ConcurrentStarts_StartExactlyOneScan used a fixed Task.Delay(150) before asserting one scan had started, which flaked on loaded CI runners where the 32 Task.Run bodies had not been scheduled yet (started == 0, seen on PR #66). Wait until a scan actually begins (poll up to ~10s) then settle briefly before asserting exactly one was admitted. Verified 4/4 stable locally.
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.
Updated coverlet.collector from 6.0.2 to 10.0.1.
Release notes
Sourced from coverlet.collector's releases.
10.0.1
Improvements
Fixed
Maintenance
Diff between 10.0.0 and 10.0.1
10.0.0
Improvements
--coverlet-file-prefixoption for unique report files #1869Fixed
Maintenance
Diff between 8.0.1 and 10.0.0
8.0.1
Fixed
Improvements
Diff between 8.0.0 and 8.0.1
8.0.0
Special Thanks: A huge thank you to @Bertk for driving the majority of the work in this release! 🎉
Fixed
Improvements
Diff between 6.0.4 and 8.0.0
6.0.4
Fixed
Diff between 6.0.3 and 6.0.4
6.0.3
Fixed
Improvements
Diff between 6.0.2 and 6.0.3
Commits viewable in compare view.
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 commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)