Skip to content

chore(deps): replace FluentAssertions with AwesomeAssertions - #104

Merged
MarcelRoozekrans merged 1 commit into
mainfrom
fix/awesomeassertions
Aug 9, 2026
Merged

chore(deps): replace FluentAssertions with AwesomeAssertions#104
MarcelRoozekrans merged 1 commit into
mainfrom
fix/awesomeassertions

Conversation

@MarcelRoozekrans

Copy link
Copy Markdown
Contributor

Why not simply take FluentAssertions 8

FluentAssertions changed licence at v8. Read from the packages, not from memory:

Version <license>
6.12.2 expression — Apache-2.0
7.2.0 expression — Apache-2.0
8.10.0 file — Xceed Community License

From v8's LICENSE file:

Non-Commercial Use means the software is used in open-source, personal or experimental projects, and "is not being used by or for an organisation … that charges fees or earns revenues".

"Any use outside of these parameters requires a paid Commercial License from Xceed."

That is a licensing decision rather than a version bump — and because these are published packages, it reaches consumers too.

AwesomeAssertions

The community fork that stayed open source. Verified from the package:

AwesomeAssertions 9.5.0   license expression: Apache-2.0
lib: net47, net6.0, net8.0, netstandard2.0, netstandard2.1

Not a pure drop-in. 9.x renames the root namespace — confirmed by inspecting the assembly, which exports AwesomeAssertions.Numeric, AwesomeAssertions.Primitives and AwesomeAssertions.Execution and contains no FluentAssertions namespace. So this PR moves three things together:

  • <PackageReference Include="FluentAssertions" …>AwesomeAssertions 9.5.0
  • <Using Include="FluentAssertions" />AwesomeAssertions
  • using FluentAssertions;using AwesomeAssertions;

The fork tracks the v7/v8 API, so any v6-era call sites rename with it (BeGreaterOrEqualToBeGreaterThanOrEqualTo).

Verification

Clean Release build and the full suite for this repo — build exit 0, all test assemblies green, and no test was adjusted beyond the API renames noted above.

🤖 Generated with Claude Code

FluentAssertions changed licence at v8. Read from the packages themselves:

  6.12.2  license expression  Apache-2.0
  7.2.0   license expression  Apache-2.0
  8.10.0  license file        Xceed Community License

The v8 LICENSE limits free use to Non-Commercial Use and states that "any
use outside of these parameters requires a paid Commercial License from
Xceed". That is a licensing decision rather than a version bump, and it
reaches anyone consuming these packages commercially.

AwesomeAssertions is the community fork that stayed open source:

  AwesomeAssertions 9.5.0  license expression  Apache-2.0
  lib: net47, net6.0, net8.0, netstandard2.0, netstandard2.1

Not a pure drop-in: 9.x renames the root namespace, so using directives
and global <Using> entries move with the package.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@MarcelRoozekrans
MarcelRoozekrans merged commit 23528ff into main Aug 9, 2026
3 checks passed
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.

1 participant