Skip to content

Releases: coverlet-coverage/coverlet

v10.0.0

17 Apr 13:26
3965a84

Choose a tag to compare

Improvements

  • Unique Report Filenames (coverlet.MTP and AzDO) #1866
  • Add --coverlet-file-prefix option for unique report files #1869
  • Introduce .NET 10 support #1823

Fixed

  • Fix [BUG] Wrong branch rate on IAsyncEnumerable for generic type #1836
  • Fix [BUG] Missing Coverage after moving to MTP #1843
  • Fix [BUG] No coverage reported when targeting .NET Framework with 8.0.1 #1842
  • Fix [BUG] Behavior changes between MTP and Legacy (msbuild) #1878
  • Fix [BUG] Coverlet.MTP - Unable to load coverlet.mtp.appsettings.json #1880
  • Fix [BUG] Coverlet.Collector produces empty report when Mediator.SourceGenerator is referenced #1718 by https://github.com/yusyd
  • Fix [BUG] Crash during instrumentation (Methods using LibraryImport/DllImport have no body) #1762

Maintenance

  • Add comprehensive async method tests and documentation for issue #1864
  • Replace Tmds.ExecFunction Package in coverlet.core.coverage.tests #1833
  • Add net9.0 and net10.0 targets #1822

Diff between 8.0.1 and 10.0.0

v8.0.1

17 Mar 08:31

Choose a tag to compare

Fixed

  • Fix [BUG] TypeInitializationException when targeting .NET Framework #1818
  • Fix [BUG] coverlet.MTP build fails with CS0400 due to developmentDependency=true #1827

Improvements

  • Additional improvements needed for .NET Framework instrumentation type import #1825

Diff between 8.0.0 and 8.0.1

v8.0.0

14 Feb 23:59
4492648

Choose a tag to compare

Special Thanks: A huge thank you to @Bertk for driving the majority of the work in this release! 🎉

Fixed

Improvements

  • Coverlet MTP extension feature #1788
  • Generate SBOM for nuget packages #1752
  • Use multi targets projects for coverlet.collector, coverlet.msbuild.tasks packages #1742
  • Use .NET 8.0 target framework for coverlet.core and remove Newtonsoft.Json #1733
  • Use latest System.CommandLine version #1660
  • Upgraded minimum required .NET SDK and runtime to .NET 8.0 LTS (Long Term Support) (Breaking Change)
  • Use xunit.v3 for tests and example code

Diff between 6.0.4 and 8.0.0

v6.0.4

19 Jan 23:36

Choose a tag to compare

Fixed

  • Fix empty coverage report when using include and exclude filters #1726

Diff between 6.0.3 and 6.0.4

v6.0.3

31 Dec 00:03
fc40a26

Choose a tag to compare

Fixed

Improvements

  • Cache the regex used in InstrumentationHelper #1693
  • Enable dotnetTool integration tests for linux #660

Diff between 6.0.2 and 6.0.3

v6.0.2

13 Mar 00:19
04ba205

Choose a tag to compare

Fixed

  • Threshold-stat triggers error #1634
  • Fixed coverlet collector 6.0.1 requires dotnet sdk 8 #1625
  • Type initializer errors after updating from 6.0.0 to 6.0.1 #1629
  • Exception when multiple exclude-by-attribute filters specified #1624

Improvements

  • More concise options to specify multiple parameters in coverlet.console #1624

Diff between 6.0.1 and 6.0.2

v6.0.1

19 Feb 17:04
440a26a

Choose a tag to compare

Fixed

  • Uncovered lines in .NET 8 for inheriting records #1555
  • Fix record constructors not covered when SkipAutoProps is true #1561
  • Fix .NET 7 Method Group branch coverage issue #1447
  • Fix ExcludeFromCodeCoverage does not exclude method in a partial class #1548
  • Fix ExcludeFromCodeCoverage does not exclude F# task #1547
  • Fix issues where ExcludeFromCodeCoverage ignored #1431
  • Fix issues with ExcludeFromCodeCoverage attribute #1484
  • Fix broken links in documentation #1514
  • Fix problem with coverage for .net5 WPF application #1221 by https://github.com/lg2de
  • Fix unable to instrument module for Microsoft.AspNetCore.Mvc.Razor #1459 by https://github.com/lg2de

Improvements

Diff between 6.0.0 and 6.0.1

v6.0.0

21 May 13:27
6427ae3

Choose a tag to compare

Fixed
-Could not write lines to file CoverletSourceRootsMapping - in use by another process #1155
-Incorrect coverage for methods returning IAsyncEnumerable in generic classes #1383
-Wrong branch coverage for async methods .NET Standard 1.x #1376
-Empty path exception in visual basic projects #775
-Align published nuget package version to github release version #1413
-Sync nuget and github release versions #1122

Improvements
-Migration of the project to .NET 6.0 #1473

Breaking changes
New parameter ExcludeAssembliesWithoutSources to control automatic assembly exclusion #1164. The parameter InstrumentModulesWithoutLocalSources has been removed. since it can be handled by setting ExcludeAssembliesWithoutSources to None.
The default heuristics for determining whether to instrument an assembly has been changed. In previous versions any missing source file was taken as a signal that it was a third-party project that shouldn't be instrumented, with exceptions for some common file name patterns for source generators. Now only assemblies where no source files at all can be found are excluded from instrumentation, and the code for detecting source generator files have been removed. To get back to the behaviour that at least one missing file is sufficient to exclude an assembly, set ExcludeAssembliesWithoutSources to MissingAny, or use assembly exclusion filters for more fine-grained control.

Diff between 3.2.0 and 6.0.0

v5.8.0

29 Oct 15:24
e2c9d84

Choose a tag to compare

Fixed

-Fix TypeLoadException when referencing Microsoft.Extensions.DependencyInjection v6.0.1 #1390
-Source Link for code generators fails #1322
-Await foreach has wrong branch coverage when method is generic #1210
-ExcludeFromCodeCoverage attribute on local functions ignores lambda expression #1302

Added

-Added InstrumentModulesWithoutLocalSources setting #1360 by @TFTomSun

Diff between 3.1.2 and 3.2.0

v5.7.2

06 Feb 16:42
1e74dd4

Choose a tag to compare

Fixed
-Fix CoreLib's coverage measurement is broken #1286
-Fix UnloadModule injection 1291

Diff between 3.1.1 and 3.1.2