Skip to content

Releases: petabridge/NBench

NBench v2.0.1

25 Feb 15:30
e80dc57
Compare
Choose a tag to compare

v2.0.1 February 25 2020

NBench 2.0.0 is a major departure from NBench 1.2 and preceding versions, and these changes were done in order to support NBench's future as a cutting-edge, cross-platform performance testing and macro benchmarking framework:

  • dotnet nbench and NBench.Runner are both now deprecated - NBench is now run from directly inside a console application created by end-users. This makes it easier to configure, debug, and create benchmarks on new .NET Core platforms without having to wait for additional instrumentation or tooling from NBench itself.
  • NBench no longer supports .NET Framework explicitly; moving forward NBench will only support .NET Standard 2.0 and later (.NET Framework 4.6.1 and greater or .NET Core 2.0 and greater.)
  • We've added a new documentation website for NBench: https://nbench.io/
  • NBench now supports configuration as code through the TestPackage class.

For a full set of changes, please see the NBench 2.0.0 milestone on Github.


2.0.1 Notes:

  • Fixed error with setting thread priority on Linux;
  • Fixed NuGet symbol publication;
  • And more.

For a full set of changes, please see the NBench 2.0.1 milestone on Github.

Changes:

This list of changes was auto generated.

NBench v2.0.0 Release

24 Feb 21:02
42f6394
Compare
Choose a tag to compare

v2.0.0 February 24 2020

NBench 2.0.0 is a major departure from NBench 1.2 and preceding versions, and these changes were done in order to support NBench's future as a cutting-edge, cross-platform performance testing and macro benchmarking framework:

  • dotnet nbench and NBench.Runner are both now deprecated - NBench is now run from directly inside a console application created by end-users. This makes it easier to configure, debug, and create benchmarks on new .NET Core platforms without having to wait for additional instrumentation or tooling from NBench itself.
  • NBench no longer supports .NET Framework explicitly; moving forward NBench will only support .NET Standard 2.0 and later (.NET Framework 4.6.1 and greater or .NET Core 2.0 and greater.)
  • We've added a new documentation website for NBench: https://nbench.io/
  • NBench now supports configuration as code through the TestPackage class.

For a full set of changes, please see the NBench 2.0.0 milestone on Github.

NBench v1.2.2 Production Release

24 Jul 22:13
3225434
Compare
Choose a tag to compare

NBench v1.2.1 Production Release

11 Jul 12:41
7fdcbca
Compare
Choose a tag to compare

v1.2.1 July 11 2018

Fixed an issue with the dotnet-nbench package where it missed a required runtime in order to execute against .NET Core 2.* projects.

NBench v1.2 Production Release

10 Jul 22:17
91f604a
Compare
Choose a tag to compare

v1.2.0 July 10 2018

Introduces the dotnet-nbench package, which allows all NBench packages to be executed via the dotnet CLI regardless of how many frameworks are targeted by a particular project.

You can read more about the details of how the dotnet-nbench package works here: https://github.com/Petabridge/NBench/blob/master/README.md#running-nbench-tests-with-dotnet-nbench

Support for .NET Core 2.0 and 2.1
All NBench runners now ship with native support for .NET Core 2.0 and .NET Core 2.1.

NBench v1.1 Production Release

02 Jul 04:11
f0b3f8c
Compare
Choose a tag to compare

v1.1.0 July 1 2018

Fixes several major issues with the NBench.Runner executable and being able to support .NET Core dependencies. This is the first set of fixes in a series of ongoing changes designed to help make NBench more user-friendly, extensible, and capable of all manner of interesting performance-related tasks.

New Feature: Explicitly Settable Counters
Counter instances can now be explicitly set to increment or decrement by a known value:

var counter = new Counter(new AtomicCounter(), new CounterMetricName("foo"));
counter.Increment(10);
counter.Decrement(2);
Console.WriteLine(counter.Current); // will print out 8

Read the full set of changes in NBench v1.1 here.

NBench v1.0.4 Stable Release

