Skip to content

chore: Bump the dotnet-minor-patch group with 9 updates - #114

Merged
layeredcraft-dependabot-automerge[bot] merged 1 commit into
mainfrom
dependabot/nuget/dotnet-minor-patch-b515518517
Aug 27, 2026
Merged

chore: Bump the dotnet-minor-patch group with 9 updates#114
layeredcraft-dependabot-automerge[bot] merged 1 commit into
mainfrom
dependabot/nuget/dotnet-minor-patch-b515518517

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 27, 2026

Copy link
Copy Markdown
Contributor

Updated AwesomeAssertions from 9.5.0 to 9.6.0.

Release notes

Sourced from AwesomeAssertions's releases.

9.6.0

What's Changed

New features

Fixes

Documentation

Others

Dependencies

New Contributors

Commits viewable in compare view.

Updated Basic.Reference.Assemblies.Net100 from 1.8.10 to 1.8.11.

Release notes

Sourced from Basic.Reference.Assemblies.Net100's releases.

1.8.11

Create release 1.8.11

Commits viewable in compare view.

Updated Basic.Reference.Assemblies.Net110 from 1.8.10 to 1.8.11.

Release notes

Sourced from Basic.Reference.Assemblies.Net110's releases.

1.8.11

Create release 1.8.11

Commits viewable in compare view.

Updated Meziantou.Polyfill from 1.0.159 to 1.0.161.

Release notes

Sourced from Meziantou.Polyfill's releases.

No release notes found for this version range.

Commits viewable in compare view.

Updated Microsoft.CodeAnalysis.Analyzers from 5.6.0 to 5.9.0.

Release notes

Sourced from Microsoft.CodeAnalysis.Analyzers's releases.

No release notes found for this version range.

Commits viewable in compare view.

Updated Microsoft.CodeAnalysis.CSharp from 5.6.0 to 5.9.0.

Updated Microsoft.NET.Test.Sdk from 18.8.1 to 18.9.0.

Release notes

Sourced from Microsoft.NET.Test.Sdk's releases.

18.9.0

What's Changed

New Contributors

Full Changelog: microsoft/vstest@v18.8.0...v18.9.0

Commits viewable in compare view.

Updated TUnit from 1.64.13 to 1.65.38.

Release notes

Sourced from TUnit's releases.

1.65.38

What's Changed

Other Changes

Dependencies

Full Changelog: thomhurst/TUnit@v1.65.31...v1.65.38

1.65.31

What's Changed

Other Changes

Dependencies

Full Changelog: thomhurst/TUnit@v1.65.0...v1.65.31

1.65.0

What's Changed

Other Changes

Dependencies

Full Changelog: thomhurst/TUnit@v1.64.13...v1.65.0

Commits viewable in compare view.

Updated TUnit.Core from 1.64.13 to 1.65.38.

Release notes

Sourced from TUnit.Core's releases.

1.65.38

What's Changed

Other Changes

Dependencies

Full Changelog: thomhurst/TUnit@v1.65.31...v1.65.38

1.65.31

What's Changed

Other Changes

Dependencies

Full Changelog: thomhurst/TUnit@v1.65.0...v1.65.31

1.65.0

What's Changed

Other Changes

Dependencies

Full Changelog: thomhurst/TUnit@v1.64.13...v1.65.0

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 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

Bumps AwesomeAssertions from 9.5.0 to 9.6.0
Bumps Basic.Reference.Assemblies.Net100 from 1.8.10 to 1.8.11
Bumps Basic.Reference.Assemblies.Net110 from 1.8.10 to 1.8.11
Bumps Meziantou.Polyfill from 1.0.159 to 1.0.161
Bumps Microsoft.CodeAnalysis.Analyzers from 5.6.0 to 5.9.0
Bumps Microsoft.CodeAnalysis.CSharp from 5.6.0 to 5.9.0
Bumps Microsoft.NET.Test.Sdk from 18.8.1 to 18.9.0
Bumps TUnit from 1.64.13 to 1.65.38
Bumps TUnit.Core from 1.64.13 to 1.65.38

---
updated-dependencies:
- dependency-name: AwesomeAssertions
  dependency-version: 9.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dotnet-minor-patch
- dependency-name: Basic.Reference.Assemblies.Net100
  dependency-version: 1.8.11
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dotnet-minor-patch
- dependency-name: Basic.Reference.Assemblies.Net110
  dependency-version: 1.8.11
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dotnet-minor-patch
- dependency-name: Meziantou.Polyfill
  dependency-version: 1.0.161
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dotnet-minor-patch
- dependency-name: Microsoft.CodeAnalysis.Analyzers
  dependency-version: 5.9.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dotnet-minor-patch
- dependency-name: Microsoft.CodeAnalysis.CSharp
  dependency-version: 5.9.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dotnet-minor-patch
- dependency-name: Microsoft.NET.Test.Sdk
  dependency-version: 18.9.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dotnet-minor-patch
- dependency-name: TUnit
  dependency-version: 1.65.38
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dotnet-minor-patch
- dependency-name: TUnit.Core
  dependency-version: 1.65.38
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dotnet-minor-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
@github-actions github-actions Bot added the type: chore Maintenance task label Aug 27, 2026
@layeredcraft-dependabot-automerge
layeredcraft-dependabot-automerge Bot merged commit c5aa81f into main Aug 27, 2026
7 of 12 checks passed
@layeredcraft-dependabot-automerge
layeredcraft-dependabot-automerge Bot deleted the dependabot/nuget/dotnet-minor-patch-b515518517 branch August 27, 2026 17:39
ncipollina added a commit that referenced this pull request Aug 28, 2026
…tching (#115)

* fix(skill): correct TestDoubles matching guidance

* fix(skill): repair shared double examples

* fix(skill): correct namespace in shared-double benchmark output

Match and UseGeneratedTestDoubles live in the Compono namespace, not
Compono.TestDoubles (the package name).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* fix(skill): add old-skill baseline for testdoubles benchmark

Snapshot skills/compono/references/testdoubles.md at 644a5ad (pre-fix)
and rerun evals 28-31 against it, per skill-creator's paired-run
requirement for skill-improvement benchmarks. old_skill passes 1/4
(eval 29 only) vs with_skill's 4/4, confirming the fix corrects real
regressions rather than restating already-passing behavior.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* fix(skill): rerun testdoubles benchmark as a true paired batch

Codex flagged that with_skill and old_skill runs weren't launched
together, so they don't satisfy skill-creator's paired-run
requirement. Rerun all 8 combinations (evals 28-31 x with_skill/
old_skill) in a single batch against the current skill and the
644a5ad pre-fix snapshot.

Also verified and refuted the accompanying claim that only
testdoubles.md was snapshotted: the snapshot always captured the full
skills/compono directory, including the pre-fix SKILL.md (5139507
also added a guardrail section there).

Net effect: old_skill now fails all 4 evals (0/4, down from 1/4) since
eval 29's prior old_skill pass was a run-to-run fluke, not a stable
result - stronger, cleaner evidence the fix corrects real regressions.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* docs(skill): fix self-contradictory baseline wording in benchmark.md

The prior wording said the earlier baseline "snapshotted only
testdoubles.md" then immediately said it "captured the full
directory" - contradictory. Clarify that only the benchmark's
description of the earlier baseline was wrong, not the snapshot
itself.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* feat(testdoubles): sequential responses and overload-safe argument matching

Implements ADR-0054 (sequential/call-count-based responses via
ReturnConfigBuilder<T>.ReturnsSequence(...)/SequenceOutcome.Throw(...))
and ADR-0044 Amendment 21 (overload-safe argument matching via a new
<Member>Matching(Match<T1>, ...) member name sharing ADR-0050's
entries/call-log/lock state with the unchanged discriminator surface),
per PLAN-0054.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* fix(ci): update package-validation's tested TUnit.Core range to 1.65.38

#114 (dotnet-minor-patch Dependabot group) bumped Directory.Packages.props'
TUnit.Core/TUnit floor from 1.64.13 to 1.65.38, but package-validation.yaml's
inspect-packed-nupkgs.sh still asserted the old floor as Compono.TUnit's
"intended tested range" (ADR-0031 Amendment 1) - a deliberate, human-gated
check that a dependency floor bump has actually been validated, not meant
to silently track whatever's currently pinned. The Dependabot PR's own CI
run already proved 1.65.38 builds and tests clean; this just acknowledges
that in the check itself. Confirmed locally: packed and ran
inspect-packed-nupkgs.sh against all 8 publishable packages, all green.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* docs(adr): flip ADR-0044 Amendment 21 / ADR-0054 API status to Accepted

Both were Accepted (capability) / Proposed (API) pending implementation.
PLAN-0054 has now implemented and validated both (unit/generator-execution/
snapshot coverage, real Native AOT publish-and-run, and a real consumer
dogfood pass) - flip to Accepted.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* docs: regenerate API reference and update package docs for PLAN-0054

- docs/reference/api: regenerate from XML docs (ADR-0032 drift check) -
  SequenceOutcome<T>/SequenceOutcome/ThrownOutcome, ReturnConfig<T>'s new
  HasConfiguredSequence/NextSequenceOutcome(), and
  ReturnConfigBuilder<T>.ReturnsSequence(...) were new public API this
  session added without ever regenerating this directory - would have
  failed docs.yml's drift check on push.
- docs/packages/compono-testdoubles.md: was still stating "no sequential/
  call-count-based responses" and "no argument matching on an overloaded
  member" in four places (Call verification, Multiple response
  configurations per member, and the closing "What it deliberately
  doesn't do" summary) - added "Overload-safe argument matching" and
  "Sequential/call-count-based responses" sections mirroring the skill's
  own testdoubles.md, and corrected every stale negative claim.

Verified: `uv run mkdocs build --clean --strict` succeeds.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* fix: address Codex review feedback on PR #115

Five confirmed issues across two review passes:

- TestDoubleAnalyzer.cs: the <Member>Matching alias-collision check compared
  nullable-aware display-string text instead of real C# signature identity,
  missing a collision between e.g. "string" and "string?" (real signature
  identity never considers nullable annotations). It also only considered
  non-overloaded real members as possible collision sources, missing that
  an ordinary overloaded real member's own discriminator extension can
  collide too. Rewrote both checks to compare real ITypeSymbols via
  SymbolEqualityComparer.Default (nullability-insensitive) across every
  real member sharing the candidate name, not just one eligibility shape.

- ReturnConfigBuilder.cs: ReturnsSequence(...)'s XML doc still described the
  rejected dual-implicit-conversion design (a bare Exception implicitly
  converting) instead of the shipped SequenceOutcome.Throw(...) API.
  Also stored the caller's own params array by reference instead of
  snapshotting it - a caller mutating the array after configuring would
  silently change an already-configured response and violate
  NextSequenceOutcome()'s lock-free-safety premise that the sequence is
  immutable once configured.

- docs/packages/compono-testdoubles.md: the "Why this doesn't apply to an
  overloaded member" paragraph flatly contradicted the newly-added
  "Overload-safe argument matching" section - clarified that the compiler
  spike's finding is scoped to the same-call-site shape, not a blanket
  "no matching on overloaded members" claim.

Also, per this round of review: added a coding-standards.md/AGENTS.md rule
(mirrored, since AGENTS.md is a condensed pointer at coding-standards.md)
capturing the general lesson - a generator's collision-prediction logic
must compare real ITypeSymbols via SymbolEqualityComparer.Default, and
must consider every real member sharing a candidate name, not just the
ones reachable through the code path being written.

Regenerated docs/reference/api for the XML doc change (ADR-0032 drift
check). New regression coverage: two generator-execution snapshot tests
proving both collision-detection fixes fire the hash-suffixed fallback,
one unit test proving the array-snapshot fix.

Validated: full solution sweep (823/823 on net10.0), Compono.Generators.Tests
on net10.0 and net11.0 (276/276 each, zero unexpected snapshot diffs -
every prior fixture's generated output is unchanged), `uv run mkdocs build
--clean --strict` succeeds.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* fix: address round-3 Codex review feedback on PR #115

Two confirmed issues, both in the same collision-detection code the
previous round rewrote:

- The real-signature pre-pass unconditionally excluded every
  closed-instantiation-eligible (ADR-0049) candidate, on the assumption
  only "ordinary" real members needed considering. A non-overloaded
  closed-instantiation-eligible member with real matched parameters emits
  a Match<T>-wrapped generic Configure<T>() extension exactly like the new
  alias does, so it can collide with an overloaded generic member's own
  alias (e.g. Foo<T>(int)/Foo(string) -> FooMatching<T>(Match<int>)) just
  as easily as any other real member. Removed the exclusion - the existing
  isMatchingEligible branch already computes the correct signature for
  both the non-overloaded (Match<T>-wrapped) and overloaded (real,
  unwrapped) closed-instantiation shapes once given the chance to run.

- The stored/compared signature only tracked parameter types, not generic
  arity - also part of real C# signature identity (PLAN-0054's own
  "Naming/collision policy" Finding 4 already established this). A real
  non-generic FooMatching(int) and a generic alias FooMatching<T>(Match<int>)
  share parameter types but not arity, so they don't actually collide -
  the prior comparison treated them as if they did, forcing the whole
  alias family to an unnecessary hash-suffixed name. Signatures are now
  compared as (arity, parameter types) tuples.

New regression coverage: one generator-execution snapshot test proving the
closed-instantiation collision now triggers the fallback, one proving the
arity-only mismatch no longer does (natural name kept, real overload set
still coexists cleanly).

Validated: full solution sweep (825/825 on net10.0), Compono.Generators.Tests
on net10.0 and net11.0 (278/278 each, zero unexpected snapshot diffs).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* fix: address round-4 Codex review feedback on PR #115

A candidate's own TypeParameters.Length is not always its generated
extension's actual emitted arity - TestDoubleMemberInfo.ExtensionIsGeneric
(the template's own governing rule) says a solo (non-overloaded,
non-closed-instantiation) generic member's extension is always emitted
non-generic, mirroring ADR-0044 Requirement 2's "one backing slot covers
every closed instantiation" rule onto a matching-eligible member's own
extension too. The round-3 fix used raw TypeParameters.Length as arity
unconditionally, so a solo generic real member sharing a candidate name
(e.g. FooMatching<T>(int), whose own extension actually emits as the
non-generic FooMatching(Match<int>)) was recorded at the wrong arity and
a genuine collision went undetected.

Computed effective arity now mirrors ExtensionIsGeneric exactly: generic
arity only counts when the candidate is itself overloaded or
closed-instantiation-eligible, zero otherwise - regardless of the
method's own real TypeParameters.Length.

New regression coverage: a generator-execution snapshot test
(OverloadMatchingAliasCollidesWithSoloGenericRealMemberEmittingNonGenericExtension_FallsBackToHashSuffixedName)
reproducing Codex's exact scenario - Foo(int)/Foo<T>(string) plus a solo
real generic FooMatching<T>(int) - confirming the fallback now fires.

Validated: full solution sweep (826/826 on net10.0), Compono.Generators.Tests
on net10.0 and net11.0 (279/279 each, zero unexpected snapshot diffs).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type: chore Maintenance task

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants