Xceed Fluent Assertions Releases

Learn what's new across releases, with details of features, enhancements, and resolved issues.

Jan
Feb
Mar
Apr
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
Xceed Fluent Assertions V8.10.0Aug 17, 2026
Features
  • Added ComparingNullCollectionsAsEmpty and ComparingNullStringsAsEmpty options to BeEquivalentTo.
  • Now reports a descriptive failure when a selection rule targets a type that is being compared by value, including both:
    • Auto-detected value semantics (EqualityStrategy.Equals) when the type overrides Equals().
    • Explicit value semantics (EqualityStrategy.ForceEquals) when the user calls ComparingByValue().Significantly improved BeEquivalentTo for large unordered collections.
  • Now includes original index in extraneous item failure messages.
Xceed Fluent Assertions V8.9.0Jan 26, 2026
Features
  • Added Excluding<T>() and Excluding(Type) overloads to exclude all members of a certain type from equivalency comparisons.
  • New overloads of BeXmlSerializable and BeDataContractSerializable that allow EquivalencyOptions to be configured, allowing the use of member selection rules.
  • Added extensive support for Span<T> / ReadOnlySpan<T> and Be(string) for Span<char> / ReadOnlySpan<char>.
  • Added BeEqualTo and NotBeEqualTo to the collection assertions as a more fluent alternative to Equal.
  • Added HaveMillisecond and NotHaveMillisecond assertion methods for DateTime and DateTimeOffset.
  • BeEquivalentTo will now report the missing or extraneous items for differently sized collections.
Fixes
  • Fixed a formatting exception when comparing strings containing braces.
  • Removed FluentAssertions code from the stack trace when an assertion fails.