Navigation Menu

Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Restore basic assertions for collections in System.Data #1812

Merged
merged 36 commits into from Apr 16, 2022

Conversation

logiclrd
Copy link
Contributor

@logiclrd logiclrd commented Feb 16, 2022

In anticipation of the new functionality to allow excluding non-browsable fields (#1807), I updated our project to the latest published version and discovered that about 9 months ago, assertions on non-generic collections were removed from FluentAssertions. Unfortunately, DataSet and DataTable were codified before generics existed and have only non-generic collections. As such, assertions on these collections depended on the existing blanket non-generic collection functionality. With this removed, our test suite no longer compiles because of assertions such as,

result3.Rows.Should().BeEmpty();

This PR addresses this issue by wrapping the three collections involved in System.Data in a class that implements IEnumerable<T>, so that the assertions in GenericCollectionAssertions<T> can apply. In addition, some additional assertions are provided that take System.Data types as arguments.

This PR also includes updates to the release notes and documentation, as well as comprehensive automated testing of the new functionality.

IMPORTANT

  • The code complies with the Coding Guidelines for C#.
  • The changes are covered by unit tests which follow the Arrange-Act-Assert syntax and the naming conventions such as is used in these tests.
  • If the PR adds a feature or fixes a bug, please update the release notes with a functional description that explains what the change means to consumers of this library, which are published on the website.
  • If the PR changes the public API the changes needs to be included by running AcceptApiChanges.ps1 or AcceptApiChanges.sh.
  • If the PR affects the documentation, please include your changes in this pull request so the documentation will appear on the website.

@dennisdoomen
Copy link
Member

Wow. Wasn't it easier to use Cast<T> instead?

@logiclrd
Copy link
Contributor Author

We already have a suite of tests which I'd prefer to touch only if strictly necessary, and using Cast<T> doesn't have compile-time type safety.

@logiclrd
Copy link
Contributor Author

The new assertions types and corresponding tests are very closely based on the existing collections assertion code; this is not created out of whole cloth, but out of copy/pasting the existing code and then massaging it to the types in question. :-)

@dennisdoomen
Copy link
Member

Sorry, what I meant is that your new Should() methods would return the generic assertions by casting the non-generic collection to a generic-collection and then passing that to GenericCollectionAssertions.

@logiclrd
Copy link
Contributor Author

logiclrd commented Feb 17, 2022

Mm, that would provide part of the functionality. But, it wouldn't have things like ContainTableWithName and it would include a bunch of assertions that aren't relevant, such as NotBeNull.

@logiclrd
Copy link
Contributor Author

Of course, there's no pre-existing code calling those methods. But given all the other System.Data-specific sets of assertions, this seemed the logical way to do it. Casting the collection and using GenericCollectionAssertions didn't occur to me, to be honest, but if it had, I think I still would have gone this route.

@dennisdoomen
Copy link
Member

Mm, that would provide part of the functionality. But, it wouldn't have things like ContainTableWithName and it would include a bunch of assertions that aren't relevant, such as NotBeNull.

You could provide those as an extension method on GenericCollectionAssertions<DataSet> or something like that.

It's more to avoid too much duplication and maintenance on our side.

@logiclrd
Copy link
Contributor Author

Hmm, that's true :-) I'll investigate that.

@logiclrd
Copy link
Contributor Author

One thing with that approach is that after .Cast<DataTable>, the true subject's type is lost. The only way to check if the DataSet contains a table with the specified name, for instance, is to enumerate it; that's what .Contains will do on assertion.Subject, since it's an anonymous IEnumerable<DataTable> at that point wrapping the actual collection. DataTableCollection's own Contains method takes advantage of its internal data structure.

@dennisdoomen
Copy link
Member

Is that a real issue? How many tables does a data set typically contain? I guess 50 is already quite a lot.

@jnyrup
Copy link
Member

jnyrup commented Feb 17, 2022

In it's current state I think this is duplicating too much functionality.
To be bluntly honest I still occasionally wonder whether #1419 should have been included in the core library.
Not to dishonest your work and contribution, but the truth is that the burden of support is left on @dennisdoomen and me.
E.g. #1068 (comment) revealed that #1419 seems to have a lot of untested cases.
Related blog post: https://blog.jessfraz.com/post/the-art-of-closing/

@logiclrd
Copy link
Contributor Author

@dennisdoomen That's true... Is there no other situation where the loss of the subject type would be an issue?

@dennisdoomen
Copy link
Member

To be bluntly honest I still occasionally wonder whether #1419 should have been included in the core library.

Have the exact same feeling. In retrospect, we should have decided to make it a supporting library that is maintained by others.

@dennisdoomen
Copy link
Member

Is there no other situation where the loss of the subject type would be an issue?

Can't think of anything right now.

@logiclrd
Copy link
Contributor Author

I was hoping to get this in before the end of your day, but it was just too late for me. :-) Here's a rewrite that leverages GenericCollectionExtenions<TData>. I found that I still had to explicitly implement the equivalency checks for DataRow because what GenericCollectionExtensions does by default doesn't have the same semantics. But, there's a lot less code now!

@dennisdoomen
Copy link
Member

While looking at the implementation and thinking of the repercussions of us maintaining this, I thought of another solution:

internal class EnumerableWrapper<T, TItem> : ICollection<TITem>, where T : ICollection

Then this wrapper delegates properties like Count to the wrapped part. Then instead of using Cast<TItem, you pass new EnumerableWrapper<DataTable, DataColumn>

Since Enumarable.Count() is smart enough to see that an IEnumerable<T> is really a collection, you don't get the penaalty.

@logiclrd
Copy link
Contributor Author

That sounds promising! I'll give that a go.

@logiclrd
Copy link
Contributor Author

Hmm, one problem: The non-generic ICollection is really sparse and doesn't have a Contains member. Could still be possible to have specialized implementations for the 3 collection types in question.

@logiclrd
Copy link
Contributor Author

Huh, I think Visual Studio must have been acting up. IntelliSense was initially telling me that the non-generic interfaces didn't expose a Count method at all. So, I came up with the scheme in 68c839e that allows an abstract member to be implemented by collection-type-specific subclasses.

But, I kept poking at it because this didn't make sense to me and suddenly Count started showing up in IntelliSense. I'm confused, but I've reworked it to not need the collection-type-specific subclasses.

@logiclrd
Copy link
Contributor Author

There, I think that commit is what you had in mind, and it solves the problem elegantly. Thank you :-)

@dennisdoomen
Copy link
Member

The non-generic ICollection is really sparse and doesn't have a Contains

What if you used InternalDataCollectionBase instead of ICollection?

@logiclrd
Copy link
Contributor Author

What if you used InternalDataCollectionBase instead of ICollection?

The problem is more fundamental -- the Contains method overloads that I really care about are the ones that check for DataTable by TableName and DataColumn by ColumnName, and those can't be in common. DataRowCollection doesn't even have an analog for it at all. So, instead, I took advantage of the fact that the new wrapper class allows the underlying object to be inspected, and the assertions that want to call Contains simply call it directly on the underlying DataTableCollection or DataColumnCollection.

@dennisdoomen
Copy link
Member

So, instead, I took advantage of the fact that the new wrapper class allows the underlying object to be inspected, and the assertions that want to call Contains simply call it directly on the underlying DataTableCollection or DataColumnCollection.

Fair enough. Let us know when you're ready for the formal review ;-)

@logiclrd
Copy link
Contributor Author

I don't think I have anything outstanding on my end at this point.

Copy link
Member

@dennisdoomen dennisdoomen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some general notes before I can continue the review:

@jnyrup jnyrup added the feature label Feb 19, 2022
Copy link
Member

@dennisdoomen dennisdoomen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's a big enhancement, albeit quite niche, so there is a lot of work to be done to finish this. I hope you're up for it.

FYI, just assume that my code review comment apply to all other code as well, so please be thorough.

…llectionAssertionExtensions.cs, as their implementation is actually identical to that in GenericCollectionAssertions.

Reran AcceptApiChanges.ps1.
Added tests to DataRowCollectionAssertionExtensionsSpecs.cs to verify that ContainEquivalentOf and NotContainEquivalentOf do the right thing with DataRow objects & collections.
…ionAssertionExtensions.cs, DataColumnCollectionAssertionExtensions.cs and DataRowCollectionAssertionExtensions.cs.

Removed unnecessary calls to .ForCondition(false).
Removed unnecessary cast from IEnumerable<DataRow> to IEnumerable<object> in ContainEquivalentOf in DataRowCollectionAssertionExtensions.cs.
Updated ContainEquivalentOf in DataRowCollectionAssertions.cs to return an AndWhichConstraint.
…ionAssertionExtensions.cs and DataColumnCollectionAssertionExtensions.cs and the corresponding tests from DataTableCollectionAssertionExtensionsSpecs.cs and DataColumnCollectionAssertionExtensionsSpecs.cs.

Reran AcceptApiChanges.ps1.
Removed documentation for Contain and NotContain (by name) operations from data.md.
…aTableCollectionAssertionExtensionsSpecs.cs, DataColumnCollectionAssertionExtensionsSpecs.cs and DataRowCollectionAssertionExtensionSpecs.cs.

Corrected indentation error in DataRowCollectionAssertionExtensions.cs.
…aColumnCollectionAssertionExtensionsSpecs.cs and DataRowCollectionAssertionExtensionsSpecs.cs.
…d DataColumnCollectionAssertionExtensionsSpecs.cs. Since the tests don't actually look at the column specifications, it isn't important that they be assigned a variety of different types.
…ation DataTables in DataTableCollectionAssertionExtensionsSpecs.cs and DataRowCollectionAssertionExtensionsSpecs.cs.
….cs so that the DataSet overloads are covered.
- Removed unnecessary references to IEnumerable and IEnumerable<T>, already covered by implementing/constraining against ICollection and ICollection<T>.
- Made UnderlyingCollection in ReadOnlyNonGenericCollectionWrapper<T> immutable.
…llectionAssertionSpecs.cs.

Renamed DataColumnCollectionAssertionExtensionsSpecs.cs to DataColumnCollectionAssertionSpecs.cs.
Renamed DataRowCollectionAssertionExtensionsSpecs.cs to DataRowCollectionAssertionSpecs.cs.
…in TypeDescriptionUtilitySpecs.cs.

Refactored AssertionScope.FailWith to produce new utility method AssertionScope.FormatFailureMessage.
Updated DataTableCollectionAssertionExtensions.cs, DataColumnCollectionAssertionExtensions.cs and DataRowCollectionAssertionExtensions.cs to throw InvalidOperationException when BeSameAs or NotBeSameAs is called with a subject of the wrong type, using the new AssertionScope.FormatFailureMessage method to give the exception an appropriate message.
Updated DataTableCollectionAssertionSpecs.cs, DataColumnCollectionAssertionSpecs.cs and DataRowCollectionAssertionSpecs.cs to account for the change in the exception type & message in the When_generic_collection_is_tested_against_typed_collection_it_should_fail test methods.
…in DataTableCollectionAssertionExtensions.cs, DataColumnCollectionAssertionExtensions.cs and DataRowCollectionAssertionExtensions.cs into a standard assertion flow.

Updated unit tests correspondingly.
…an internal method FormatFailureMessage to allow reuse.
…othing _currently_ has a need to get a description for a Type directly.
…the TypeDescriptionUtilitySpecs.cs class correspondingly. All actual uses of TypeDescriptionUtility already import this namespace so no other changes are needed.
@logiclrd
Copy link
Contributor Author

(rebased to resolve release.md conflict)

Copy link
Member

@jnyrup jnyrup left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry for the delayed review.
I gave it another look and it looks good.

