All Versions
22
Latest Version
Avg Release Cycle
37 days
Latest Release
1700 days ago
Changelog History
Page 1
Changelog History
Page 1
-
v6.2.1 Changes
September 02, 2020 -
v6.2.0 Changes
July 23, 2020🆕 New
- Apply
Object
member rules even when the methods are overridden (#1777) - 🔧
DoesNothing
configuration for methods that returnTask
(#1784)
➕ Additional Items
- Explain that
DoesNothing
only applies tovoid
- orTask
-returning members (#1782, #1784) - Document how to have a get/set property invoke a side-effect on a call to set and still persist the supplied value (#1783)
- 🛠 Fix the case of the
GetAssemblyFileNamesToScanForExtensions
method in the documentation (#1786)
🚀 With special thanks for contributions to this release from:
- @alex-valchuk
- Daniel Rose - @DanielRose
- @ejwoerlee
- Apply
-
v6.1.0 Changes
June 08, 2020🆕 New
- ➕ Add creation option that would allow calling object class methods on a strict Fake (#1765)
- 👻 Throw informative exception when
IBootstrapper.GetAssemblyFileNamesToScanForExtensions
returnsnull
(#1689) - ➕ Add
ArgumentConstraintManagerExtensions.StartsWith
and.EndsWith
overloads that take aStringComparison
(#1771)
➕ Additional Items
- Document that Dummies are made from public constructors (#1763)
- ⚡️ Update MinVer to 2.3.0 (#1773)
- 🛠 Fix compiler warnings before release (#1776)
🚀 With thanks for contributions to thiis release from
-
v6.0.1 Changes
April 10, 2020🛠 Fixed
- Source Stepping doesn't work because PDBs can't be found (#1751, #1685)
- 🔧 Bad error message when configuring explicitly implemented interface method (#1759)
➕ Additional Items
- 📚 Updated documentation for source stepping (#1685)
- ✂ Remove the documentation page about SideWaffle (#1753)
- 📚 Use consistent analyzer/analyzers terms in documentation (#1755)
- 🛠 Fix
GetFakeManager
usage in documentation (#1757) - 🛠 Fix link to Analyzer Packages documentation (#1757)
- 🔧 Document configuration of explicit interface implementation (#1761)
🚀 With special thanks for contributions to this release from:
- first-time contributor Stefan Ollinger - @dozed
-
v6.0.0 Changes
January 17, 2020🔄 Changed
- 🔀 Stop merging Castle.Core (#1258)
- 🔦 Expose nullability annotations (#1613)
- 🏗 Limit typeparams for Fake options and builder classes (#1664)
- Resolve Dummy Lazy values lazily (#1656)
- 📇 Rename
scope
parameter tomanager
inArgumentConstraintManagerExtensions
methods (#1687) - 🚚 Move analyzers from the main FakeItEasy repository to the FakeItEasy/FakeItEasy.Analyzers repository (#1735)
- The Analyzers and the main FakeItEasy package will now release on their own cadence. There never was a tight coupling between packages with the same version, and now that's made explicit.
✂ Removed from the public API
Repeated
API (#1296)- Analyzer diagnostic FakeItEasy0006, "Assertion uses legacy
Repeated
class" (#1296)
🆕 New
- ➕ Add support for calling the wrapped object's method (#1717)
- ➕ Add and remove null parameter checks (#1686, #1708)
- 👻 Fall back to other formatters when
IArgumentValueFormatter.GetArgumentValueAsString
throws an exception or returns null (#1690) - ➕ Add
ArgumentConstraintManagerExtensions.Contains
overload that takes aStringComparison
(#1681)
🛠 Fixed
- 🛠 Fix
Contains
string argument constraint, once again usingStringComparison.Ordinal
(accidentally switched toStringComparison.CurrentCulture
in release5.4.0) (#1748)
➕ Additional Items
- Switch to SourceLink instead of PdbGit (#1417)
- 📦 Re-enable package analysis (#1661)
- 🚀 Refactored issue number parsing in release notes (#1679)
- ➕ Added TestHelpers to solution (#1679)
- 🛠 Fixed up some whitespace (#1679)
- 👌 Support building the project on Linux (and maybe MacOS) (#1605)
- ➕ Add target to approve new public API (#1684)
- ➕ Add targets to create and manage FakeItEasy.user.props (#1688)
- ✅ Suppress logo when testing and packing (#1692)
- 🚀
prepare_release
tool should handle support branches (#1698) - ✅ Enable nullability warnings in internal, testing, and tools code (#1613, #1691)
- 🚀 Externalize PrepareRelease and Deploy tools (#1739)
- ➕ Add missing assembly attributes and remove unnecessary ones (#1744)
- 🚀 Create a bot account for release process automation (#1663)
- ⚡️ Update tools submodule to FakeItEasy/FakeItEasy.Tools@f6eaae9 (#1745)
- ⬆️ Upgrade supporting tools:
- FluentAssertions 5.9.0 (#1733)
- Microsoft.CodeAnalysis.FxCopAnalyzers 2.9.8 (#1732)
- Microsoft.NET.Test.Sdk 16.2.0 (#1733)
- Microsoft.SourceLink.GitHub 1.0.0 (#1731)
- mkdocs 1.0.4, via Read the Docs (#1743)
- PublicApiGenerator 10.0.1 (#1728, #1733)
- StyleCop.Analyzers 1.2.0-beta.113 (#1730)
- Xbehave.Core 2.4.1 (#1733)
- XunitXml.TestLogger 2.1.26 (#1733)
- xunit.core 2.4.1 (#1733)
- xunit.runner.visualstudio 2.4.1 (#1733)
🚀 With special thanks for contributions to this release from:
- Elijah Newren - @newren, whose git-filter-repo was instrumental in extracting the analyzer code from the main FakeItEasy repo
- Tim Lovell-Smith @TimLovellSmith
-
v6.0.0-beta.1 Changes
December 19, 2019🔄 Changed
- 🔀 Stop merging Castle.Core (#1258)
- 🔦 Expose nullability annotations (#1613)
- 🏗 Limit typeparams for Fake options and builder classes (#1664)
- Resolve Dummy Lazy values lazily (#1656)
- 📇 Rename
scope
parameter tomanager
inArgumentConstraintManagerExtensions
methods (#1687) - 🚚 Move analyzers from the main FakeItEasy repository to the FakeItEasy/FakeItEasy.Analyzers repository (#1735)
- The Analyzers and the main FakeItEasy package will now release on their own cadence. There never was a tight coupling between packages with the same version, and now that's made explicit.
✂ Removed from the public API
Repeated
API (#1296)- Analyzer diagnostic FakeItEasy0006, "Assertion uses legacy
Repeated
class" (#1296)
🆕 New
- ➕ Add support for calling the wrapped object's method (#1717)
- ➕ Add and remove null parameter checks (#1686, #1708)
- 👻 Fall back to other formatters when
IArgumentValueFormatter.GetArgumentValueAsString
throws an exception or returns null (#1690)
🛠 Fixed
➕ Additional Items
- Switch to SourceLink instead of PdbGit (#1417)
- 📦 Re-enable package analysis (#1661)
- 🚀 Refactored issue number parsing in release notes (#1679)
- ➕ Added TestHelpers to solution (#1679)
- 🛠 Fixed up some whitespace (#1679)
- 👌 Support building the project on Linux (and maybe MacOS) (#1605)
- ➕ Add target to approve new public API (#1684)
- ➕ Add targets to create and manage FakeItEasy.user.props (#1688)
- ✅ Suppress logo when testing and packing (#1692)
- 🚀
prepare_release
tool should handle support branches (#1698) - ✅ Enable nullability warnings in internal, testing, and tools code (#1613, #1691)
- 🚀 Externalize PrepareRelease and Deploy tools (#1739)
- ➕ Add missing assembly attributes and remove unnecessary ones (#1744)
- 🚀 Create a bot account for release process automation (#1663)
- ⚡️ Update tools submodule to FakeItEasy/FakeItEasy.Tools@f6eaae9 (#1745)
- ⬆️ Upgrade supporting tools:
- FluentAssertions 5.9.0 (#1733)
- Microsoft.CodeAnalysis.FxCopAnalyzers 2.9.8 (#1732)
- Microsoft.NET.Test.Sdk 16.2.0 (#1733)
- Microsoft.SourceLink.GitHub 1.0.0 (#1731)
- mkdocs 1.0.4, via Read the Docs (#1743)
- PublicApiGenerator 10.0.1 (#1728, #1733)
- StyleCop.Analyzers 1.2.0-beta.113 (#1730)
- Xbehave.Core 2.4.1 (#1733)
- XunitXml.TestLogger 2.1.26 (#1733)
- xunit.core 2.4.1 (#1733)
- xunit.runner.visualstudio 2.4.1 (#1733)
🚀 With special thanks for contributions to this release from:
- Elijah Newren - @newren, whose git-filter-repo was instrumental in extracting the analyzer code from the main FakeItEasy repo
- Tim Lovell-Smith @TimLovellSmith
-
v5.5.0 Changes
November 25, 2019🆕 New
Fake.TryGetFakeManager
andFake.IsFake
methods (#1709)
🚀 With special thanks for contributions to this release from:
- Asger Hallas - @asgerhallas
-
v5.4.1 Changes
November 14, 2019🛠 Fixed
- ReturnValue not set on completed call returned from
Fake.GetCalls
(#1696)
- ReturnValue not set on completed call returned from
-
v5.4.0 Changes
October 23, 2019🔄 Changed
🆕 New
Now targets netstandard2.1, as well as all the old favorites (#1658)
✨ Enhanced support for
ValueTask
andValueTask<TResult>
, comparable to that forTask
andTask<TResult>
(#1658):- a
ValueTask
Dummy is an actual completedValueTask
- a
ValueTask<TResult>
Dummy is an actualValueTask<TResult>
that is already completed and whoseResult
is a Dummy of typeTResult
, or a defaultTResult
if no Dummy can be made forTResult
- unconfigured Fake methods that accept a cancellation token and return a
ValueTask
(orValueTask<T>
) will return a cancelled task object - new convenience overloads for configuring Fake methods that return
ValueTask
orValueTask<T>
:Returns
andReturnsLazily
let you specify a value rather than a task, which configures a method to return a completed task whose result is the specified valueThrowsAsync
lets you configure a method to return a failed task whoseException
property is set to the given exception
📦 If your test project targets a framework compatible with .NET Standard 2.1 or higher, these last two features are available in the FakeItEasy package itself. Otherwise, you can access them by referencing the new FakeItEasy.Extensions.ValueType NuGet package.
Analyzers now target .NET Standard 2.0 (#1667)
➕ Additional Items
- a
-
v5.3.0 Changes
October 16, 2019🆕 New
- 👉 Make Dummy
ValueTuple
s' members Dummies, to matchTuple
(#1637) - Detect and reject an "argument constraint factory method" that produces multiple constraints (#1628)
🛠 Fixed
- 👻 Stack overflow exception when concurrently creating two Dummies of a type that takes a parameter of its own type (#1639)
- Fakes that wrap another object are not considered to be equal to themselves (#1630)
- 👻 Exception thrown from argument constraint factory prevents detection of misused
A<T>._
,A<T>.Ignored
, orA<T>.That
(#1644) - 👻 Exception thrown by argument constraint factory is wrapped in
TargetInvocationException
, notUserCallbackException
(#1646) - Exceptions thrown by "action" callbacks are wrapped in
UserCallbackException
(#1640)
➕ Additional Items
- 🏗 Build requires Visual Studio 2019 or Visual Studio Build Tools 2019, and tests now run against netcoreapp3.0 (#1632)
- ➕ Add parentheses to test method in quickstart (#1621)
- ⚠ Pre-reduce nullable warnings (#1620)
- Check for nullity using
is null
oris object
(#1624) - Protect out and ref parameters value producer (#1625)
- Simplify type checking in
AnyCallRule
(#1626) - 📦 Embed FakeItEasy icon in package (#1627)
- 🚀 GitHub API calls fail during deployment (#1618)
- 🛠 Fix capitalization of .NET in docs (#1653)
- ⚡️ Updated build tools (#1631, #1655)
- Bullseye 3.0.0
- SimpleExec 6.1.0
- MinVer 2.0.0
- 🚀 Automatically add "this change has been released" note to issues (#1652)
- 👉 Make wording consistent in
DummyCreationSpecs
and don't useA.Dummy
directly (#1659)
🚀 With special thanks for contributions to this release from:
- Soheil Alizadeh - @xsoheilalizadeh
- Jonathan - @vanillajonathan
- Tim Lovell-Smith - @TimLovellSmith
- Martin Odhelius - @twilek
- Adam Ralph - @adamralph
- 👉 Make Dummy