16 Jun 18:38
Compare
Choose a tag to compare

v1.0.4 June 14 2017

This release resolves an issue with NuGet deployment of our .NET Core versions of the NBench.Runner executable. As a standalone .NET Core executable, the .NET Core runtime must be packaged in the same folder as the .exe. This release ensures that the .NET Core runtime is downloaded along with our .NET Core NBench Runner executables.

NBench v1.0.3 Stable Release

16 Jun 18:34
Compare
Choose a tag to compare

v1.0.3 June 7 2017

This release resolves issues with NuGet deployment of the dedicated NBench.Runner.DotNetCli runner that was originally designed to be used for .NET Core projects. The issue is detailed by #200 and resolved with PR #201.

Important breaking change:

NBench.Runner.DotNetCli is being deprecated (temporarily) as the supported means of running the NBench runner with a benchmark assembly that targets .NET Core. Instead, the original NBench.Runner will come packaged with 2 additional executables that are compatible with .NET Core. Originally, per the instructions on the README, to run the .NET 4.5.2 you would run the following commands:

PS> Install-Package NBench.Runner
PS> .\packages\NBench.Runner\NBench.Runner.exe .\src\bin\Debug\MyPerfTests.dll output-directory="C:\Perf

Since the new NBench.Runner NuGet package ships the additional .NET Core runner, the folder structure of the downloaded runner is as follows:

lib/
    net452/
        NBench.Runner.exe
    netcoreapp1.1/
        win7-x64/
            NBench.Runner.exe
        debian8-x64/
            NBench.Runner

The above way to run the .NET 4.5.2 runner, hence, changes to:

PS> Install-Package NBench.Runner
PS> .\packages\NBench.Runner\lib\net452\NBench.Runner.exe .\src\bin\Debug\net452\MyPerfTests.dll output-directory="C:\Perf

For .NET Core support (meaning running a benchmark that has been targeted for netcoreapp1.1 or netstandard1.6, you will run the appropriate NBench.Runner.exe for your architecture:

PS> Install-Package NBench.Runner
PS> .\packages\NBench.Runner\lib\netcoreapp1.1\win7-x64\NBench.Runner.exe .\src\bin\Debug\netcoreapp1.1\MyPerfTests.dll output-directory="C:\Perf

or, on Debian 8:

PS> Install-Package NBench.Runner
PS> .\packages\NBench.Runner\lib\netcoreapp1.1\debian8-x64\NBench.Runner.exe .\src\bin\Debug\netcoreapp1.1\MyPerfTests.dll output-directory="C:\Perf

Plans will be made to re-introduce support for NBench.Runner.DotNetCli which allows for the usage of NBench as a DotNetCliToolReference.

NBench v1.0.2 Stable Release

02 Jun 15:10
Compare
Choose a tag to compare

v1.0.2 May 31 2017

This release resolves issues: #182 and #192 relating to the NBench.Runner.DotNetCli (the NBench Runner that can execute benchmarks for assemblies that target .NET Core). The root cause was that the runner was unable to execute .NET Core benchmarks that had external dependencies.

Other changes include:

  • Integration tests to validate that the above issue is resolved
  • Upgrade to xUnit .NET Core CLI runner (v2.3.0-beta2-build3683) for all NBench unit tests
  • Update .NET Core runtime targets to netcoreapp1.1

If you are using the .NET Core CLI runner for NBench and encountered this issue, please be sure to update your <DotNetCliToolReference> to v1.0.2:

<ItemGroup>
  <DotNetCliToolReference Include="NBench.Runner.DotNetCli" Version="1.0.2" />
</ItemGroup>

NBench v1.0.1 Stable Release

31 Mar 15:03
Compare
Choose a tag to compare

v1.0.1 March March 29 2017

This release resolves an issue with the v1.0.0 NuGet release for NBench.Runner in which clients installing the package via Install-Package NBench.Runner were not getting the NBench.dll dependency for NBench.Runner.exe. NBench.dll is now compiled into NBench.Runner.exe.