@jnyrup jnyrup merged commit 6ecd349 into fluentassertions:develop Apr 16, 2022
@jnyrup jnyrup changed the title Restore basic assertions for collections in System.Data Restore basic assertions for collections in System.Data Apr 16, 2022
renovate bot added a commit to cythral/brighid-commands that referenced this pull request Apr 7, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [FluentAssertions](https://www.fluentassertions.com/)
([source](https://togithub.com/fluentassertions/fluentassertions)) |
nuget | major | `5.10.3` -> `6.10.0` |

---

### Release Notes

<details>
<summary>fluentassertions/fluentassertions</summary>

###
[`v6.10.0`](https://togithub.com/fluentassertions/fluentassertions/releases/tag/6.10.0)

[Compare
Source](https://togithub.com/fluentassertions/fluentassertions/compare/6.9.0...6.10.0)

<!-- Release notes generated using configuration in .github/release.yml
at master -->

##### What's Changed

##### Fixes

- Declare `System.Net.Http` as a framework dependency by
[@&#8203;AArnott](https://togithub.com/AArnott) in
[https://github.com/fluentassertions/fluentassertions/pull/2122](https://togithub.com/fluentassertions/fluentassertions/pull/2122)
- Improves how `BeEquivalentTo` handles fields hiding base-class fields
by [@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1990](https://togithub.com/fluentassertions/fluentassertions/pull/1990)
- Fix timeout check in `WithResult` extension by
[@&#8203;lg2de](https://togithub.com/lg2de) in
[https://github.com/fluentassertions/fluentassertions/pull/2101](https://togithub.com/fluentassertions/fluentassertions/pull/2101)
- Avoid exceptions when wrapping in `AssertionScope` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2103](https://togithub.com/fluentassertions/fluentassertions/pull/2103)

##### Others

- Fix copyright year by
[@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/2099](https://togithub.com/fluentassertions/fluentassertions/pull/2099)
- Fix broken link in releases.md by
[@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/2096](https://togithub.com/fluentassertions/fluentassertions/pull/2096)
- Check if `lcov.info` does exist by
[@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/2097](https://togithub.com/fluentassertions/fluentassertions/pull/2097)
- Clean up `Build.cs` by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK)
in
[https://github.com/fluentassertions/fluentassertions/pull/2093](https://togithub.com/fluentassertions/fluentassertions/pull/2093)
- Updated editor configs by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/2104](https://togithub.com/fluentassertions/fluentassertions/pull/2104)
- Revert early returns for project consistency by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2105](https://togithub.com/fluentassertions/fluentassertions/pull/2105)
- Update data.md to fix typo by
[@&#8203;berserck](https://togithub.com/berserck) in
[https://github.com/fluentassertions/fluentassertions/pull/2114](https://togithub.com/fluentassertions/fluentassertions/pull/2114)
- Add unit tests for better coverage in Execution namespace by
[@&#8203;lg2de](https://togithub.com/lg2de) in
[https://github.com/fluentassertions/fluentassertions/pull/2042](https://togithub.com/fluentassertions/fluentassertions/pull/2042)
- Add code coverage to XUnit2.Specs by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2115](https://togithub.com/fluentassertions/fluentassertions/pull/2115)
- Regrouping and formatting of the selection rule specs by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/2106](https://togithub.com/fluentassertions/fluentassertions/pull/2106)
- Add fancy `ReportSummary` by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2116](https://togithub.com/fluentassertions/fluentassertions/pull/2116)
- Add new issue template for a general feature by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2113](https://togithub.com/fluentassertions/fluentassertions/pull/2113)
- Add missing tests for `int.Seconds(TimeSpan)` by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2119](https://togithub.com/fluentassertions/fluentassertions/pull/2119)
- Add test summaries by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK)
in
[https://github.com/fluentassertions/fluentassertions/pull/2118](https://togithub.com/fluentassertions/fluentassertions/pull/2118)
- Declare few more files as `DocumentationChanges` by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2100](https://togithub.com/fluentassertions/fluentassertions/pull/2100)
- Remove unused InstallPfx.bat by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2124](https://togithub.com/fluentassertions/fluentassertions/pull/2124)

##### New Contributors

- [@&#8203;berserck](https://togithub.com/berserck) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/2114](https://togithub.com/fluentassertions/fluentassertions/pull/2114)
- [@&#8203;AArnott](https://togithub.com/AArnott) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/2122](https://togithub.com/fluentassertions/fluentassertions/pull/2122)

**Full Changelog**:
https://github.com/fluentassertions/fluentassertions/compare/6.9.0...6.10.0

###
[`v6.9.0`](https://togithub.com/fluentassertions/fluentassertions/releases/tag/6.9.0)

[Compare
Source](https://togithub.com/fluentassertions/fluentassertions/compare/6.8.0...6.9.0)

<!-- Release notes generated using configuration in .github/release.yml
at master -->

#### What's Changed

##### New features

- Added `BeOneOf` for `IComparable`s and object comparisons. by
[@&#8203;jez9999](https://togithub.com/jez9999) in
[https://github.com/fluentassertions/fluentassertions/pull/2028](https://togithub.com/fluentassertions/fluentassertions/pull/2028)
- Add `BeCloseTo()` / `NotBeCloseTo()` to TimeOnlyAssertions by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2030](https://togithub.com/fluentassertions/fluentassertions/pull/2030)
- Add `ThatAre[Not]Abstract`, `ThatAre[Not]Static` and
`ThatAre[Not]Virtual` to `PropertyInfoSelector` by
[@&#8203;94sedighi](https://togithub.com/94sedighi) in
[https://github.com/fluentassertions/fluentassertions/pull/2054](https://togithub.com/fluentassertions/fluentassertions/pull/2054)
- Add `ThatAre[Not]Abstract` to `MethodInfoSelector` by
[@&#8203;94sedighi](https://togithub.com/94sedighi) in
[https://github.com/fluentassertions/fluentassertions/pull/2060](https://togithub.com/fluentassertions/fluentassertions/pull/2060)
- Add `ThatAre[Not]Abstract` to `TypeSelector` by
[@&#8203;94sedighi](https://togithub.com/94sedighi) in
[https://github.com/fluentassertions/fluentassertions/pull/2058](https://togithub.com/fluentassertions/fluentassertions/pull/2058)
- Add `ThatAre[Not]Sealed` to `TypeSelector.cs` by
[@&#8203;94sedighi](https://togithub.com/94sedighi) in
[https://github.com/fluentassertions/fluentassertions/pull/2059](https://togithub.com/fluentassertions/fluentassertions/pull/2059)
- Add `ThatAre[Not]Interfaces` to `TypeSelector.cs` by
[@&#8203;94sedighi](https://togithub.com/94sedighi) in
[https://github.com/fluentassertions/fluentassertions/pull/2057](https://togithub.com/fluentassertions/fluentassertions/pull/2057)
- Add extensions for `OccurrenceConstraint` that reads more fluently by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2047](https://togithub.com/fluentassertions/fluentassertions/pull/2047)
- Add `Imply()` to `BooleanAssertions` by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2074](https://togithub.com/fluentassertions/fluentassertions/pull/2074)
- Add `ThatAre[Not]ValueTypes` method to `TypeSelector.cs` by
[@&#8203;94sedighi](https://togithub.com/94sedighi) in
[https://github.com/fluentassertions/fluentassertions/pull/2083](https://togithub.com/fluentassertions/fluentassertions/pull/2083)

##### Improvements

- Order strings with ordinal comparison by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2075](https://togithub.com/fluentassertions/fluentassertions/pull/2075)
- Improve performance of `IsTuple()` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2079](https://togithub.com/fluentassertions/fluentassertions/pull/2079)
- Optimize `IsRecord()` by [@&#8203;jnyrup](https://togithub.com/jnyrup)
in
[https://github.com/fluentassertions/fluentassertions/pull/2080](https://togithub.com/fluentassertions/fluentassertions/pull/2080)

##### Fixes

- Nested `AssertionScope`s do not print inner scope reportables by
[@&#8203;94sedighi](https://togithub.com/94sedighi) in
[https://github.com/fluentassertions/fluentassertions/pull/2044](https://togithub.com/fluentassertions/fluentassertions/pull/2044)
- Extend `ThatArePublicOrInternal` to also look at the setter of
properties by [@&#8203;Ruijin92](https://togithub.com/Ruijin92) in
[https://github.com/fluentassertions/fluentassertions/pull/2082](https://togithub.com/fluentassertions/fluentassertions/pull/2082)
- Treat record structs as records by
[@&#8203;salvois](https://togithub.com/salvois) in
[https://github.com/fluentassertions/fluentassertions/pull/2009](https://togithub.com/fluentassertions/fluentassertions/pull/2009)

##### Documentation

- Document alternatives for collection order by
[@&#8203;nycdotnet](https://togithub.com/nycdotnet) in
[https://github.com/fluentassertions/fluentassertions/pull/2063](https://togithub.com/fluentassertions/fluentassertions/pull/2063)
- Document that `PathMap` is currently not supported by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2067](https://togithub.com/fluentassertions/fluentassertions/pull/2067)
- Use langword instead of <c> for C# keywords by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2070](https://togithub.com/fluentassertions/fluentassertions/pull/2070)
- Add missing exceptions to xml summaries by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2023](https://togithub.com/fluentassertions/fluentassertions/pull/2023)
- Improve `Guard` helper by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2076](https://togithub.com/fluentassertions/fluentassertions/pull/2076)
- Add issue templates and api review process by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2078](https://togithub.com/fluentassertions/fluentassertions/pull/2078)
- Add `cSpell` to NUKE build pipeline by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2086](https://togithub.com/fluentassertions/fluentassertions/pull/2086)

##### Others

- Enable CI unit tests on linux and mac by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2021](https://togithub.com/fluentassertions/fluentassertions/pull/2021)
- update catch phrase url by
[@&#8203;danielchalmers](https://togithub.com/danielchalmers) in
[https://github.com/fluentassertions/fluentassertions/pull/2025](https://togithub.com/fluentassertions/fluentassertions/pull/2025)
- Prepare approval tests for .NET 7 by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2024](https://togithub.com/fluentassertions/fluentassertions/pull/2024)
- Use PolySharp to generate polyfill attributes by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2026](https://togithub.com/fluentassertions/fluentassertions/pull/2026)
- New unit test to verify CompleteWithinAsync behaves correctly in an
assertion scope by [@&#8203;lg2de](https://togithub.com/lg2de) in
[https://github.com/fluentassertions/fluentassertions/pull/2033](https://togithub.com/fluentassertions/fluentassertions/pull/2033)
- Fix nuget config to be able to restore/build the project when having
custom HTTP nuget sources by
[@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/2032](https://togithub.com/fluentassertions/fluentassertions/pull/2032)
- Improve coverage on data assertions by
[@&#8203;lg2de](https://togithub.com/lg2de) in
[https://github.com/fluentassertions/fluentassertions/pull/2037](https://togithub.com/fluentassertions/fluentassertions/pull/2037)
- Bump minimum SDK to 6.0.400 by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2038](https://togithub.com/fluentassertions/fluentassertions/pull/2038)
- Let `EquatableOfInt` implement `IComparable<T>` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2036](https://togithub.com/fluentassertions/fluentassertions/pull/2036)
- New tests for better code coverage on collection assertions by
[@&#8203;lg2de](https://togithub.com/lg2de) in
[https://github.com/fluentassertions/fluentassertions/pull/2035](https://togithub.com/fluentassertions/fluentassertions/pull/2035)
- Comparable type assertions referential equality by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2046](https://togithub.com/fluentassertions/fluentassertions/pull/2046)
- Use TheoryData by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2068](https://togithub.com/fluentassertions/fluentassertions/pull/2068)
- Pattern combinators by [@&#8203;jnyrup](https://togithub.com/jnyrup)
in
[https://github.com/fluentassertions/fluentassertions/pull/2039](https://togithub.com/fluentassertions/fluentassertions/pull/2039)
- Update nugets by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2077](https://togithub.com/fluentassertions/fluentassertions/pull/2077)
- Set process dotnet cli language to en-US by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2084](https://togithub.com/fluentassertions/fluentassertions/pull/2084)
- Bump required .NET SDK to v7 by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2087](https://togithub.com/fluentassertions/fluentassertions/pull/2087)
- Optimize NUKE spell check by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2089](https://togithub.com/fluentassertions/fluentassertions/pull/2089)
- Cleanups by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2081](https://togithub.com/fluentassertions/fluentassertions/pull/2081)
- Fix build breaking on non PR branches by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2090](https://togithub.com/fluentassertions/fluentassertions/pull/2090)
- Add process env variable `DOTNET_CLI_UI_LANGUAGE` also inside targets
by [@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/2092](https://togithub.com/fluentassertions/fluentassertions/pull/2092)

#### New Contributors

- [@&#8203;danielchalmers](https://togithub.com/danielchalmers) made
their first contribution in
[https://github.com/fluentassertions/fluentassertions/pull/2025](https://togithub.com/fluentassertions/fluentassertions/pull/2025)
- [@&#8203;jez9999](https://togithub.com/jez9999) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/2028](https://togithub.com/fluentassertions/fluentassertions/pull/2028)
- [@&#8203;94sedighi](https://togithub.com/94sedighi) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/2054](https://togithub.com/fluentassertions/fluentassertions/pull/2054)
- [@&#8203;Ruijin92](https://togithub.com/Ruijin92) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/2082](https://togithub.com/fluentassertions/fluentassertions/pull/2082)
- [@&#8203;salvois](https://togithub.com/salvois) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/2009](https://togithub.com/fluentassertions/fluentassertions/pull/2009)

**Full Changelog**:
https://github.com/fluentassertions/fluentassertions/compare/6.8.0...6.9.0

###
[`v6.8.0`](https://togithub.com/fluentassertions/fluentassertions/releases/tag/6.8.0)

[Compare
Source](https://togithub.com/fluentassertions/fluentassertions/compare/6.7.0...6.8.0)

<!-- Release notes generated using configuration in .github/release.yml
at develop -->

#### What's Changed

##### New features

- Extend collection assertions with `ContainInConsecutiveOrder` and
`NotContainInConsecutiveOrder` by
[@&#8203;StacyCash](https://togithub.com/StacyCash) in
[https://github.com/fluentassertions/fluentassertions/pull/1963](https://togithub.com/fluentassertions/fluentassertions/pull/1963)
- Added `NotCompleteWithinAsync` for Task assertions by
[@&#8203;lg2de](https://togithub.com/lg2de) in
[https://github.com/fluentassertions/fluentassertions/pull/1967](https://togithub.com/fluentassertions/fluentassertions/pull/1967)
- Added assertions for non-generic `TaskCompletionSource` by
[@&#8203;lg2de](https://togithub.com/lg2de) in
[https://github.com/fluentassertions/fluentassertions/pull/1961](https://togithub.com/fluentassertions/fluentassertions/pull/1961)
- Exposes the `IMonitor` object to extensions methods. by
[@&#8203;A-Kjeldgaard](https://togithub.com/A-Kjeldgaard) in
[https://github.com/fluentassertions/fluentassertions/pull/2010](https://togithub.com/fluentassertions/fluentassertions/pull/2010)

##### Improvements

- Optimize `BeEquivalentTo` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1939](https://togithub.com/fluentassertions/fluentassertions/pull/1939)
- Print commas at the end of the line by
[@&#8203;ronaldkroon](https://togithub.com/ronaldkroon) in
[https://github.com/fluentassertions/fluentassertions/pull/1945](https://togithub.com/fluentassertions/fluentassertions/pull/1945)
- Avoid allocating sub-arrays in `ContainInOrder` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1960](https://togithub.com/fluentassertions/fluentassertions/pull/1960)
- Extend `IObjectInfo` with info about `DeclaringType` by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1950](https://togithub.com/fluentassertions/fluentassertions/pull/1950)
- Prepare constructors of `AsyncFunctionAssertions` to make them
protected in V7 by [@&#8203;lg2de](https://togithub.com/lg2de) in
[https://github.com/fluentassertions/fluentassertions/pull/1972](https://togithub.com/fluentassertions/fluentassertions/pull/1972)
- Calculate the difference between the subject and the expected nearby
time by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2013](https://togithub.com/fluentassertions/fluentassertions/pull/2013)

##### Fixes

- Filter dynamic methods from stack trace by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1943](https://togithub.com/fluentassertions/fluentassertions/pull/1943)
- Make For/Excluding work with nested paths by
[@&#8203;whymatter](https://togithub.com/whymatter) in
[https://github.com/fluentassertions/fluentassertions/pull/1953](https://togithub.com/fluentassertions/fluentassertions/pull/1953)
- Use InvariantCulture when doing case-insensitive matches by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1985](https://togithub.com/fluentassertions/fluentassertions/pull/1985)
- Global record equivalency settings were not taken into account by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1984](https://togithub.com/fluentassertions/fluentassertions/pull/1984)
- Escape brackets in execution time failures by
[@&#8203;Briaoeuidhtns](https://togithub.com/Briaoeuidhtns) in
[https://github.com/fluentassertions/fluentassertions/pull/1994](https://togithub.com/fluentassertions/fluentassertions/pull/1994)

##### Documentation

- More specifically clarify the intentions of `WithArgs` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1929](https://togithub.com/fluentassertions/fluentassertions/pull/1929)
- Remove building link from the website by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1934](https://togithub.com/fluentassertions/fluentassertions/pull/1934)
- Add `Enum.BeOneOf` to the docs by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1958](https://togithub.com/fluentassertions/fluentassertions/pull/1958)
- Document how to use `ModuleInitializer` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1966](https://togithub.com/fluentassertions/fluentassertions/pull/1966)
- Fix a typo on the Assembly References documentation page by
[@&#8203;asydikov](https://togithub.com/asydikov) in
[https://github.com/fluentassertions/fluentassertions/pull/1970](https://togithub.com/fluentassertions/fluentassertions/pull/1970)
- Update summary of `EquivalencyValidator` by
[@&#8203;Wolgo](https://togithub.com/Wolgo) in
[https://github.com/fluentassertions/fluentassertions/pull/1991](https://togithub.com/fluentassertions/fluentassertions/pull/1991)
- Improve error messages for accidental `Equals` usage by
[@&#8203;nycdotnet](https://togithub.com/nycdotnet) in
[https://github.com/fluentassertions/fluentassertions/pull/2006](https://togithub.com/fluentassertions/fluentassertions/pull/2006)

##### Others

- Upgrade to C# 10 by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1935](https://togithub.com/fluentassertions/fluentassertions/pull/1935)
- Use file scoped namespaces by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1936](https://togithub.com/fluentassertions/fluentassertions/pull/1936)
- More use of pattern matching and lifted operators by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1937](https://togithub.com/fluentassertions/fluentassertions/pull/1937)
- Update nuget packages by [@&#8203;jnyrup](https://togithub.com/jnyrup)
in
[https://github.com/fluentassertions/fluentassertions/pull/1962](https://togithub.com/fluentassertions/fluentassertions/pull/1962)
- Make it possible for third-party libraries to access the underlying
collection of instances of `ReadOnlyNonGenericCollectionWrapper` by
[@&#8203;logiclrd](https://togithub.com/logiclrd) in
[https://github.com/fluentassertions/fluentassertions/pull/1968](https://togithub.com/fluentassertions/fluentassertions/pull/1968)
- Code cleanups by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1973](https://togithub.com/fluentassertions/fluentassertions/pull/1973)
- Improve coverage for `CollectionMemberObjectInfo` by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1983](https://togithub.com/fluentassertions/fluentassertions/pull/1983)
- Deduplicate target frameworks by
[@&#8203;0xced](https://togithub.com/0xced) in
[https://github.com/fluentassertions/fluentassertions/pull/1980](https://togithub.com/fluentassertions/fluentassertions/pull/1980)
- Removed netcoreapp2.0 framework check in formatting precision tests by
[@&#8203;iliashkolyar](https://togithub.com/iliashkolyar) in
[https://github.com/fluentassertions/fluentassertions/pull/1976](https://togithub.com/fluentassertions/fluentassertions/pull/1976)
- Rename `ShouldCompareMembersThisDeep` to `ShouldCompareNodesThisDeep`
by [@&#8203;Wolgo](https://togithub.com/Wolgo) in
[https://github.com/fluentassertions/fluentassertions/pull/1992](https://togithub.com/fluentassertions/fluentassertions/pull/1992)
- Update nuget packages by [@&#8203;jnyrup](https://togithub.com/jnyrup)
in
[https://github.com/fluentassertions/fluentassertions/pull/1996](https://togithub.com/fluentassertions/fluentassertions/pull/1996)
- Cleanups by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1998](https://togithub.com/fluentassertions/fluentassertions/pull/1998)
- Update GitHub actions by [@&#8203;jnyrup](https://togithub.com/jnyrup)
in
[https://github.com/fluentassertions/fluentassertions/pull/2007](https://togithub.com/fluentassertions/fluentassertions/pull/2007)
- Fix the PR link in releases.md by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2014](https://togithub.com/fluentassertions/fluentassertions/pull/2014)
- Prepare 6.8.0 by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2020](https://togithub.com/fluentassertions/fluentassertions/pull/2020)

#### New Contributors

- [@&#8203;StacyCash](https://togithub.com/StacyCash) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1963](https://togithub.com/fluentassertions/fluentassertions/pull/1963)
- [@&#8203;asydikov](https://togithub.com/asydikov) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1970](https://togithub.com/fluentassertions/fluentassertions/pull/1970)
- [@&#8203;0xced](https://togithub.com/0xced) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1980](https://togithub.com/fluentassertions/fluentassertions/pull/1980)
- [@&#8203;Wolgo](https://togithub.com/Wolgo) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1991](https://togithub.com/fluentassertions/fluentassertions/pull/1991)
- [@&#8203;Briaoeuidhtns](https://togithub.com/Briaoeuidhtns) made their
first contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1994](https://togithub.com/fluentassertions/fluentassertions/pull/1994)
- [@&#8203;nycdotnet](https://togithub.com/nycdotnet) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/2006](https://togithub.com/fluentassertions/fluentassertions/pull/2006)
- [@&#8203;A-Kjeldgaard](https://togithub.com/A-Kjeldgaard) made their
first contribution in
[https://github.com/fluentassertions/fluentassertions/pull/2010](https://togithub.com/fluentassertions/fluentassertions/pull/2010)

**Full Changelog**:
https://github.com/fluentassertions/fluentassertions/compare/6.7.0...6.8.0

###
[`v6.7.0`](https://togithub.com/fluentassertions/fluentassertions/releases/tag/6.7.0)

[Compare
Source](https://togithub.com/fluentassertions/fluentassertions/compare/6.6.0...6.7.0)

<!-- Release notes generated using configuration in .github/release.yml
at master -->

##### What's Changed

##### New features

- Add `BeDefined` and `NotBeDefined` to `EnumAssertions` by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1888](https://togithub.com/fluentassertions/fluentassertions/pull/1888)
- Restore basic assertions for collections in `System.Data` by
[@&#8203;logiclrd](https://togithub.com/logiclrd) in
[https://github.com/fluentassertions/fluentassertions/pull/1812](https://togithub.com/fluentassertions/fluentassertions/pull/1812)
- Add the ability to exclude non-browsable members from equivalency
tests by [@&#8203;logiclrd](https://togithub.com/logiclrd) in
[https://github.com/fluentassertions/fluentassertions/pull/1827](https://togithub.com/fluentassertions/fluentassertions/pull/1827)
- Add `For`/`Exclude` to allow exclusion of members inside a collection
by [@&#8203;whymatter](https://togithub.com/whymatter) in
[https://github.com/fluentassertions/fluentassertions/pull/1782](https://togithub.com/fluentassertions/fluentassertions/pull/1782)
- Add overload to `HaveElement()` to be able to assert on occurrences
for `XDocument` and `XElement` by
[@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/1880](https://togithub.com/fluentassertions/fluentassertions/pull/1880)

##### Fixes

- Do not add all arguments of type `T` to the matching events, if one is
found by [@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/1920](https://togithub.com/fluentassertions/fluentassertions/pull/1920)

##### Documentation

- Update documentation for event monitoring at .netstandard2.0 by
[@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/1879](https://togithub.com/fluentassertions/fluentassertions/pull/1879)
- Update docxml comments on `BeInRange` by
[@&#8203;andrewlock](https://togithub.com/andrewlock) in
[https://github.com/fluentassertions/fluentassertions/pull/1907](https://togithub.com/fluentassertions/fluentassertions/pull/1907)
- Add ContainSingle.Where to collection examples by
[@&#8203;timabell](https://togithub.com/timabell) in
[https://github.com/fluentassertions/fluentassertions/pull/1917](https://togithub.com/fluentassertions/fluentassertions/pull/1917)

##### Others

- More code coverage by
[@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/1871](https://togithub.com/fluentassertions/fluentassertions/pull/1871)
- Code style fixes by [@&#8203;ITaluone](https://togithub.com/ITaluone)
in
[https://github.com/fluentassertions/fluentassertions/pull/1881](https://togithub.com/fluentassertions/fluentassertions/pull/1881)
- Add missing tests (according to coveralls) for Data\* objects by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1882](https://togithub.com/fluentassertions/fluentassertions/pull/1882)
- Fix small typo in `AssertionScope` by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1890](https://togithub.com/fluentassertions/fluentassertions/pull/1890)
- Add missing tests for matching `null` with a wildcard by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1889](https://togithub.com/fluentassertions/fluentassertions/pull/1889)
- More testing of guarding methods by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1891](https://togithub.com/fluentassertions/fluentassertions/pull/1891)
- Fix release notes by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK)
in
[https://github.com/fluentassertions/fluentassertions/pull/1892](https://togithub.com/fluentassertions/fluentassertions/pull/1892)
- Structure assertions with nested classes instead of regions (Part 1)
by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1898](https://togithub.com/fluentassertions/fluentassertions/pull/1898)
- Add missing `null` check tests in Data\*Specs by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1899](https://togithub.com/fluentassertions/fluentassertions/pull/1899)
- Structure assertions with nested classes instead of regions (Part 2)
by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1900](https://togithub.com/fluentassertions/fluentassertions/pull/1900)
- Update nugets by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1901](https://togithub.com/fluentassertions/fluentassertions/pull/1901)
- Cleanup README.md by
[@&#8203;robvanuden](https://togithub.com/robvanuden) in
[https://github.com/fluentassertions/fluentassertions/pull/1905](https://togithub.com/fluentassertions/fluentassertions/pull/1905)
- Structure assertions with nested classes instead of regions (Part 3)
by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1903](https://togithub.com/fluentassertions/fluentassertions/pull/1903)
- Try to stabilize UIFact tests by running them sequentially by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1902](https://togithub.com/fluentassertions/fluentassertions/pull/1902)
- Structure assertions with nested classes instead of regions (Part 4)
by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1908](https://togithub.com/fluentassertions/fluentassertions/pull/1908)
- Structure assertions with nested classes instead of regions (Part 5)
by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1909](https://togithub.com/fluentassertions/fluentassertions/pull/1909)
- Fix coveralls badge by
[@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/1906](https://togithub.com/fluentassertions/fluentassertions/pull/1906)
- Fix codestyle issues by
[@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/1912](https://togithub.com/fluentassertions/fluentassertions/pull/1912)
- Structure assertions with nested classes instead of regions (Part 6)
by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1911](https://togithub.com/fluentassertions/fluentassertions/pull/1911)
- Fix the failure message for occurrence regex by
[@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/1913](https://togithub.com/fluentassertions/fluentassertions/pull/1913)

##### New Contributors

- [@&#8203;ITaluone](https://togithub.com/ITaluone) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1871](https://togithub.com/fluentassertions/fluentassertions/pull/1871)
- [@&#8203;whymatter](https://togithub.com/whymatter) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1782](https://togithub.com/fluentassertions/fluentassertions/pull/1782)
- [@&#8203;andrewlock](https://togithub.com/andrewlock) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1907](https://togithub.com/fluentassertions/fluentassertions/pull/1907)
- [@&#8203;timabell](https://togithub.com/timabell) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1917](https://togithub.com/fluentassertions/fluentassertions/pull/1917)

**Full Changelog**:
https://github.com/fluentassertions/fluentassertions/compare/6.6.0...6.7.0

###
[`v6.6.0`](https://togithub.com/fluentassertions/fluentassertions/releases/tag/6.6.0)

[Compare
Source](https://togithub.com/fluentassertions/fluentassertions/compare/6.5.1...6.6.0)

<!-- Release notes generated using configuration in .github/release.yml
at master -->

#### What's Changed

##### New features

- Adding support for .NET6 `DateOnly` struct by
[@&#8203;iliashkolyar](https://togithub.com/iliashkolyar) in
[https://github.com/fluentassertions/fluentassertions/pull/1844](https://togithub.com/fluentassertions/fluentassertions/pull/1844)
- Adding support for .NET6 `TimeOnly` struct by
[@&#8203;iliashkolyar](https://togithub.com/iliashkolyar) in
[https://github.com/fluentassertions/fluentassertions/pull/1848](https://togithub.com/fluentassertions/fluentassertions/pull/1848)
- Extend `NullableBooleanAssertions` by `NotBe()` by
[@&#8203;mu88](https://togithub.com/mu88) in
[https://github.com/fluentassertions/fluentassertions/pull/1865](https://togithub.com/fluentassertions/fluentassertions/pull/1865)
- Added a new overload to `MatchRegex()` to assert on the number of
regex matches by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1869](https://togithub.com/fluentassertions/fluentassertions/pull/1869)

##### Improvements

- Annotated `[Not]MatchRegex` with `[StringSyntax("Regex")]` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1816](https://togithub.com/fluentassertions/fluentassertions/pull/1816)
- Determine caller name for `EnumAssertions.Be` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1835](https://togithub.com/fluentassertions/fluentassertions/pull/1835)
- Add difference to numeric assertion failure messages by
[@&#8203;iliashkolyar](https://togithub.com/iliashkolyar) in
[https://github.com/fluentassertions/fluentassertions/pull/1859](https://togithub.com/fluentassertions/fluentassertions/pull/1859)
- Improve difference calculation of overflowing integrals by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1875](https://togithub.com/fluentassertions/fluentassertions/pull/1875)

##### Fixes

- Ensure `ExcludingMissingMembers` doesn't undo usage of `WithMapping`
by [@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1838](https://togithub.com/fluentassertions/fluentassertions/pull/1838)
- Better support for NaN in numeric assertions on floats and doubles by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1822](https://togithub.com/fluentassertions/fluentassertions/pull/1822)
- `WithMapping` now works in equivalency assertions on collections by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1858](https://togithub.com/fluentassertions/fluentassertions/pull/1858)
- Better handling of NaN in nullable numeric assertions by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1867](https://togithub.com/fluentassertions/fluentassertions/pull/1867)

##### Documentation

- Fix typo in comment for `ComparingRecordsByMembers` by
[@&#8203;kijanawoodard](https://togithub.com/kijanawoodard) in
[https://github.com/fluentassertions/fluentassertions/pull/1809](https://togithub.com/fluentassertions/fluentassertions/pull/1809)
- Add release notes template by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1818](https://togithub.com/fluentassertions/fluentassertions/pull/1818)
- Update migration tip on how to replace `AllItemsAreInstancesOfType` by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1873](https://togithub.com/fluentassertions/fluentassertions/pull/1873)

##### Others

- Add code coverage reporting by
[@&#8203;eNeRGy164](https://togithub.com/eNeRGy164) in
[https://github.com/fluentassertions/fluentassertions/pull/1815](https://togithub.com/fluentassertions/fluentassertions/pull/1815)
- Fix uninvoked actions in tests by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1817](https://togithub.com/fluentassertions/fluentassertions/pull/1817)
- Update nuget packages by [@&#8203;jnyrup](https://togithub.com/jnyrup)
in
[https://github.com/fluentassertions/fluentassertions/pull/1819](https://togithub.com/fluentassertions/fluentassertions/pull/1819)
- More Code Coverage by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1820](https://togithub.com/fluentassertions/fluentassertions/pull/1820)
- Reordered the numeric tests and replaced regions with nested classes
by [@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1821](https://togithub.com/fluentassertions/fluentassertions/pull/1821)
- Fill gaps in System.Data unit testing by
[@&#8203;logiclrd](https://togithub.com/logiclrd) in
[https://github.com/fluentassertions/fluentassertions/pull/1814](https://togithub.com/fluentassertions/fluentassertions/pull/1814)
- Add net6.0 target by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1831](https://togithub.com/fluentassertions/fluentassertions/pull/1831)
- Target PRs at develop instead of master by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1836](https://togithub.com/fluentassertions/fluentassertions/pull/1836)
- Adds test for string collection equivalency by
[@&#8203;chvollm](https://togithub.com/chvollm) in
[https://github.com/fluentassertions/fluentassertions/pull/1843](https://togithub.com/fluentassertions/fluentassertions/pull/1843)
- Replaced regions in numeric specs with nested classes by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1837](https://togithub.com/fluentassertions/fluentassertions/pull/1837)
- Rename constructor parameter for `NullableDateOnlyAssertions` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1846](https://togithub.com/fluentassertions/fluentassertions/pull/1846)
- Improve code coverage of fake should overloads by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1847](https://togithub.com/fluentassertions/fluentassertions/pull/1847)
- Improve code coverage and fix some test mutations by
[@&#8203;eNeRGy164](https://togithub.com/eNeRGy164) in
[https://github.com/fluentassertions/fluentassertions/pull/1839](https://togithub.com/fluentassertions/fluentassertions/pull/1839)
- Removes unnecessary code by
[@&#8203;chvollm](https://togithub.com/chvollm) in
[https://github.com/fluentassertions/fluentassertions/pull/1849](https://togithub.com/fluentassertions/fluentassertions/pull/1849)
- `A_NaN_is_never_in_range_of_two_doubles` was exercising `float`s by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1852](https://togithub.com/fluentassertions/fluentassertions/pull/1852)
- Split `StringAssertionSpecs` file by
[@&#8203;eNeRGy164](https://togithub.com/eNeRGy164) in
[https://github.com/fluentassertions/fluentassertions/pull/1855](https://togithub.com/fluentassertions/fluentassertions/pull/1855)
- Update internal test and build nuget packages by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1866](https://togithub.com/fluentassertions/fluentassertions/pull/1866)
- Add test coverage for `OccurrenceConstraint` by
[@&#8203;eNeRGy164](https://togithub.com/eNeRGy164) in
[https://github.com/fluentassertions/fluentassertions/pull/1856](https://togithub.com/fluentassertions/fluentassertions/pull/1856)
- Fix Some Typos in UpgradingToV6.md by
[@&#8203;say25](https://togithub.com/say25) in
[https://github.com/fluentassertions/fluentassertions/pull/1870](https://togithub.com/fluentassertions/fluentassertions/pull/1870)
- Cleanups in Specs by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1853](https://togithub.com/fluentassertions/fluentassertions/pull/1853)

#### New Contributors

- [@&#8203;kijanawoodard](https://togithub.com/kijanawoodard) made their
first contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1809](https://togithub.com/fluentassertions/fluentassertions/pull/1809)
- [@&#8203;say25](https://togithub.com/say25) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1870](https://togithub.com/fluentassertions/fluentassertions/pull/1870)
- [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1869](https://togithub.com/fluentassertions/fluentassertions/pull/1869)

**Full Changelog**:
https://github.com/fluentassertions/fluentassertions/compare/6.5.1...6.6.0

###
[`v6.5.1`](https://togithub.com/fluentassertions/fluentassertions/releases/tag/6.5.1)

[Compare
Source](https://togithub.com/fluentassertions/fluentassertions/compare/6.5.0...6.5.1)

#### What's Changed

- Maintenance on release notes, Github content files, etc by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1800](https://togithub.com/fluentassertions/fluentassertions/pull/1800)
- Make the site work with Ruby 3 and update catchphrase and sponsors by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1801](https://togithub.com/fluentassertions/fluentassertions/pull/1801)
- Fix ordering collections by the identity function by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1802](https://togithub.com/fluentassertions/fluentassertions/pull/1802)

**Full Changelog**:
https://github.com/fluentassertions/fluentassertions/compare/6.5.0...6.5.1
Public release notes:
https://fluentassertions.com/releases/[#&#8203;651](https://togithub.com/fluentassertions/fluentassertions/issues/651)

###
[`v6.5.0`](https://togithub.com/fluentassertions/fluentassertions/releases/tag/6.5.0)

[Compare
Source](https://togithub.com/fluentassertions/fluentassertions/compare/6.4.0...6.5.0)

#### What's Changed

- Allow mapping properties and/or fields with different names by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1742](https://togithub.com/fluentassertions/fluentassertions/pull/1742)
- Moved the equivalency specs to a separate test project and split them
into separate classes by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1789](https://togithub.com/fluentassertions/fluentassertions/pull/1789)
- Improved docs on `BeLowerCased` and `BeUpperCased` for mixed strings
by [@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1792](https://togithub.com/fluentassertions/fluentassertions/pull/1792)
- Fixed a continuation issue in the fluent assertion API by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1791](https://togithub.com/fluentassertions/fluentassertions/pull/1791)
- Properly recognized non-class types as internal when using
`HaveAccessModifier` assertion by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1793](https://togithub.com/fluentassertions/fluentassertions/pull/1793)
- Caller identification does not handle all arguments using `new` by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1794](https://togithub.com/fluentassertions/fluentassertions/pull/1794)
- Added `AllSatisfy` by [@&#8203;kmusick](https://togithub.com/kmusick)
in
[https://github.com/fluentassertions/fluentassertions/pull/1790](https://togithub.com/fluentassertions/fluentassertions/pull/1790)
- Fix and improve tracing for nested `AssertionScope`s by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1797](https://togithub.com/fluentassertions/fluentassertions/pull/1797)

#### New Contributors

- [@&#8203;kmusick](https://togithub.com/kmusick) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1790](https://togithub.com/fluentassertions/fluentassertions/pull/1790)

**Full Changelog**:
https://github.com/fluentassertions/fluentassertions/compare/6.4.0...6.5.0

###
[`v6.4.0`](https://togithub.com/fluentassertions/fluentassertions/releases/tag/6.4.0)

[Compare
Source](https://togithub.com/fluentassertions/fluentassertions/compare/6.3.0...6.4.0)

#### What's Changed

- Adds `ThatAreStatic` and `ThatAreNotStatic` to `MethodInfoSelector` by
[@&#8203;chvollm](https://togithub.com/chvollm) in
[https://github.com/fluentassertions/fluentassertions/pull/1740](https://togithub.com/fluentassertions/fluentassertions/pull/1740)
- Trailing slash results in 404 page by
[@&#8203;MEmanuelsson](https://togithub.com/MEmanuelsson) in
[https://github.com/fluentassertions/fluentassertions/pull/1767](https://togithub.com/fluentassertions/fluentassertions/pull/1767)
- Introduce assertions for `StatusCode` of `HttpResponseMessage` by
[@&#8203;mu88](https://togithub.com/mu88) for
[@&#8203;swisspost](https://togithub.com/swisspost) in
[https://github.com/fluentassertions/fluentassertions/pull/1737](https://togithub.com/fluentassertions/fluentassertions/pull/1737)
- `ContainItemsAssignableTo` now expects at least one item assignable to
`T` by [@&#8203;MullerWasHere](https://togithub.com/MullerWasHere) in
[https://github.com/fluentassertions/fluentassertions/pull/1765](https://togithub.com/fluentassertions/fluentassertions/pull/1765)
- Variable name is not captured after await assertion by
[@&#8203;MullerWasHere](https://togithub.com/MullerWasHere) in
[https://github.com/fluentassertions/fluentassertions/pull/1770](https://togithub.com/fluentassertions/fluentassertions/pull/1770)
- Fix typos by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1774](https://togithub.com/fluentassertions/fluentassertions/pull/1774)
- Non-generic overload for `WithInnerExceptionExactly` by
[@&#8203;karenfarnes](https://togithub.com/karenfarnes) in
[https://github.com/fluentassertions/fluentassertions/pull/1769](https://togithub.com/fluentassertions/fluentassertions/pull/1769)
- Fix determining caller identity for NET Native by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1776](https://togithub.com/fluentassertions/fluentassertions/pull/1776)
- Adjust Identifier properties by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1777](https://togithub.com/fluentassertions/fluentassertions/pull/1777)
- Relax
`When_the_execution_time_of_an_async_action_is_less_than_a_limit_it_should_not_throw`
by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1778](https://togithub.com/fluentassertions/fluentassertions/pull/1778)
- Bump Nuke/GitVersion, improve PR numbering, simplify Yaml script by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1775](https://togithub.com/fluentassertions/fluentassertions/pull/1775)
- `OccurredEvent` ordering on monitored object is now done via
thread-safe counter by
[@&#8203;MullerWasHere](https://togithub.com/MullerWasHere) in
[https://github.com/fluentassertions/fluentassertions/pull/1773](https://togithub.com/fluentassertions/fluentassertions/pull/1773)
- override Identifier for `BufferedStream` by
[@&#8203;amosonn](https://togithub.com/amosonn) in
[https://github.com/fluentassertions/fluentassertions/pull/1772](https://togithub.com/fluentassertions/fluentassertions/pull/1772)
- Fix `TryGetValue` for dictionary like enumerables by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1786](https://togithub.com/fluentassertions/fluentassertions/pull/1786)
- Optimize build times by [@&#8203;jnyrup](https://togithub.com/jnyrup)
in
[https://github.com/fluentassertions/fluentassertions/pull/1787](https://togithub.com/fluentassertions/fluentassertions/pull/1787)
- Guard against unformattable caller name by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1788](https://togithub.com/fluentassertions/fluentassertions/pull/1788)

#### New Contributors

- [@&#8203;MEmanuelsson](https://togithub.com/MEmanuelsson) made their
first contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1767](https://togithub.com/fluentassertions/fluentassertions/pull/1767)
- [@&#8203;MullerWasHere](https://togithub.com/MullerWasHere) made their
first contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1765](https://togithub.com/fluentassertions/fluentassertions/pull/1765)
- [@&#8203;karenfarnes](https://togithub.com/karenfarnes) made their
first contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1769](https://togithub.com/fluentassertions/fluentassertions/pull/1769)
- [@&#8203;amosonn](https://togithub.com/amosonn) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1772](https://togithub.com/fluentassertions/fluentassertions/pull/1772)

**Full Changelog**:
https://github.com/fluentassertions/fluentassertions/compare/6.3.0...6.4.0
**Public release notes**:
https://fluentassertions.com/releases/[#&#8203;640](https://togithub.com/fluentassertions/fluentassertions/issues/640)

###
[`v6.3.0`](https://togithub.com/fluentassertions/fluentassertions/releases/tag/6.3.0)

[Compare
Source](https://togithub.com/fluentassertions/fluentassertions/compare/6.2.0...6.3.0)

#### What's Changed

- Fix building on linux/WSL by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1723](https://togithub.com/fluentassertions/fluentassertions/pull/1723)
- Test that `ComparingByMembers` clears `equalityStrategyCache` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1724](https://togithub.com/fluentassertions/fluentassertions/pull/1724)
- Adding `ThatAreAsync()` and `ThatAreNotAsync()` to
`MethodInfoSelector` by [@&#8203;chvollm](https://togithub.com/chvollm)
in
[https://github.com/fluentassertions/fluentassertions/pull/1725](https://togithub.com/fluentassertions/fluentassertions/pull/1725)
- Return Task for async/non-async test method by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1736](https://togithub.com/fluentassertions/fluentassertions/pull/1736)
- Fix contributing guidelines by
[@&#8203;wgnf](https://togithub.com/wgnf) in
[https://github.com/fluentassertions/fluentassertions/pull/1739](https://togithub.com/fluentassertions/fluentassertions/pull/1739)
- Replace non-generic collection examples with generic collections in
documentation by
[@&#8203;jonathonchase](https://togithub.com/jonathonchase) in
[https://github.com/fluentassertions/fluentassertions/pull/1745](https://togithub.com/fluentassertions/fluentassertions/pull/1745)
- Adds ThatAre(Not)Virtual to MethodInfoSelector by
[@&#8203;chvollm](https://togithub.com/chvollm) in
[https://github.com/fluentassertions/fluentassertions/pull/1744](https://togithub.com/fluentassertions/fluentassertions/pull/1744)
- Prevent multiple enumeration in `ContainSingle()` by
[@&#8203;bert2](https://togithub.com/bert2) in
[https://github.com/fluentassertions/fluentassertions/pull/1753](https://togithub.com/fluentassertions/fluentassertions/pull/1753)
- Change HaveCount assertion message order to state number before dumpi…
by [@&#8203;iliashkolyar](https://togithub.com/iliashkolyar) in
[https://github.com/fluentassertions/fluentassertions/pull/1760](https://togithub.com/fluentassertions/fluentassertions/pull/1760)
- Throw exception when calling object.Equals on Assertions class by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1764](https://togithub.com/fluentassertions/fluentassertions/pull/1764)
- Take sync work into account in CompleteWithinAsync by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1762](https://togithub.com/fluentassertions/fluentassertions/pull/1762)

#### New Contributors

- [@&#8203;wgnf](https://togithub.com/wgnf) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1739](https://togithub.com/fluentassertions/fluentassertions/pull/1739)
- [@&#8203;jonathonchase](https://togithub.com/jonathonchase) made their
first contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1745](https://togithub.com/fluentassertions/fluentassertions/pull/1745)
- [@&#8203;bert2](https://togithub.com/bert2) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1753](https://togithub.com/fluentassertions/fluentassertions/pull/1753)
- [@&#8203;iliashkolyar](https://togithub.com/iliashkolyar) made their
first contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1760](https://togithub.com/fluentassertions/fluentassertions/pull/1760)

**Full Changelog**:
https://github.com/fluentassertions/fluentassertions/compare/6.2.0...6.3.0

###
[`v6.2.0`](https://togithub.com/fluentassertions/fluentassertions/releases/tag/6.2.0)

[Compa

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://app.renovatebot.com/dashboard#github/cythral/brighid-commands).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS4zNC4xIiwidXBkYXRlZEluVmVyIjoiMzUuMzQuMSJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate bot added a commit to cythral/brighid-discord-adapter that referenced this pull request Apr 18, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [FluentAssertions](https://www.fluentassertions.com/)
([source](https://togithub.com/fluentassertions/fluentassertions)) |
nuget | major | `5.10.3` -> `6.10.0` |

---

### Release Notes

<details>
<summary>fluentassertions/fluentassertions</summary>

###
[`v6.10.0`](https://togithub.com/fluentassertions/fluentassertions/releases/tag/6.10.0)

[Compare
Source](https://togithub.com/fluentassertions/fluentassertions/compare/6.9.0...6.10.0)

<!-- Release notes generated using configuration in .github/release.yml
at master -->

##### What's Changed

##### Fixes

- Declare `System.Net.Http` as a framework dependency by
[@&#8203;AArnott](https://togithub.com/AArnott) in
[https://github.com/fluentassertions/fluentassertions/pull/2122](https://togithub.com/fluentassertions/fluentassertions/pull/2122)
- Improves how `BeEquivalentTo` handles fields hiding base-class fields
by [@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1990](https://togithub.com/fluentassertions/fluentassertions/pull/1990)
- Fix timeout check in `WithResult` extension by
[@&#8203;lg2de](https://togithub.com/lg2de) in
[https://github.com/fluentassertions/fluentassertions/pull/2101](https://togithub.com/fluentassertions/fluentassertions/pull/2101)
- Avoid exceptions when wrapping in `AssertionScope` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2103](https://togithub.com/fluentassertions/fluentassertions/pull/2103)

##### Others

- Fix copyright year by
[@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/2099](https://togithub.com/fluentassertions/fluentassertions/pull/2099)
- Fix broken link in releases.md by
[@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/2096](https://togithub.com/fluentassertions/fluentassertions/pull/2096)
- Check if `lcov.info` does exist by
[@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/2097](https://togithub.com/fluentassertions/fluentassertions/pull/2097)
- Clean up `Build.cs` by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK)
in
[https://github.com/fluentassertions/fluentassertions/pull/2093](https://togithub.com/fluentassertions/fluentassertions/pull/2093)
- Updated editor configs by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/2104](https://togithub.com/fluentassertions/fluentassertions/pull/2104)
- Revert early returns for project consistency by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2105](https://togithub.com/fluentassertions/fluentassertions/pull/2105)
- Update data.md to fix typo by
[@&#8203;berserck](https://togithub.com/berserck) in
[https://github.com/fluentassertions/fluentassertions/pull/2114](https://togithub.com/fluentassertions/fluentassertions/pull/2114)
- Add unit tests for better coverage in Execution namespace by
[@&#8203;lg2de](https://togithub.com/lg2de) in
[https://github.com/fluentassertions/fluentassertions/pull/2042](https://togithub.com/fluentassertions/fluentassertions/pull/2042)
- Add code coverage to XUnit2.Specs by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2115](https://togithub.com/fluentassertions/fluentassertions/pull/2115)
- Regrouping and formatting of the selection rule specs by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/2106](https://togithub.com/fluentassertions/fluentassertions/pull/2106)
- Add fancy `ReportSummary` by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2116](https://togithub.com/fluentassertions/fluentassertions/pull/2116)
- Add new issue template for a general feature by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2113](https://togithub.com/fluentassertions/fluentassertions/pull/2113)
- Add missing tests for `int.Seconds(TimeSpan)` by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2119](https://togithub.com/fluentassertions/fluentassertions/pull/2119)
- Add test summaries by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK)
in
[https://github.com/fluentassertions/fluentassertions/pull/2118](https://togithub.com/fluentassertions/fluentassertions/pull/2118)
- Declare few more files as `DocumentationChanges` by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2100](https://togithub.com/fluentassertions/fluentassertions/pull/2100)
- Remove unused InstallPfx.bat by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2124](https://togithub.com/fluentassertions/fluentassertions/pull/2124)

##### New Contributors

- [@&#8203;berserck](https://togithub.com/berserck) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/2114](https://togithub.com/fluentassertions/fluentassertions/pull/2114)
- [@&#8203;AArnott](https://togithub.com/AArnott) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/2122](https://togithub.com/fluentassertions/fluentassertions/pull/2122)

**Full Changelog**:
https://github.com/fluentassertions/fluentassertions/compare/6.9.0...6.10.0

###
[`v6.9.0`](https://togithub.com/fluentassertions/fluentassertions/releases/tag/6.9.0)

[Compare
Source](https://togithub.com/fluentassertions/fluentassertions/compare/6.8.0...6.9.0)

<!-- Release notes generated using configuration in .github/release.yml
at master -->

#### What's Changed

##### New features

- Added `BeOneOf` for `IComparable`s and object comparisons. by
[@&#8203;jez9999](https://togithub.com/jez9999) in
[https://github.com/fluentassertions/fluentassertions/pull/2028](https://togithub.com/fluentassertions/fluentassertions/pull/2028)
- Add `BeCloseTo()` / `NotBeCloseTo()` to TimeOnlyAssertions by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2030](https://togithub.com/fluentassertions/fluentassertions/pull/2030)
- Add `ThatAre[Not]Abstract`, `ThatAre[Not]Static` and
`ThatAre[Not]Virtual` to `PropertyInfoSelector` by
[@&#8203;94sedighi](https://togithub.com/94sedighi) in
[https://github.com/fluentassertions/fluentassertions/pull/2054](https://togithub.com/fluentassertions/fluentassertions/pull/2054)
- Add `ThatAre[Not]Abstract` to `MethodInfoSelector` by
[@&#8203;94sedighi](https://togithub.com/94sedighi) in
[https://github.com/fluentassertions/fluentassertions/pull/2060](https://togithub.com/fluentassertions/fluentassertions/pull/2060)
- Add `ThatAre[Not]Abstract` to `TypeSelector` by
[@&#8203;94sedighi](https://togithub.com/94sedighi) in
[https://github.com/fluentassertions/fluentassertions/pull/2058](https://togithub.com/fluentassertions/fluentassertions/pull/2058)
- Add `ThatAre[Not]Sealed` to `TypeSelector.cs` by
[@&#8203;94sedighi](https://togithub.com/94sedighi) in
[https://github.com/fluentassertions/fluentassertions/pull/2059](https://togithub.com/fluentassertions/fluentassertions/pull/2059)
- Add `ThatAre[Not]Interfaces` to `TypeSelector.cs` by
[@&#8203;94sedighi](https://togithub.com/94sedighi) in
[https://github.com/fluentassertions/fluentassertions/pull/2057](https://togithub.com/fluentassertions/fluentassertions/pull/2057)
- Add extensions for `OccurrenceConstraint` that reads more fluently by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2047](https://togithub.com/fluentassertions/fluentassertions/pull/2047)
- Add `Imply()` to `BooleanAssertions` by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2074](https://togithub.com/fluentassertions/fluentassertions/pull/2074)
- Add `ThatAre[Not]ValueTypes` method to `TypeSelector.cs` by
[@&#8203;94sedighi](https://togithub.com/94sedighi) in
[https://github.com/fluentassertions/fluentassertions/pull/2083](https://togithub.com/fluentassertions/fluentassertions/pull/2083)

##### Improvements

- Order strings with ordinal comparison by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2075](https://togithub.com/fluentassertions/fluentassertions/pull/2075)
- Improve performance of `IsTuple()` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2079](https://togithub.com/fluentassertions/fluentassertions/pull/2079)
- Optimize `IsRecord()` by [@&#8203;jnyrup](https://togithub.com/jnyrup)
in
[https://github.com/fluentassertions/fluentassertions/pull/2080](https://togithub.com/fluentassertions/fluentassertions/pull/2080)

##### Fixes

- Nested `AssertionScope`s do not print inner scope reportables by
[@&#8203;94sedighi](https://togithub.com/94sedighi) in
[https://github.com/fluentassertions/fluentassertions/pull/2044](https://togithub.com/fluentassertions/fluentassertions/pull/2044)
- Extend `ThatArePublicOrInternal` to also look at the setter of
properties by [@&#8203;Ruijin92](https://togithub.com/Ruijin92) in
[https://github.com/fluentassertions/fluentassertions/pull/2082](https://togithub.com/fluentassertions/fluentassertions/pull/2082)
- Treat record structs as records by
[@&#8203;salvois](https://togithub.com/salvois) in
[https://github.com/fluentassertions/fluentassertions/pull/2009](https://togithub.com/fluentassertions/fluentassertions/pull/2009)

##### Documentation

- Document alternatives for collection order by
[@&#8203;nycdotnet](https://togithub.com/nycdotnet) in
[https://github.com/fluentassertions/fluentassertions/pull/2063](https://togithub.com/fluentassertions/fluentassertions/pull/2063)
- Document that `PathMap` is currently not supported by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2067](https://togithub.com/fluentassertions/fluentassertions/pull/2067)
- Use langword instead of <c> for C# keywords by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2070](https://togithub.com/fluentassertions/fluentassertions/pull/2070)
- Add missing exceptions to xml summaries by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2023](https://togithub.com/fluentassertions/fluentassertions/pull/2023)
- Improve `Guard` helper by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2076](https://togithub.com/fluentassertions/fluentassertions/pull/2076)
- Add issue templates and api review process by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2078](https://togithub.com/fluentassertions/fluentassertions/pull/2078)
- Add `cSpell` to NUKE build pipeline by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2086](https://togithub.com/fluentassertions/fluentassertions/pull/2086)

##### Others

- Enable CI unit tests on linux and mac by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2021](https://togithub.com/fluentassertions/fluentassertions/pull/2021)
- update catch phrase url by
[@&#8203;danielchalmers](https://togithub.com/danielchalmers) in
[https://github.com/fluentassertions/fluentassertions/pull/2025](https://togithub.com/fluentassertions/fluentassertions/pull/2025)
- Prepare approval tests for .NET 7 by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2024](https://togithub.com/fluentassertions/fluentassertions/pull/2024)
- Use PolySharp to generate polyfill attributes by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2026](https://togithub.com/fluentassertions/fluentassertions/pull/2026)
- New unit test to verify CompleteWithinAsync behaves correctly in an
assertion scope by [@&#8203;lg2de](https://togithub.com/lg2de) in
[https://github.com/fluentassertions/fluentassertions/pull/2033](https://togithub.com/fluentassertions/fluentassertions/pull/2033)
- Fix nuget config to be able to restore/build the project when having
custom HTTP nuget sources by
[@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/2032](https://togithub.com/fluentassertions/fluentassertions/pull/2032)
- Improve coverage on data assertions by
[@&#8203;lg2de](https://togithub.com/lg2de) in
[https://github.com/fluentassertions/fluentassertions/pull/2037](https://togithub.com/fluentassertions/fluentassertions/pull/2037)
- Bump minimum SDK to 6.0.400 by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2038](https://togithub.com/fluentassertions/fluentassertions/pull/2038)
- Let `EquatableOfInt` implement `IComparable<T>` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2036](https://togithub.com/fluentassertions/fluentassertions/pull/2036)
- New tests for better code coverage on collection assertions by
[@&#8203;lg2de](https://togithub.com/lg2de) in
[https://github.com/fluentassertions/fluentassertions/pull/2035](https://togithub.com/fluentassertions/fluentassertions/pull/2035)
- Comparable type assertions referential equality by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2046](https://togithub.com/fluentassertions/fluentassertions/pull/2046)
- Use TheoryData by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2068](https://togithub.com/fluentassertions/fluentassertions/pull/2068)
- Pattern combinators by [@&#8203;jnyrup](https://togithub.com/jnyrup)
in
[https://github.com/fluentassertions/fluentassertions/pull/2039](https://togithub.com/fluentassertions/fluentassertions/pull/2039)
- Update nugets by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2077](https://togithub.com/fluentassertions/fluentassertions/pull/2077)
- Set process dotnet cli language to en-US by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2084](https://togithub.com/fluentassertions/fluentassertions/pull/2084)
- Bump required .NET SDK to v7 by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2087](https://togithub.com/fluentassertions/fluentassertions/pull/2087)
- Optimize NUKE spell check by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2089](https://togithub.com/fluentassertions/fluentassertions/pull/2089)
- Cleanups by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2081](https://togithub.com/fluentassertions/fluentassertions/pull/2081)
- Fix build breaking on non PR branches by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2090](https://togithub.com/fluentassertions/fluentassertions/pull/2090)
- Add process env variable `DOTNET_CLI_UI_LANGUAGE` also inside targets
by [@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/2092](https://togithub.com/fluentassertions/fluentassertions/pull/2092)

#### New Contributors

- [@&#8203;danielchalmers](https://togithub.com/danielchalmers) made
their first contribution in
[https://github.com/fluentassertions/fluentassertions/pull/2025](https://togithub.com/fluentassertions/fluentassertions/pull/2025)
- [@&#8203;jez9999](https://togithub.com/jez9999) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/2028](https://togithub.com/fluentassertions/fluentassertions/pull/2028)
- [@&#8203;94sedighi](https://togithub.com/94sedighi) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/2054](https://togithub.com/fluentassertions/fluentassertions/pull/2054)
- [@&#8203;Ruijin92](https://togithub.com/Ruijin92) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/2082](https://togithub.com/fluentassertions/fluentassertions/pull/2082)
- [@&#8203;salvois](https://togithub.com/salvois) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/2009](https://togithub.com/fluentassertions/fluentassertions/pull/2009)

**Full Changelog**:
https://github.com/fluentassertions/fluentassertions/compare/6.8.0...6.9.0

###
[`v6.8.0`](https://togithub.com/fluentassertions/fluentassertions/releases/tag/6.8.0)

[Compare
Source](https://togithub.com/fluentassertions/fluentassertions/compare/6.7.0...6.8.0)

<!-- Release notes generated using configuration in .github/release.yml
at develop -->

##### What's Changed

##### New features

- Extend collection assertions with `ContainInConsecutiveOrder` and
`NotContainInConsecutiveOrder` by
[@&#8203;StacyCash](https://togithub.com/StacyCash) in
[https://github.com/fluentassertions/fluentassertions/pull/1963](https://togithub.com/fluentassertions/fluentassertions/pull/1963)
- Added `NotCompleteWithinAsync` for Task assertions by
[@&#8203;lg2de](https://togithub.com/lg2de) in
[https://github.com/fluentassertions/fluentassertions/pull/1967](https://togithub.com/fluentassertions/fluentassertions/pull/1967)
- Added assertions for non-generic `TaskCompletionSource` by
[@&#8203;lg2de](https://togithub.com/lg2de) in
[https://github.com/fluentassertions/fluentassertions/pull/1961](https://togithub.com/fluentassertions/fluentassertions/pull/1961)
- Exposes the `IMonitor` object to extensions methods. by
[@&#8203;A-Kjeldgaard](https://togithub.com/A-Kjeldgaard) in
[https://github.com/fluentassertions/fluentassertions/pull/2010](https://togithub.com/fluentassertions/fluentassertions/pull/2010)

##### Improvements

- Optimize `BeEquivalentTo` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1939](https://togithub.com/fluentassertions/fluentassertions/pull/1939)
- Print commas at the end of the line by
[@&#8203;ronaldkroon](https://togithub.com/ronaldkroon) in
[https://github.com/fluentassertions/fluentassertions/pull/1945](https://togithub.com/fluentassertions/fluentassertions/pull/1945)
- Avoid allocating sub-arrays in `ContainInOrder` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1960](https://togithub.com/fluentassertions/fluentassertions/pull/1960)
- Extend `IObjectInfo` with info about `DeclaringType` by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1950](https://togithub.com/fluentassertions/fluentassertions/pull/1950)
- Prepare constructors of `AsyncFunctionAssertions` to make them
protected in V7 by [@&#8203;lg2de](https://togithub.com/lg2de) in
[https://github.com/fluentassertions/fluentassertions/pull/1972](https://togithub.com/fluentassertions/fluentassertions/pull/1972)
- Calculate the difference between the subject and the expected nearby
time by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2013](https://togithub.com/fluentassertions/fluentassertions/pull/2013)

##### Fixes

- Filter dynamic methods from stack trace by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1943](https://togithub.com/fluentassertions/fluentassertions/pull/1943)
- Make For/Excluding work with nested paths by
[@&#8203;whymatter](https://togithub.com/whymatter) in
[https://github.com/fluentassertions/fluentassertions/pull/1953](https://togithub.com/fluentassertions/fluentassertions/pull/1953)
- Use InvariantCulture when doing case-insensitive matches by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1985](https://togithub.com/fluentassertions/fluentassertions/pull/1985)
- Global record equivalency settings were not taken into account by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1984](https://togithub.com/fluentassertions/fluentassertions/pull/1984)
- Escape brackets in execution time failures by
[@&#8203;Briaoeuidhtns](https://togithub.com/Briaoeuidhtns) in
[https://github.com/fluentassertions/fluentassertions/pull/1994](https://togithub.com/fluentassertions/fluentassertions/pull/1994)

##### Documentation

- More specifically clarify the intentions of `WithArgs` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1929](https://togithub.com/fluentassertions/fluentassertions/pull/1929)
- Remove building link from the website by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1934](https://togithub.com/fluentassertions/fluentassertions/pull/1934)
- Add `Enum.BeOneOf` to the docs by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1958](https://togithub.com/fluentassertions/fluentassertions/pull/1958)
- Document how to use `ModuleInitializer` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1966](https://togithub.com/fluentassertions/fluentassertions/pull/1966)
- Fix a typo on the Assembly References documentation page by
[@&#8203;asydikov](https://togithub.com/asydikov) in
[https://github.com/fluentassertions/fluentassertions/pull/1970](https://togithub.com/fluentassertions/fluentassertions/pull/1970)
- Update summary of `EquivalencyValidator` by
[@&#8203;Wolgo](https://togithub.com/Wolgo) in
[https://github.com/fluentassertions/fluentassertions/pull/1991](https://togithub.com/fluentassertions/fluentassertions/pull/1991)
- Improve error messages for accidental `Equals` usage by
[@&#8203;nycdotnet](https://togithub.com/nycdotnet) in
[https://github.com/fluentassertions/fluentassertions/pull/2006](https://togithub.com/fluentassertions/fluentassertions/pull/2006)

##### Others

- Upgrade to C# 10 by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1935](https://togithub.com/fluentassertions/fluentassertions/pull/1935)
- Use file scoped namespaces by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1936](https://togithub.com/fluentassertions/fluentassertions/pull/1936)
- More use of pattern matching and lifted operators by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1937](https://togithub.com/fluentassertions/fluentassertions/pull/1937)
- Update nuget packages by [@&#8203;jnyrup](https://togithub.com/jnyrup)
in
[https://github.com/fluentassertions/fluentassertions/pull/1962](https://togithub.com/fluentassertions/fluentassertions/pull/1962)
- Make it possible for third-party libraries to access the underlying
collection of instances of `ReadOnlyNonGenericCollectionWrapper` by
[@&#8203;logiclrd](https://togithub.com/logiclrd) in
[https://github.com/fluentassertions/fluentassertions/pull/1968](https://togithub.com/fluentassertions/fluentassertions/pull/1968)
- Code cleanups by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1973](https://togithub.com/fluentassertions/fluentassertions/pull/1973)
- Improve coverage for `CollectionMemberObjectInfo` by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1983](https://togithub.com/fluentassertions/fluentassertions/pull/1983)
- Deduplicate target frameworks by
[@&#8203;0xced](https://togithub.com/0xced) in
[https://github.com/fluentassertions/fluentassertions/pull/1980](https://togithub.com/fluentassertions/fluentassertions/pull/1980)
- Removed netcoreapp2.0 framework check in formatting precision tests by
[@&#8203;iliashkolyar](https://togithub.com/iliashkolyar) in
[https://github.com/fluentassertions/fluentassertions/pull/1976](https://togithub.com/fluentassertions/fluentassertions/pull/1976)
- Rename `ShouldCompareMembersThisDeep` to `ShouldCompareNodesThisDeep`
by [@&#8203;Wolgo](https://togithub.com/Wolgo) in
[https://github.com/fluentassertions/fluentassertions/pull/1992](https://togithub.com/fluentassertions/fluentassertions/pull/1992)
- Update nuget packages by [@&#8203;jnyrup](https://togithub.com/jnyrup)
in
[https://github.com/fluentassertions/fluentassertions/pull/1996](https://togithub.com/fluentassertions/fluentassertions/pull/1996)
- Cleanups by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1998](https://togithub.com/fluentassertions/fluentassertions/pull/1998)
- Update GitHub actions by [@&#8203;jnyrup](https://togithub.com/jnyrup)
in
[https://github.com/fluentassertions/fluentassertions/pull/2007](https://togithub.com/fluentassertions/fluentassertions/pull/2007)
- Fix the PR link in releases.md by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/2014](https://togithub.com/fluentassertions/fluentassertions/pull/2014)
- Prepare 6.8.0 by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/2020](https://togithub.com/fluentassertions/fluentassertions/pull/2020)

##### New Contributors

- [@&#8203;StacyCash](https://togithub.com/StacyCash) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1963](https://togithub.com/fluentassertions/fluentassertions/pull/1963)
- [@&#8203;asydikov](https://togithub.com/asydikov) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1970](https://togithub.com/fluentassertions/fluentassertions/pull/1970)
- [@&#8203;0xced](https://togithub.com/0xced) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1980](https://togithub.com/fluentassertions/fluentassertions/pull/1980)
- [@&#8203;Wolgo](https://togithub.com/Wolgo) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1991](https://togithub.com/fluentassertions/fluentassertions/pull/1991)
- [@&#8203;Briaoeuidhtns](https://togithub.com/Briaoeuidhtns) made their
first contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1994](https://togithub.com/fluentassertions/fluentassertions/pull/1994)
- [@&#8203;nycdotnet](https://togithub.com/nycdotnet) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/2006](https://togithub.com/fluentassertions/fluentassertions/pull/2006)
- [@&#8203;A-Kjeldgaard](https://togithub.com/A-Kjeldgaard) made their
first contribution in
[https://github.com/fluentassertions/fluentassertions/pull/2010](https://togithub.com/fluentassertions/fluentassertions/pull/2010)

**Full Changelog**:
https://github.com/fluentassertions/fluentassertions/compare/6.7.0...6.8.0

###
[`v6.7.0`](https://togithub.com/fluentassertions/fluentassertions/releases/tag/6.7.0)

[Compare
Source](https://togithub.com/fluentassertions/fluentassertions/compare/6.6.0...6.7.0)

<!-- Release notes generated using configuration in .github/release.yml
at master -->

#### What's Changed

##### New features

- Add `BeDefined` and `NotBeDefined` to `EnumAssertions` by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1888](https://togithub.com/fluentassertions/fluentassertions/pull/1888)
- Restore basic assertions for collections in `System.Data` by
[@&#8203;logiclrd](https://togithub.com/logiclrd) in
[https://github.com/fluentassertions/fluentassertions/pull/1812](https://togithub.com/fluentassertions/fluentassertions/pull/1812)
- Add the ability to exclude non-browsable members from equivalency
tests by [@&#8203;logiclrd](https://togithub.com/logiclrd) in
[https://github.com/fluentassertions/fluentassertions/pull/1827](https://togithub.com/fluentassertions/fluentassertions/pull/1827)
- Add `For`/`Exclude` to allow exclusion of members inside a collection
by [@&#8203;whymatter](https://togithub.com/whymatter) in
[https://github.com/fluentassertions/fluentassertions/pull/1782](https://togithub.com/fluentassertions/fluentassertions/pull/1782)
- Add overload to `HaveElement()` to be able to assert on occurrences
for `XDocument` and `XElement` by
[@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/1880](https://togithub.com/fluentassertions/fluentassertions/pull/1880)

##### Fixes

- Do not add all arguments of type `T` to the matching events, if one is
found by [@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/1920](https://togithub.com/fluentassertions/fluentassertions/pull/1920)

##### Documentation

- Update documentation for event monitoring at .netstandard2.0 by
[@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/1879](https://togithub.com/fluentassertions/fluentassertions/pull/1879)
- Update docxml comments on `BeInRange` by
[@&#8203;andrewlock](https://togithub.com/andrewlock) in
[https://github.com/fluentassertions/fluentassertions/pull/1907](https://togithub.com/fluentassertions/fluentassertions/pull/1907)
- Add ContainSingle.Where to collection examples by
[@&#8203;timabell](https://togithub.com/timabell) in
[https://github.com/fluentassertions/fluentassertions/pull/1917](https://togithub.com/fluentassertions/fluentassertions/pull/1917)

##### Others

- More code coverage by
[@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/1871](https://togithub.com/fluentassertions/fluentassertions/pull/1871)
- Code style fixes by [@&#8203;ITaluone](https://togithub.com/ITaluone)
in
[https://github.com/fluentassertions/fluentassertions/pull/1881](https://togithub.com/fluentassertions/fluentassertions/pull/1881)
- Add missing tests (according to coveralls) for Data\* objects by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1882](https://togithub.com/fluentassertions/fluentassertions/pull/1882)
- Fix small typo in `AssertionScope` by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1890](https://togithub.com/fluentassertions/fluentassertions/pull/1890)
- Add missing tests for matching `null` with a wildcard by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1889](https://togithub.com/fluentassertions/fluentassertions/pull/1889)
- More testing of guarding methods by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1891](https://togithub.com/fluentassertions/fluentassertions/pull/1891)
- Fix release notes by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK)
in
[https://github.com/fluentassertions/fluentassertions/pull/1892](https://togithub.com/fluentassertions/fluentassertions/pull/1892)
- Structure assertions with nested classes instead of regions (Part 1)
by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1898](https://togithub.com/fluentassertions/fluentassertions/pull/1898)
- Add missing `null` check tests in Data\*Specs by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1899](https://togithub.com/fluentassertions/fluentassertions/pull/1899)
- Structure assertions with nested classes instead of regions (Part 2)
by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1900](https://togithub.com/fluentassertions/fluentassertions/pull/1900)
- Update nugets by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1901](https://togithub.com/fluentassertions/fluentassertions/pull/1901)
- Cleanup README.md by
[@&#8203;robvanuden](https://togithub.com/robvanuden) in
[https://github.com/fluentassertions/fluentassertions/pull/1905](https://togithub.com/fluentassertions/fluentassertions/pull/1905)
- Structure assertions with nested classes instead of regions (Part 3)
by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1903](https://togithub.com/fluentassertions/fluentassertions/pull/1903)
- Try to stabilize UIFact tests by running them sequentially by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1902](https://togithub.com/fluentassertions/fluentassertions/pull/1902)
- Structure assertions with nested classes instead of regions (Part 4)
by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1908](https://togithub.com/fluentassertions/fluentassertions/pull/1908)
- Structure assertions with nested classes instead of regions (Part 5)
by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1909](https://togithub.com/fluentassertions/fluentassertions/pull/1909)
- Fix coveralls badge by
[@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/1906](https://togithub.com/fluentassertions/fluentassertions/pull/1906)
- Fix codestyle issues by
[@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/1912](https://togithub.com/fluentassertions/fluentassertions/pull/1912)
- Structure assertions with nested classes instead of regions (Part 6)
by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1911](https://togithub.com/fluentassertions/fluentassertions/pull/1911)
- Fix the failure message for occurrence regex by
[@&#8203;ITaluone](https://togithub.com/ITaluone) in
[https://github.com/fluentassertions/fluentassertions/pull/1913](https://togithub.com/fluentassertions/fluentassertions/pull/1913)

#### New Contributors

- [@&#8203;ITaluone](https://togithub.com/ITaluone) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1871](https://togithub.com/fluentassertions/fluentassertions/pull/1871)
- [@&#8203;whymatter](https://togithub.com/whymatter) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1782](https://togithub.com/fluentassertions/fluentassertions/pull/1782)
- [@&#8203;andrewlock](https://togithub.com/andrewlock) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1907](https://togithub.com/fluentassertions/fluentassertions/pull/1907)
- [@&#8203;timabell](https://togithub.com/timabell) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1917](https://togithub.com/fluentassertions/fluentassertions/pull/1917)

**Full Changelog**:
https://github.com/fluentassertions/fluentassertions/compare/6.6.0...6.7.0

###
[`v6.6.0`](https://togithub.com/fluentassertions/fluentassertions/releases/tag/6.6.0)

[Compare
Source](https://togithub.com/fluentassertions/fluentassertions/compare/6.5.1...6.6.0)

<!-- Release notes generated using configuration in .github/release.yml
at master -->

#### What's Changed

##### New features

- Adding support for .NET6 `DateOnly` struct by
[@&#8203;iliashkolyar](https://togithub.com/iliashkolyar) in
[https://github.com/fluentassertions/fluentassertions/pull/1844](https://togithub.com/fluentassertions/fluentassertions/pull/1844)
- Adding support for .NET6 `TimeOnly` struct by
[@&#8203;iliashkolyar](https://togithub.com/iliashkolyar) in
[https://github.com/fluentassertions/fluentassertions/pull/1848](https://togithub.com/fluentassertions/fluentassertions/pull/1848)
- Extend `NullableBooleanAssertions` by `NotBe()` by
[@&#8203;mu88](https://togithub.com/mu88) in
[https://github.com/fluentassertions/fluentassertions/pull/1865](https://togithub.com/fluentassertions/fluentassertions/pull/1865)
- Added a new overload to `MatchRegex()` to assert on the number of
regex matches by [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1869](https://togithub.com/fluentassertions/fluentassertions/pull/1869)

##### Improvements

- Annotated `[Not]MatchRegex` with `[StringSyntax("Regex")]` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1816](https://togithub.com/fluentassertions/fluentassertions/pull/1816)
- Determine caller name for `EnumAssertions.Be` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1835](https://togithub.com/fluentassertions/fluentassertions/pull/1835)
- Add difference to numeric assertion failure messages by
[@&#8203;iliashkolyar](https://togithub.com/iliashkolyar) in
[https://github.com/fluentassertions/fluentassertions/pull/1859](https://togithub.com/fluentassertions/fluentassertions/pull/1859)
- Improve difference calculation of overflowing integrals by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1875](https://togithub.com/fluentassertions/fluentassertions/pull/1875)

##### Fixes

- Ensure `ExcludingMissingMembers` doesn't undo usage of `WithMapping`
by [@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1838](https://togithub.com/fluentassertions/fluentassertions/pull/1838)
- Better support for NaN in numeric assertions on floats and doubles by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1822](https://togithub.com/fluentassertions/fluentassertions/pull/1822)
- `WithMapping` now works in equivalency assertions on collections by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1858](https://togithub.com/fluentassertions/fluentassertions/pull/1858)
- Better handling of NaN in nullable numeric assertions by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1867](https://togithub.com/fluentassertions/fluentassertions/pull/1867)

##### Documentation

- Fix typo in comment for `ComparingRecordsByMembers` by
[@&#8203;kijanawoodard](https://togithub.com/kijanawoodard) in
[https://github.com/fluentassertions/fluentassertions/pull/1809](https://togithub.com/fluentassertions/fluentassertions/pull/1809)
- Add release notes template by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1818](https://togithub.com/fluentassertions/fluentassertions/pull/1818)
- Update migration tip on how to replace `AllItemsAreInstancesOfType` by
[@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) in
[https://github.com/fluentassertions/fluentassertions/pull/1873](https://togithub.com/fluentassertions/fluentassertions/pull/1873)

##### Others

- Add code coverage reporting by
[@&#8203;eNeRGy164](https://togithub.com/eNeRGy164) in
[https://github.com/fluentassertions/fluentassertions/pull/1815](https://togithub.com/fluentassertions/fluentassertions/pull/1815)
- Fix uninvoked actions in tests by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1817](https://togithub.com/fluentassertions/fluentassertions/pull/1817)
- Update nuget packages by [@&#8203;jnyrup](https://togithub.com/jnyrup)
in
[https://github.com/fluentassertions/fluentassertions/pull/1819](https://togithub.com/fluentassertions/fluentassertions/pull/1819)
- More Code Coverage by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1820](https://togithub.com/fluentassertions/fluentassertions/pull/1820)
- Reordered the numeric tests and replaced regions with nested classes
by [@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1821](https://togithub.com/fluentassertions/fluentassertions/pull/1821)
- Fill gaps in System.Data unit testing by
[@&#8203;logiclrd](https://togithub.com/logiclrd) in
[https://github.com/fluentassertions/fluentassertions/pull/1814](https://togithub.com/fluentassertions/fluentassertions/pull/1814)
- Add net6.0 target by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1831](https://togithub.com/fluentassertions/fluentassertions/pull/1831)
- Target PRs at develop instead of master by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1836](https://togithub.com/fluentassertions/fluentassertions/pull/1836)
- Adds test for string collection equivalency by
[@&#8203;chvollm](https://togithub.com/chvollm) in
[https://github.com/fluentassertions/fluentassertions/pull/1843](https://togithub.com/fluentassertions/fluentassertions/pull/1843)
- Replaced regions in numeric specs with nested classes by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1837](https://togithub.com/fluentassertions/fluentassertions/pull/1837)
- Rename constructor parameter for `NullableDateOnlyAssertions` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1846](https://togithub.com/fluentassertions/fluentassertions/pull/1846)
- Improve code coverage of fake should overloads by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1847](https://togithub.com/fluentassertions/fluentassertions/pull/1847)
- Improve code coverage and fix some test mutations by
[@&#8203;eNeRGy164](https://togithub.com/eNeRGy164) in
[https://github.com/fluentassertions/fluentassertions/pull/1839](https://togithub.com/fluentassertions/fluentassertions/pull/1839)
- Removes unnecessary code by
[@&#8203;chvollm](https://togithub.com/chvollm) in
[https://github.com/fluentassertions/fluentassertions/pull/1849](https://togithub.com/fluentassertions/fluentassertions/pull/1849)
- `A_NaN_is_never_in_range_of_two_doubles` was exercising `float`s by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1852](https://togithub.com/fluentassertions/fluentassertions/pull/1852)
- Split `StringAssertionSpecs` file by
[@&#8203;eNeRGy164](https://togithub.com/eNeRGy164) in
[https://github.com/fluentassertions/fluentassertions/pull/1855](https://togithub.com/fluentassertions/fluentassertions/pull/1855)
- Update internal test and build nuget packages by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1866](https://togithub.com/fluentassertions/fluentassertions/pull/1866)
- Add test coverage for `OccurrenceConstraint` by
[@&#8203;eNeRGy164](https://togithub.com/eNeRGy164) in
[https://github.com/fluentassertions/fluentassertions/pull/1856](https://togithub.com/fluentassertions/fluentassertions/pull/1856)
- Fix Some Typos in UpgradingToV6.md by
[@&#8203;say25](https://togithub.com/say25) in
[https://github.com/fluentassertions/fluentassertions/pull/1870](https://togithub.com/fluentassertions/fluentassertions/pull/1870)
- Cleanups in Specs by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1853](https://togithub.com/fluentassertions/fluentassertions/pull/1853)

#### New Contributors

- [@&#8203;kijanawoodard](https://togithub.com/kijanawoodard) made their
first contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1809](https://togithub.com/fluentassertions/fluentassertions/pull/1809)
- [@&#8203;say25](https://togithub.com/say25) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1870](https://togithub.com/fluentassertions/fluentassertions/pull/1870)
- [@&#8203;IT-VBFK](https://togithub.com/IT-VBFK) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1869](https://togithub.com/fluentassertions/fluentassertions/pull/1869)

**Full Changelog**:
https://github.com/fluentassertions/fluentassertions/compare/6.5.1...6.6.0

###
[`v6.5.1`](https://togithub.com/fluentassertions/fluentassertions/releases/tag/6.5.1)

[Compare
Source](https://togithub.com/fluentassertions/fluentassertions/compare/6.5.0...6.5.1)

#### What's Changed

- Maintenance on release notes, Github content files, etc by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1800](https://togithub.com/fluentassertions/fluentassertions/pull/1800)
- Make the site work with Ruby 3 and update catchphrase and sponsors by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1801](https://togithub.com/fluentassertions/fluentassertions/pull/1801)
- Fix ordering collections by the identity function by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1802](https://togithub.com/fluentassertions/fluentassertions/pull/1802)

**Full Changelog**:
https://github.com/fluentassertions/fluentassertions/compare/6.5.0...6.5.1
Public release notes:
https://fluentassertions.com/releases/[#&#8203;651](https://togithub.com/fluentassertions/fluentassertions/issues/651)

###
[`v6.5.0`](https://togithub.com/fluentassertions/fluentassertions/releases/tag/6.5.0)

[Compare
Source](https://togithub.com/fluentassertions/fluentassertions/compare/6.4.0...6.5.0)

#### What's Changed

- Allow mapping properties and/or fields with different names by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1742](https://togithub.com/fluentassertions/fluentassertions/pull/1742)
- Moved the equivalency specs to a separate test project and split them
into separate classes by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1789](https://togithub.com/fluentassertions/fluentassertions/pull/1789)
- Improved docs on `BeLowerCased` and `BeUpperCased` for mixed strings
by [@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1792](https://togithub.com/fluentassertions/fluentassertions/pull/1792)
- Fixed a continuation issue in the fluent assertion API by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1791](https://togithub.com/fluentassertions/fluentassertions/pull/1791)
- Properly recognized non-class types as internal when using
`HaveAccessModifier` assertion by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1793](https://togithub.com/fluentassertions/fluentassertions/pull/1793)
- Caller identification does not handle all arguments using `new` by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1794](https://togithub.com/fluentassertions/fluentassertions/pull/1794)
- Added `AllSatisfy` by [@&#8203;kmusick](https://togithub.com/kmusick)
in
[https://github.com/fluentassertions/fluentassertions/pull/1790](https://togithub.com/fluentassertions/fluentassertions/pull/1790)
- Fix and improve tracing for nested `AssertionScope`s by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1797](https://togithub.com/fluentassertions/fluentassertions/pull/1797)

#### New Contributors

- [@&#8203;kmusick](https://togithub.com/kmusick) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1790](https://togithub.com/fluentassertions/fluentassertions/pull/1790)

**Full Changelog**:
https://github.com/fluentassertions/fluentassertions/compare/6.4.0...6.5.0

###
[`v6.4.0`](https://togithub.com/fluentassertions/fluentassertions/releases/tag/6.4.0)

[Compare
Source](https://togithub.com/fluentassertions/fluentassertions/compare/6.3.0...6.4.0)

#### What's Changed

- Adds `ThatAreStatic` and `ThatAreNotStatic` to `MethodInfoSelector` by
[@&#8203;chvollm](https://togithub.com/chvollm) in
[https://github.com/fluentassertions/fluentassertions/pull/1740](https://togithub.com/fluentassertions/fluentassertions/pull/1740)
- Trailing slash results in 404 page by
[@&#8203;MEmanuelsson](https://togithub.com/MEmanuelsson) in
[https://github.com/fluentassertions/fluentassertions/pull/1767](https://togithub.com/fluentassertions/fluentassertions/pull/1767)
- Introduce assertions for `StatusCode` of `HttpResponseMessage` by
[@&#8203;mu88](https://togithub.com/mu88) for
[@&#8203;swisspost](https://togithub.com/swisspost) in
[https://github.com/fluentassertions/fluentassertions/pull/1737](https://togithub.com/fluentassertions/fluentassertions/pull/1737)
- `ContainItemsAssignableTo` now expects at least one item assignable to
`T` by [@&#8203;MullerWasHere](https://togithub.com/MullerWasHere) in
[https://github.com/fluentassertions/fluentassertions/pull/1765](https://togithub.com/fluentassertions/fluentassertions/pull/1765)
- Variable name is not captured after await assertion by
[@&#8203;MullerWasHere](https://togithub.com/MullerWasHere) in
[https://github.com/fluentassertions/fluentassertions/pull/1770](https://togithub.com/fluentassertions/fluentassertions/pull/1770)
- Fix typos by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1774](https://togithub.com/fluentassertions/fluentassertions/pull/1774)
- Non-generic overload for `WithInnerExceptionExactly` by
[@&#8203;karenfarnes](https://togithub.com/karenfarnes) in
[https://github.com/fluentassertions/fluentassertions/pull/1769](https://togithub.com/fluentassertions/fluentassertions/pull/1769)
- Fix determining caller identity for NET Native by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1776](https://togithub.com/fluentassertions/fluentassertions/pull/1776)
- Adjust Identifier properties by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1777](https://togithub.com/fluentassertions/fluentassertions/pull/1777)
- Relax
`When_the_execution_time_of_an_async_action_is_less_than_a_limit_it_should_not_throw`
by [@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1778](https://togithub.com/fluentassertions/fluentassertions/pull/1778)
- Bump Nuke/GitVersion, improve PR numbering, simplify Yaml script by
[@&#8203;dennisdoomen](https://togithub.com/dennisdoomen) in
[https://github.com/fluentassertions/fluentassertions/pull/1775](https://togithub.com/fluentassertions/fluentassertions/pull/1775)
- `OccurredEvent` ordering on monitored object is now done via
thread-safe counter by
[@&#8203;MullerWasHere](https://togithub.com/MullerWasHere) in
[https://github.com/fluentassertions/fluentassertions/pull/1773](https://togithub.com/fluentassertions/fluentassertions/pull/1773)
- override Identifier for `BufferedStream` by
[@&#8203;amosonn](https://togithub.com/amosonn) in
[https://github.com/fluentassertions/fluentassertions/pull/1772](https://togithub.com/fluentassertions/fluentassertions/pull/1772)
- Fix `TryGetValue` for dictionary like enumerables by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1786](https://togithub.com/fluentassertions/fluentassertions/pull/1786)
- Optimize build times by [@&#8203;jnyrup](https://togithub.com/jnyrup)
in
[https://github.com/fluentassertions/fluentassertions/pull/1787](https://togithub.com/fluentassertions/fluentassertions/pull/1787)
- Guard against unformattable caller name by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1788](https://togithub.com/fluentassertions/fluentassertions/pull/1788)

#### New Contributors

- [@&#8203;MEmanuelsson](https://togithub.com/MEmanuelsson) made their
first contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1767](https://togithub.com/fluentassertions/fluentassertions/pull/1767)
- [@&#8203;MullerWasHere](https://togithub.com/MullerWasHere) made their
first contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1765](https://togithub.com/fluentassertions/fluentassertions/pull/1765)
- [@&#8203;karenfarnes](https://togithub.com/karenfarnes) made their
first contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1769](https://togithub.com/fluentassertions/fluentassertions/pull/1769)
- [@&#8203;amosonn](https://togithub.com/amosonn) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1772](https://togithub.com/fluentassertions/fluentassertions/pull/1772)

**Full Changelog**:
https://github.com/fluentassertions/fluentassertions/compare/6.3.0...6.4.0
**Public release notes**:
https://fluentassertions.com/releases/[#&#8203;640](https://togithub.com/fluentassertions/fluentassertions/issues/640)

###
[`v6.3.0`](https://togithub.com/fluentassertions/fluentassertions/releases/tag/6.3.0)

[Compare
Source](https://togithub.com/fluentassertions/fluentassertions/compare/6.2.0...6.3.0)

#### What's Changed

- Fix building on linux/WSL by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1723](https://togithub.com/fluentassertions/fluentassertions/pull/1723)
- Test that `ComparingByMembers` clears `equalityStrategyCache` by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1724](https://togithub.com/fluentassertions/fluentassertions/pull/1724)
- Adding `ThatAreAsync()` and `ThatAreNotAsync()` to
`MethodInfoSelector` by [@&#8203;chvollm](https://togithub.com/chvollm)
in
[https://github.com/fluentassertions/fluentassertions/pull/1725](https://togithub.com/fluentassertions/fluentassertions/pull/1725)
- Return Task for async/non-async test method by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1736](https://togithub.com/fluentassertions/fluentassertions/pull/1736)
- Fix contributing guidelines by
[@&#8203;wgnf](https://togithub.com/wgnf) in
[https://github.com/fluentassertions/fluentassertions/pull/1739](https://togithub.com/fluentassertions/fluentassertions/pull/1739)
- Replace non-generic collection examples with generic collections in
documentation by
[@&#8203;jonathonchase](https://togithub.com/jonathonchase) in
[https://github.com/fluentassertions/fluentassertions/pull/1745](https://togithub.com/fluentassertions/fluentassertions/pull/1745)
- Adds ThatAre(Not)Virtual to MethodInfoSelector by
[@&#8203;chvollm](https://togithub.com/chvollm) in
[https://github.com/fluentassertions/fluentassertions/pull/1744](https://togithub.com/fluentassertions/fluentassertions/pull/1744)
- Prevent multiple enumeration in `ContainSingle()` by
[@&#8203;bert2](https://togithub.com/bert2) in
[https://github.com/fluentassertions/fluentassertions/pull/1753](https://togithub.com/fluentassertions/fluentassertions/pull/1753)
- Change HaveCount assertion message order to state number before dumpi…
by [@&#8203;iliashkolyar](https://togithub.com/iliashkolyar) in
[https://github.com/fluentassertions/fluentassertions/pull/1760](https://togithub.com/fluentassertions/fluentassertions/pull/1760)
- Throw exception when calling object.Equals on Assertions class by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1764](https://togithub.com/fluentassertions/fluentassertions/pull/1764)
- Take sync work into account in CompleteWithinAsync by
[@&#8203;jnyrup](https://togithub.com/jnyrup) in
[https://github.com/fluentassertions/fluentassertions/pull/1762](https://togithub.com/fluentassertions/fluentassertions/pull/1762)

#### New Contributors

- [@&#8203;wgnf](https://togithub.com/wgnf) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1739](https://togithub.com/fluentassertions/fluentassertions/pull/1739)
- [@&#8203;jonathonchase](https://togithub.com/jonathonchase) made their
first contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1745](https://togithub.com/fluentassertions/fluentassertions/pull/1745)
- [@&#8203;bert2](https://togithub.com/bert2) made their first
contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1753](https://togithub.com/fluentassertions/fluentassertions/pull/1753)
- [@&#8203;iliashkolyar](https://togithub.com/iliashkolyar) made their
first contribution in
[https://github.com/fluentassertions/fluentassertions/pull/1760](https://togithub.com/fluentassertions/fluentassertions/pull/1760)

**Full Changelog**:
https://github.com/fluentassertions/fluentassertions/compare/6.2.0...6.3.0

###
[`v6.2.0`](https://togithub.com/fluentassertions/fluentassertions/releases/tag/6.2.0)


</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://app.renovatebot.com/dashboard#github/cythral/brighid-discord-adapter).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS4zNC4xIiwidXBkYXRlZEluVmVyIjoiMzUuNDguMiJ9-->

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Talen Fisher <talen.fisher@cythral.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants