Skip to content

chore(deps): update dependency benchmarkdotnet to 0.15.8#258

Open
renovate[bot] wants to merge 1 commit intomasterfrom
renovate/benchmarkdotnet-0.x
Open

chore(deps): update dependency benchmarkdotnet to 0.15.8#258
renovate[bot] wants to merge 1 commit intomasterfrom
renovate/benchmarkdotnet-0.x

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Dec 9, 2025

This PR contains the following updates:

Package Change Age Confidence
BenchmarkDotNet 0.13.80.15.8 age confidence

Release Notes

dotnet/BenchmarkDotNet (BenchmarkDotNet)

v0.15.8: BenchmarkDotNet v0.15.8

This release adds OpenMetrics exporter support for Prometheus-compatible metrics export, improves the Roslyn analyzers with multi-target support and better type checking, and fixes several bugs including process deadlocks and WASM trimming issues.

Features

  • Add OpenMetrics exporter for Prometheus-compatible metrics output (#​2801)
  • Add Job info to DisassemblyDiagnoser report headers to distinguish assemblies when using multiple coreruns (#​2884, fixes #​2573)
  • Add NO_COLOR environment variable support for disabling console colors (#​2870)

Improvements

  • Multi-target analyzers with improved type assignability checking using semantic model (#​2866)
  • Add new analyzer diagnostic BDN1503 for better argument/params validation (#​2865, fixes #​2864)
  • Use PolySharp for [DynamicallyAccessedMembers] attribute polyfill (#​2883)
  • Refactor to use AsyncProcessOutputReader for cleaner process output handling (#​2878)

Bug Fixes

  • Fix process deadlock issue when reading process output (#​2877)
  • Fix WASM generated project being trimmed out (#​2872)
  • Allow filters to filter out every benchmark from a type without errors (#​2879, fixes #​2860)
  • Fix unhandled exception when running BenchmarkRunner.Run<T>() with arguments on invalid benchmark type (#​2880, fixes #​2724)

Internal

  • Update release workflow for analyzers (#​2882)
  • Improve docs building workflow
  • Cleanup #if-#endif preprocessor directives using PolySharp polyfills (#​2881)

Full Changelog: dotnet/BenchmarkDotNet@v0.15.7...v0.15.8

v0.15.7: BenchmarkDotNet v0.15.7

This release introduces Roslyn analyzers to catch incorrect BenchmarkDotNet usage at compile time, improves .NET Framework version detection, and updates OS detection support.

Features

  • Add Roslyn analyzers to detect incorrect usage of BenchmarkDotNet at compile-time (#​2837)
    • Validates benchmark class structure (public, non-sealed, generic constraints)
    • Checks [Arguments], [Params], and [ParamsAllValues] attribute usage
    • Verifies [GenericTypeArguments] requirements
    • Ensures only one baseline method per category
    • Validates BenchmarkRunner.Run invocations

Improvements

  • Improve .NET Framework version detection by retrieving version from TargetFrameworkAttribute (#​2682)
  • Bump Perfolizer 0.6.0 → 0.6.1, bringing updated Windows and macOS version detection in OsBrandHelper

Bug Fixes

  • Fix null reference handling and exception logging in TestCaseFilter for the test adapter
  • Fix flaky CI tests by increasing build timeout values (#​2854)

Internal

  • Improve release workflow in release.yaml

Full Changelog: dotnet/BenchmarkDotNet@v0.15.6...v0.15.7

v0.15.6: BenchmarkDotNet v0.15.6

v0.15.6

This release adds ref struct parameter support for [ArgumentsSource], fixes Native AOT runtime moniker resolution, and upgrades to Perfolizer 0.6.0 with the new Pragmastat statistical engine.

Features
  • Add ref struct parameter support for [ArgumentsSource] attribute, enabling Span<T> and ReadOnlySpan<char> parameters (#​2849)
Bug Fixes
  • Fix runtime moniker normalization for Native AOT targets (#​2852)
Improvements
  • Upgrade to Perfolizer 0.6.0 with Pragmastat statistical engine integration
Documentation
  • Add documentation for breaking changes related to disassembler native dependencies (#​2836)
Internal
  • Introduce GitHub Actions release workflow

Full Changelog: dotnet/BenchmarkDotNet@v0.15.5...v0.15.6

v0.15.5: 0.15.5

This release fixes job naming consistency when using --runtimes, clamps histogram bin bounds to avoid confusing negative values, and reduces output directory clutter by filtering unnecessary runtime and satellite assembly files.

Features

  • Add custom MSBuild targets to remove unnecessary files from the bin directory (#​2737)
    • Filters out Capstone native binaries for non-target platforms
    • Removes satellite assemblies from Microsoft.CodeAnalysis packages

Bug Fixes

  • Fix job names consistency between SimpleJobAttribute and --runtimes CLI option (#​2841)
    • Jobs now use runtime names as IDs consistently across all runtime monikers
  • Clamp histogram bin lower bounds to non-negative values (#​1821)
    • Prevents confusing negative values in histogram output for non-negative measurements

Internal

  • Bump Perfolizer: 0.5.3 → 0.5.4 (#​2773)
  • Update changelog and GitHub Pages generation workflows
  • Enable workflow_dispatch for test workflow (#​2835)

Full Changelog: dotnet/BenchmarkDotNet@v0.15.4...v0.15.5

v0.15.4: 0.15.4

This release fixes issues with ParamsSource attribute resolution in inheritance scenarios and corrects a MSBuild syntax error in the TestAdapter.

Bug Fixes

  • Allow [ParamsSource] to resolve overridden methods and properties in derived classes (#​2832)
  • Fix MSBuild condition syntax for TestTfmsInParallel property that prevented Visual Studio from loading projects (#​2831)

Full Changelog: dotnet/BenchmarkDotNet@v0.15.3...v0.15.4

v0.15.3: 0.15.3

This release brings .NET 10 NativeAOT instruction set support, improved CPU detection on Windows when WMIC is unavailable, test adapter filtering, and numerous bug fixes.

Breaking Changes

  • Deprecated .WithNuget() job extension in favor of .WithMsBuildArguments() (#​2812)

Features

  • Add VS Test Adapter filter support for running specific benchmarks (#​2788)
  • Update NativeAOT instruction set support for .NET 10+ (#​2828)

Improvements

  • Add PowerShell-based CPU detection fallback for Windows when WMIC is unavailable (#​2749)
  • Improve IsNetCore and IsNativeAOT detection for single-file apps without AOT (#​2799)
  • Use --nodeReuse:false for dotnet CLI commands to improve build isolation (#​2814)
  • Enable assembly signing for debug builds (#​2774)

Bug Fixes

  • Fix ArgumentsSource on external types not working if the argument type is not primitive (#​2820)
  • Fix workload warmup mode not working correctly
  • Fix EtwProfiler for file paths slightly under 260 characters (#​2808)
  • Fix console logs being output twice when using TestAdapter (#​2790)
  • Fix EventProcessor.OnEndValidationStage not being called when critical validation errors occur (#​2816)
  • Fix XmlException thrown when TextReader.Null is passed to AppConfigGenerator (#​2817)
  • Fix case sensitivity issue in NativeMemoryLogParser program name matching (#​2795)
  • Fix typo in BuildPlots.R

Internal

  • Replace StyleCop.Analyzers with unstable version for improved analysis (#​2796)
  • Add workflow to run selected tests (#​2797)
  • Fix flaky MemoryDiagnoser tests on macOS (#​2813)
  • Fix x86 disassembler tests for net462 (#​2792)
  • Split TimeConsumingBenchmark class to reduce test time
  • Update BenchmarkDotNetDiagnosers package version (#​2805)
  • Fix comment in package props about GenerateProgramFile (#​2802)

Full Changelog: dotnet/BenchmarkDotNet@v0.15.2...v0.15.3

v0.15.2: 0.15.2

Full changelog: https://benchmarkdotnet.org/changelog/v0.15.2.html

Highlights

  • The most significant update in this release is the enhanced accuracy of the memory diagnoser (#​2562). This improvement resolves the issue of incorrectly reported memory allocations (#​1542, #​2582).
  • We have introduced a new feature that allows users to sort benchmark jobs in numerical order (#​2768, #​2770).
  • Benchmark validation has been improved (#​2771).
  • An issue with non-persistent auto-generated JobId has been fixed (#​2777).

v0.15.1: 0.15.1

Full changelog: https://benchmarkdotnet.org/changelog/v0.15.1.html

Highlights

v0.15.0: 0.15.0

Full changelog: https://benchmarkdotnet.org/changelog/v0.15.0.html

v0.14.0: 0.14.0

Full changelog: https://benchmarkdotnet.org/changelog/v0.14.0.html

Highlights

  • Introduce BenchmarkDotNet.Diagnostics.dotMemory #​2549: memory allocation profile of your benchmarks using dotMemory, see @​BenchmarkDotNet.Samples.IntroDotMemoryDiagnoser
  • Introduce BenchmarkDotNet.Exporters.Plotting #​2560: plotting via ScottPlot (initial version)
  • Multiple bugfixes
  • The default build toolchains have been updated to pass IntermediateOutputPath, OutputPath, and OutDir properties to the dotnet build command. This change forces all build outputs to be placed in a new directory generated by BenchmarkDotNet, and fixes many issues that have been reported with builds. You can also access these paths in your own .csproj and .props from those properties if you need to copy custom files to the output.

Bug fixes

  • Fixed multiple build-related bugs including passing MsBuildArguments and .Net 8's UseArtifactsOutput.

Breaking Changes

  • DotNetCliBuilder removed retryFailedBuildWithNoDeps constructor option.
  • DotNetCliCommand removed RetryFailedBuildWithNoDeps property and BuildNoRestoreNoDependencies() and PublishNoBuildAndNoRestore() methods (replaced with PublishNoRestore()).

v0.13.12: 0.13.12

Full changelog: https://benchmarkdotnet.org/changelog/v0.13.12.html

Highlights

The biggest highlight of this release if our new VSTest Adapter, which allows to run benchmarks as unit tests in your favorite IDE!
The detailed guide can be found here.

This release also includes to a minor bug fix that caused incorrect job id generation: fixed job id generation (#​2491).

Also, the target framework in the BenchmarkDotNet templates was bumped to .NET 8.0.

v0.13.11: 0.13.11

Full changelog: https://benchmarkdotnet.org/changelog/v0.13.11.html

In the v0.13.11 scope, 4 issues were resolved and 8 pull requests were merged. This release includes 28 commits by 7 contributors.

Resolved issues (4)

  • #​2060 NativeAOT benchmark started from .Net Framework host doesn't have all intrinsics enabled (assignee: @​adamsitnik)
  • #​2233 Q: Include hardware counters in XML output (assignee: @​nazulg)
  • #​2388 Include AVX512 in listed HardwareIntrinsics
  • #​2463 Bug. Native AOT .NET 7.0 doesn't work. System.NotSupportedException: X86Serialize (assignee: @​adamsitnik)

Merged pull requests (8)

Commits (28)

Contributors (7)

Thank you very much!

v0.13.10: 0.13.10

Full changelog: https://benchmarkdotnet.org/changelog/v0.13.10.html

Highlights

Initial support of .NET 9 and minor bug fixes.

Details

In the v0.13.10 scope,
2 issues were resolved and 3 pull requests were merged.
This release includes 10 commits by 4 contributors.

Resolved issues (2)

Merged pull requests (3)

Commits (10)

Contributors (4)

Thank you very much!

v0.13.9: 0.13.9

Full changelog: https://benchmarkdotnet.org/changelog/v0.13.9.html

In the v0.13.9 scope, 3 issues were resolved and 7 pull requests were merged. This release includes 26 commits by 5 contributors.

Resolved issues (3)

Merged pull requests (7)

Commits (26)

Contributors (5)

Thank you very much!


Configuration

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

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

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.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants