Skip to content

chore(deps): migrate FsCheck.Xunit 2.16.6 -> 3.4.0 - #374

Merged
Chris-Wolfgang merged 1 commit into
mainfrom
chore/fscheck-3
Sep 26, 2026
Merged

Chris-Wolfgang merged 1 commit into
mainfrom
chore/fscheck-3

Conversation

@Chris-Wolfgang

Copy link
Copy Markdown
Owner

Summary

This migrates FsCheck.Xunit to 3.4.0 (#303). FsCheck 3 moved the C# surface into FsCheck.Fluent. This repo only uses Prop.ForAll<T> and bool.ToProperty(), with no custom Arbitrary registration and no |@ / @| label operators. So the entire source change is using FsCheck.Fluent; in PropertyTests.cs and FuzzTests.cs. FsCheck.Xunit 3.x still targets xunit v2, which is what this project uses.

  • .github/dependabot.yml: the /tests nuget entry holds future FsCheck.Xunit majors (4.x+), following AuditTrail's post-migration pattern. Minor and patch updates still flow.
  • The test csproj comment is updated; it described the 2.x line.

Stacking

This is stacked on #373 because both PRs touch PropertyTests.cs. FuzzTests.cs also changes in #370, but those edits are one line apart and merge cleanly.

Verification

  • dotnet build -c Release -p:TreatWarningsAsErrors=true, test project, all 10 TFMs: 0 errors.
  • dotnet test including Category=Fuzz (100,000 cases per property): net10.0 149 passed, net48 110 passed, net5.0 110 passed.

Follow-up for you

Dependabot PR #291 was closed with @dependabot ignore this major version, and that server-side ignore suppresses all 3.x updates, including 3.4.x patches. Once this merges, comment @dependabot unignore FsCheck.Xunit on a Dependabot PR to clear it. The new dependabot.yml rule then holds only 4.x+.

Closes #303

🤖 Generated with Claude Code

@Chris-Wolfgang
Chris-Wolfgang added this pull request to stack #375 September 26, 2026 19:46
Base automatically changed from test/test-assembly-full-coverage to main September 26, 2026 22:03
FsCheck 3 moved the C# surface (Prop, ToProperty) into FsCheck.Fluent;
adding that using is the whole source change for this repo's usage
(Prop.ForAll<T> + bool.ToProperty(), no custom Arbitrary registration
or label operators). FsCheck.Xunit 3.x still targets xunit v2.

dependabot.yml now holds future FsCheck.Xunit majors (4.x+) on the
/tests entry, matching AuditTrail.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Chris-Wolfgang
Chris-Wolfgang merged commit 2b6a6f5 into main Sep 26, 2026
25 checks passed
@Chris-Wolfgang
Chris-Wolfgang deleted the chore/fscheck-3 branch September 26, 2026 22:14
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.

chore(deps): migrate FsCheck.Xunit 2.x -> 3.x (breaking API refactor)

1 participant