mawosoft / Mawosoft.Extensions.BenchmarkDotNet

An extensions library for BenchmarkDotNet
https://mawosoft.github.io/Mawosoft.Extensions.BenchmarkDotNet/
MIT License
0 stars 0 forks source link

Breaking changes in BDN-nightly #27

Closed mawosoft closed 2 years ago

mawosoft commented 2 years ago

Various breaking changes in the public API of BDN between official release 0.13.1 and current CI/nightly build can cause problems, e.g. changed ctors for BenchmarkAttribute and BenchmarkReport.

Also research possible cases where we use the internal/private API via reflection.

As a starting point, see: https://devblogs.microsoft.com/dotnet/package-validation/ https://github.com/mattleibow/Mono.ApiTools.NuGetDiff

mawosoft commented 2 years ago

0.13.1.1696 vs 0.13.1.0

BenchmarkDotNet.dll.diff # API diff: BenchmarkDotNet.dll ## BenchmarkDotNet.dll > Assembly Version Changed: 0.13.1.1696 vs 0.13.1.0 ### Namespace BenchmarkDotNet.Columns #### Type Changed: BenchmarkDotNet.Columns.BaselineCustomColumn Modified properties: ```diff public virtual ---final--- ColumnCategory Category { get; } ``` #### Type Changed: BenchmarkDotNet.Columns.UnitType Added value: ```csharp CodeSize = 3, ``` #### New Type: BenchmarkDotNet.Columns.BaselineAllocationRatioColumn ```csharp public class BaselineAllocationRatioColumn : BenchmarkDotNet.Columns.BaselineCustomColumn, IColumn { // constructors public BaselineAllocationRatioColumn (); // properties public override ColumnCategory Category { get; } public override string ColumnName { get; } public override string Id { get; } public override bool IsNumeric { get; } public override string Legend { get; } public override int PriorityInCategory { get; } public override UnitType UnitType { get; } // methods public override string GetValue (BenchmarkDotNet.Reports.Summary summary, BenchmarkDotNet.Running.BenchmarkCase benchmarkCase, BenchmarkDotNet.Mathematics.Statistics baseline, System.Collections.Generic.IReadOnlyDictionary baselineMetrics, BenchmarkDotNet.Mathematics.Statistics current, System.Collections.Generic.IReadOnlyDictionary currentMetrics, bool isBaseline); } ``` ### Namespace BenchmarkDotNet.Configs #### Type Changed: BenchmarkDotNet.Configs.DebugConfig Added property: ```csharp public virtual System.TimeSpan BuildTimeout { get; } ``` #### Type Changed: BenchmarkDotNet.Configs.DefaultConfig Added property: ```csharp public virtual System.TimeSpan BuildTimeout { get; } ``` #### Type Changed: BenchmarkDotNet.Configs.IConfig Added property: ```csharp public virtual System.TimeSpan BuildTimeout { get; } ``` #### Type Changed: BenchmarkDotNet.Configs.ImmutableConfig Added property: ```csharp public virtual System.TimeSpan BuildTimeout { get; } ``` #### Type Changed: BenchmarkDotNet.Configs.ManualConfig Added property: ```csharp public override System.TimeSpan BuildTimeout { get; set; } ``` Added method: ```csharp public ManualConfig WithBuildTimeout (System.TimeSpan buildTimeout); ``` ### Namespace BenchmarkDotNet.ConsoleArguments #### Type Changed: BenchmarkDotNet.ConsoleArguments.CommandLineOptions Removed property: ```csharp public System.IO.FileInfo WasmMainJs { get; set; } ``` ### Namespace BenchmarkDotNet.Diagnosers #### Type Changed: BenchmarkDotNet.Diagnosers.DiagnoserResults Removed constructor: ```csharp public DiagnoserResults (BenchmarkDotNet.Running.BenchmarkCase benchmarkCase, long totalOperations, BenchmarkDotNet.Engines.GcStats gcStats, BenchmarkDotNet.Engines.ThreadingStats threadingStats, BenchmarkDotNet.Toolchains.Results.BuildResult buildResult); ``` Added constructor: ```csharp public DiagnoserResults (BenchmarkDotNet.Running.BenchmarkCase benchmarkCase, BenchmarkDotNet.Toolchains.Results.ExecuteResult executeResult, BenchmarkDotNet.Toolchains.Results.BuildResult buildResult); ``` ### Namespace BenchmarkDotNet.Environments #### Type Changed: BenchmarkDotNet.Environments.CoreRtRuntime Added field: ```csharp public static CoreRtRuntime CoreRt70; ``` #### Type Changed: BenchmarkDotNet.Environments.CoreRuntime Added field: ```csharp public static CoreRuntime Core70; ``` #### Type Changed: BenchmarkDotNet.Environments.WasmRuntime Removed constructor: ```csharp public WasmRuntime (System.IO.FileInfo mainJs, string msBuildMoniker, string displayName, string javaScriptEngine, string javaScriptEngineArguments, bool aot, System.IO.DirectoryInfo runtimeSrcDir); ``` Added constructor: ```csharp public WasmRuntime (string msBuildMoniker, string displayName, string javaScriptEngine, string javaScriptEngineArguments, bool aot, System.IO.DirectoryInfo runtimeSrcDir); ``` Removed property: ```csharp public System.IO.FileInfo MainJs { get; } ``` ### Namespace BenchmarkDotNet.Jobs #### Type Changed: BenchmarkDotNet.Jobs.EnvironmentMode Modified fields: ```diff -public readonly BenchmarkDotNet.Characteristics.Characteristic PowerPlanModeCharacteristic; +public readonly BenchmarkDotNet.Characteristics.Characteristic> PowerPlanModeCharacteristic; ``` Modified properties: ```diff -public System.Guid PowerPlanMode { get; set; } +public System.Guid? PowerPlanMode { get; set; } ``` ### Namespace BenchmarkDotNet.Order #### Type Changed: BenchmarkDotNet.Order.DefaultOrderer Removed methods: ```csharp public virtual System.Collections.Generic.IEnumerable GetExecutionOrder (System.Collections.Immutable.ImmutableArray benchmarkCases); public virtual System.Collections.Generic.IEnumerable> GetLogicalGroupOrder (System.Collections.Generic.IEnumerable> logicalGroups); ``` Added methods: ```csharp public virtual System.Collections.Generic.IEnumerable GetExecutionOrder (System.Collections.Immutable.ImmutableArray benchmarkCases, System.Collections.Generic.IEnumerable order); public virtual System.Collections.Generic.IEnumerable> GetLogicalGroupOrder (System.Collections.Generic.IEnumerable> logicalGroups, System.Collections.Generic.IEnumerable order); ``` #### Type Changed: BenchmarkDotNet.Order.IOrderer Removed methods: ```csharp public virtual System.Collections.Generic.IEnumerable GetExecutionOrder (System.Collections.Immutable.ImmutableArray benchmarksCase); public virtual System.Collections.Generic.IEnumerable> GetLogicalGroupOrder (System.Collections.Generic.IEnumerable> logicalGroups); ``` Added methods: ```csharp public virtual System.Collections.Generic.IEnumerable GetExecutionOrder (System.Collections.Immutable.ImmutableArray benchmarksCase, System.Collections.Generic.IEnumerable order); public virtual System.Collections.Generic.IEnumerable> GetLogicalGroupOrder (System.Collections.Generic.IEnumerable> logicalGroups, System.Collections.Generic.IEnumerable order); ``` ### Namespace BenchmarkDotNet.Properties #### Type Changed: BenchmarkDotNet.Properties.BenchmarkDotNetInfo Modified fields: ```diff -public const string PrereleaseLabel = ""; +public const string PrereleaseLabel = "-nightly"; ``` ### Namespace BenchmarkDotNet.Reports #### Type Changed: BenchmarkDotNet.Reports.BenchmarkReport Removed constructor: ```csharp public BenchmarkReport (bool success, BenchmarkDotNet.Running.BenchmarkCase benchmarkCase, BenchmarkDotNet.Toolchains.Results.GenerateResult generateResult, BenchmarkDotNet.Toolchains.Results.BuildResult buildResult, System.Collections.Generic.IReadOnlyList executeResults, System.Collections.Generic.IReadOnlyList allMeasurements, BenchmarkDotNet.Engines.GcStats gcStats, System.Collections.Generic.IReadOnlyList metrics); ``` Added constructor: ```csharp public BenchmarkReport (bool success, BenchmarkDotNet.Running.BenchmarkCase benchmarkCase, BenchmarkDotNet.Toolchains.Results.GenerateResult generateResult, BenchmarkDotNet.Toolchains.Results.BuildResult buildResult, System.Collections.Generic.IReadOnlyList executeResults, System.Collections.Generic.IReadOnlyList metrics); ``` #### Type Changed: BenchmarkDotNet.Reports.Measurement Removed method: ```csharp public static Measurement Parse (BenchmarkDotNet.Loggers.ILogger logger, string line, int processIndex); ``` Added method: ```csharp public static Measurement Parse (string line, int processIndex); ``` ### Namespace BenchmarkDotNet.Running #### Type Changed: BenchmarkDotNet.Running.BenchmarkRunner Added method: ```csharp public static BenchmarkDotNet.Reports.Summary[] Run (System.Type[] types, BenchmarkDotNet.Configs.IConfig config, string[] args); ``` #### Type Changed: BenchmarkDotNet.Running.BuildPartition Added property: ```csharp public System.TimeSpan Timeout { get; } ``` #### New Type: BenchmarkDotNet.Running.TypeFilter ```csharp public static class TypeFilter { // methods public static BenchmarkRunInfo[] Filter (BenchmarkDotNet.Configs.IConfig effectiveConfig, System.Collections.Generic.IEnumerable types); public static System.ValueTuple> GetTypesWithRunnableBenchmarks (System.Collections.Generic.IEnumerable types, System.Collections.Generic.IEnumerable assemblies, BenchmarkDotNet.Loggers.ILogger logger); } ``` ### Namespace BenchmarkDotNet.Toolchains.CoreRt #### Type Changed: BenchmarkDotNet.Toolchains.CoreRt.CoreRtToolchain Added field: ```csharp public static BenchmarkDotNet.Toolchains.IToolchain Core70; ``` ### Namespace BenchmarkDotNet.Toolchains.CoreRun #### Type Changed: BenchmarkDotNet.Toolchains.CoreRun.CoreRunPublisher Removed constructor: ```csharp public CoreRunPublisher (System.IO.FileInfo coreRun, System.IO.FileInfo customDotNetCliPath, System.TimeSpan? timeout); ``` Added constructor: ```csharp public CoreRunPublisher (System.IO.FileInfo coreRun, System.IO.FileInfo customDotNetCliPath); ``` #### Type Changed: BenchmarkDotNet.Toolchains.CoreRun.CoreRunToolchain Removed constructor: ```csharp public CoreRunToolchain (System.IO.FileInfo coreRun, bool createCopy, string targetFrameworkMoniker, System.IO.FileInfo customDotNetCliPath, System.IO.DirectoryInfo restorePath, string displayName, System.TimeSpan? timeout); ``` Added constructor: ```csharp public CoreRunToolchain (System.IO.FileInfo coreRun, bool createCopy, string targetFrameworkMoniker, System.IO.FileInfo customDotNetCliPath, System.IO.DirectoryInfo restorePath, string displayName); ``` ### Namespace BenchmarkDotNet.Toolchains.CsProj #### Type Changed: BenchmarkDotNet.Toolchains.CsProj.CsProjClassicNetToolchain Removed method: ```csharp public static BenchmarkDotNet.Toolchains.IToolchain From (string targetFrameworkMoniker, string packagesPath, System.TimeSpan? timeout); ``` Added method: ```csharp public static BenchmarkDotNet.Toolchains.IToolchain From (string targetFrameworkMoniker, string packagesPath); ``` #### Type Changed: BenchmarkDotNet.Toolchains.CsProj.CsProjCoreToolchain Added field: ```csharp public static BenchmarkDotNet.Toolchains.IToolchain NetCoreApp70; ``` ### Namespace BenchmarkDotNet.Toolchains.DotNetCli #### Type Changed: BenchmarkDotNet.Toolchains.DotNetCli.CustomDotNetCliToolchainBuilder Removed field: ```csharp protected System.TimeSpan? timeout; ``` Removed method: ```csharp public CustomDotNetCliToolchainBuilder Timeout (System.TimeSpan timeout); ``` #### Type Changed: BenchmarkDotNet.Toolchains.DotNetCli.DotNetCliBuilder Removed constructor: ```csharp public DotNetCliBuilder (string targetFrameworkMoniker, string customDotNetCliPath, System.TimeSpan? timeout); ``` Added constructor: ```csharp public DotNetCliBuilder (string targetFrameworkMoniker, string customDotNetCliPath); ``` #### Type Changed: BenchmarkDotNet.Toolchains.DotNetCli.DotNetCliPublisher Removed constructor: ```csharp public DotNetCliPublisher (string customDotNetCliPath, string extraArguments, System.Collections.Generic.IReadOnlyList environmentVariables, System.TimeSpan? timeout); ``` Added constructor: ```csharp public DotNetCliPublisher (string customDotNetCliPath, string extraArguments, System.Collections.Generic.IReadOnlyList environmentVariables); ``` #### Type Changed: BenchmarkDotNet.Toolchains.DotNetCli.NetCoreAppSettings Removed constructor: ```csharp public NetCoreAppSettings (string targetFrameworkMoniker, string runtimeFrameworkVersion, string name, string customDotNetCliPath, string packagesPath, System.TimeSpan? timeout, string customRuntimePack, string aotCompilerPath, BenchmarkDotNet.Toolchains.MonoAotLLVM.MonoAotCompilerMode aotCompilerMode); ``` Added constructor: ```csharp public NetCoreAppSettings (string targetFrameworkMoniker, string runtimeFrameworkVersion, string name, string customDotNetCliPath, string packagesPath, string customRuntimePack, string aotCompilerPath, BenchmarkDotNet.Toolchains.MonoAotLLVM.MonoAotCompilerMode aotCompilerMode); ``` Removed field: ```csharp public static System.TimeSpan DefaultBuildTimeout; ``` Added field: ```csharp public static NetCoreAppSettings NetCoreApp70; ``` Removed property: ```csharp public System.TimeSpan Timeout { get; } ``` Removed method: ```csharp public NetCoreAppSettings WithTimeout (System.TimeSpan? timeOut); ``` ### Namespace BenchmarkDotNet.Toolchains.MonoAotLLVM #### Removed Type BenchmarkDotNet.Toolchains.MonoAotLLVM.MonoAotLLVMBuilder ### Namespace BenchmarkDotNet.Toolchains.MonoWasm #### Removed Type BenchmarkDotNet.Toolchains.MonoWasm.WasmBuilder ### Namespace BenchmarkDotNet.Toolchains.Parameters #### Type Changed: BenchmarkDotNet.Toolchains.Parameters.ExecuteParameters Removed constructor: ```csharp public ExecuteParameters (BenchmarkDotNet.Toolchains.Results.BuildResult buildResult, BenchmarkDotNet.Running.BenchmarkCase benchmarkCase, BenchmarkDotNet.Running.BenchmarkId benchmarkId, BenchmarkDotNet.Loggers.ILogger logger, BenchmarkDotNet.Characteristics.IResolver resolver, BenchmarkDotNet.Diagnosers.IDiagnoser diagnoser); ``` Added constructor: ```csharp public ExecuteParameters (BenchmarkDotNet.Toolchains.Results.BuildResult buildResult, BenchmarkDotNet.Running.BenchmarkCase benchmarkCase, BenchmarkDotNet.Running.BenchmarkId benchmarkId, BenchmarkDotNet.Loggers.ILogger logger, BenchmarkDotNet.Characteristics.IResolver resolver, int launchIndex, BenchmarkDotNet.Diagnosers.IDiagnoser diagnoser); ``` Added property: ```csharp public int LaunchIndex { get; } ``` ### Namespace BenchmarkDotNet.Toolchains.Results #### Type Changed: BenchmarkDotNet.Toolchains.Results.ExecuteResult Removed constructor: ```csharp public ExecuteResult (bool foundExecutable, int? exitCode, int? processId, System.Collections.Generic.IReadOnlyList data, System.Collections.Generic.IReadOnlyList linesWithExtraOutput); ``` Added constructor: ```csharp public ExecuteResult (bool foundExecutable, int? exitCode, int? processId, System.Collections.Generic.IReadOnlyList data, System.Collections.Generic.IReadOnlyList linesWithExtraOutput, int launchIndex); ``` Removed property: ```csharp public System.Collections.Generic.IReadOnlyList Data { get; } ``` Added properties: ```csharp public System.Collections.Generic.IReadOnlyList Errors { get; } public bool IsSuccess { get; } public System.Collections.Generic.IReadOnlyList Measurements { get; } ``` Added method: ```csharp public void LogIssues (BenchmarkDotNet.Loggers.ILogger logger, BuildResult buildResult); ```
BenchmarkDotNet.dll.breaking # API diff: BenchmarkDotNet.dll ## BenchmarkDotNet.dll > Assembly Version Changed: 0.13.1.1696 vs 0.13.1.0 ### Namespace BenchmarkDotNet.ConsoleArguments #### Type Changed: BenchmarkDotNet.ConsoleArguments.CommandLineOptions Removed property: ```csharp public System.IO.FileInfo WasmMainJs { get; set; } ``` ### Namespace BenchmarkDotNet.Diagnosers #### Type Changed: BenchmarkDotNet.Diagnosers.DiagnoserResults Removed constructor: ```csharp public DiagnoserResults (BenchmarkDotNet.Running.BenchmarkCase benchmarkCase, long totalOperations, BenchmarkDotNet.Engines.GcStats gcStats, BenchmarkDotNet.Engines.ThreadingStats threadingStats, BenchmarkDotNet.Toolchains.Results.BuildResult buildResult); ``` ### Namespace BenchmarkDotNet.Environments #### Type Changed: BenchmarkDotNet.Environments.WasmRuntime Removed constructor: ```csharp public WasmRuntime (System.IO.FileInfo mainJs, string msBuildMoniker, string displayName, string javaScriptEngine, string javaScriptEngineArguments, bool aot, System.IO.DirectoryInfo runtimeSrcDir); ``` Removed property: ```csharp public System.IO.FileInfo MainJs { get; } ``` ### Namespace BenchmarkDotNet.Jobs #### Type Changed: BenchmarkDotNet.Jobs.EnvironmentMode Modified fields: ```diff -public readonly BenchmarkDotNet.Characteristics.Characteristic PowerPlanModeCharacteristic; +public readonly BenchmarkDotNet.Characteristics.Characteristic> PowerPlanModeCharacteristic; ``` Modified properties: ```diff -public System.Guid PowerPlanMode { get; set; } +public System.Guid? PowerPlanMode { get; set; } ``` ### Namespace BenchmarkDotNet.Order #### Type Changed: BenchmarkDotNet.Order.DefaultOrderer Removed methods: ```csharp public virtual System.Collections.Generic.IEnumerable GetExecutionOrder (System.Collections.Immutable.ImmutableArray benchmarkCases); public virtual System.Collections.Generic.IEnumerable> GetLogicalGroupOrder (System.Collections.Generic.IEnumerable> logicalGroups); ``` #### Type Changed: BenchmarkDotNet.Order.IOrderer Removed methods: ```csharp public virtual System.Collections.Generic.IEnumerable GetExecutionOrder (System.Collections.Immutable.ImmutableArray benchmarksCase); public virtual System.Collections.Generic.IEnumerable> GetLogicalGroupOrder (System.Collections.Generic.IEnumerable> logicalGroups); ``` ### Namespace BenchmarkDotNet.Properties #### Type Changed: BenchmarkDotNet.Properties.BenchmarkDotNetInfo Modified fields: ```diff -public const string PrereleaseLabel = ""; +public const string PrereleaseLabel = "-nightly"; ``` ### Namespace BenchmarkDotNet.Reports #### Type Changed: BenchmarkDotNet.Reports.BenchmarkReport Removed constructor: ```csharp public BenchmarkReport (bool success, BenchmarkDotNet.Running.BenchmarkCase benchmarkCase, BenchmarkDotNet.Toolchains.Results.GenerateResult generateResult, BenchmarkDotNet.Toolchains.Results.BuildResult buildResult, System.Collections.Generic.IReadOnlyList executeResults, System.Collections.Generic.IReadOnlyList allMeasurements, BenchmarkDotNet.Engines.GcStats gcStats, System.Collections.Generic.IReadOnlyList metrics); ``` #### Type Changed: BenchmarkDotNet.Reports.Measurement Removed method: ```csharp public static Measurement Parse (BenchmarkDotNet.Loggers.ILogger logger, string line, int processIndex); ``` ### Namespace BenchmarkDotNet.Toolchains.CoreRun #### Type Changed: BenchmarkDotNet.Toolchains.CoreRun.CoreRunPublisher Removed constructor: ```csharp public CoreRunPublisher (System.IO.FileInfo coreRun, System.IO.FileInfo customDotNetCliPath, System.TimeSpan? timeout); ``` #### Type Changed: BenchmarkDotNet.Toolchains.CoreRun.CoreRunToolchain Removed constructor: ```csharp public CoreRunToolchain (System.IO.FileInfo coreRun, bool createCopy, string targetFrameworkMoniker, System.IO.FileInfo customDotNetCliPath, System.IO.DirectoryInfo restorePath, string displayName, System.TimeSpan? timeout); ``` ### Namespace BenchmarkDotNet.Toolchains.CsProj #### Type Changed: BenchmarkDotNet.Toolchains.CsProj.CsProjClassicNetToolchain Removed method: ```csharp public static BenchmarkDotNet.Toolchains.IToolchain From (string targetFrameworkMoniker, string packagesPath, System.TimeSpan? timeout); ``` ### Namespace BenchmarkDotNet.Toolchains.DotNetCli #### Type Changed: BenchmarkDotNet.Toolchains.DotNetCli.CustomDotNetCliToolchainBuilder Removed field: ```csharp protected System.TimeSpan? timeout; ``` Removed method: ```csharp public CustomDotNetCliToolchainBuilder Timeout (System.TimeSpan timeout); ``` #### Type Changed: BenchmarkDotNet.Toolchains.DotNetCli.DotNetCliBuilder Removed constructor: ```csharp public DotNetCliBuilder (string targetFrameworkMoniker, string customDotNetCliPath, System.TimeSpan? timeout); ``` #### Type Changed: BenchmarkDotNet.Toolchains.DotNetCli.DotNetCliPublisher Removed constructor: ```csharp public DotNetCliPublisher (string customDotNetCliPath, string extraArguments, System.Collections.Generic.IReadOnlyList environmentVariables, System.TimeSpan? timeout); ``` #### Type Changed: BenchmarkDotNet.Toolchains.DotNetCli.NetCoreAppSettings Removed constructor: ```csharp public NetCoreAppSettings (string targetFrameworkMoniker, string runtimeFrameworkVersion, string name, string customDotNetCliPath, string packagesPath, System.TimeSpan? timeout, string customRuntimePack, string aotCompilerPath, BenchmarkDotNet.Toolchains.MonoAotLLVM.MonoAotCompilerMode aotCompilerMode); ``` Removed field: ```csharp public static System.TimeSpan DefaultBuildTimeout; ``` Removed property: ```csharp public System.TimeSpan Timeout { get; } ``` Removed method: ```csharp public NetCoreAppSettings WithTimeout (System.TimeSpan? timeOut); ``` ### Namespace BenchmarkDotNet.Toolchains.MonoAotLLVM #### Removed Type BenchmarkDotNet.Toolchains.MonoAotLLVM.MonoAotLLVMBuilder ### Namespace BenchmarkDotNet.Toolchains.MonoWasm #### Removed Type BenchmarkDotNet.Toolchains.MonoWasm.WasmBuilder ### Namespace BenchmarkDotNet.Toolchains.Parameters #### Type Changed: BenchmarkDotNet.Toolchains.Parameters.ExecuteParameters Removed constructor: ```csharp public ExecuteParameters (BenchmarkDotNet.Toolchains.Results.BuildResult buildResult, BenchmarkDotNet.Running.BenchmarkCase benchmarkCase, BenchmarkDotNet.Running.BenchmarkId benchmarkId, BenchmarkDotNet.Loggers.ILogger logger, BenchmarkDotNet.Characteristics.IResolver resolver, BenchmarkDotNet.Diagnosers.IDiagnoser diagnoser); ``` ### Namespace BenchmarkDotNet.Toolchains.Results #### Type Changed: BenchmarkDotNet.Toolchains.Results.ExecuteResult Removed constructor: ```csharp public ExecuteResult (bool foundExecutable, int? exitCode, int? processId, System.Collections.Generic.IReadOnlyList data, System.Collections.Generic.IReadOnlyList linesWithExtraOutput); ``` Removed property: ```csharp public System.Collections.Generic.IReadOnlyList Data { get; } ```
BenchmarkDotNet.Annotations.dll.diff # API diff: BenchmarkDotNet.Annotations.dll ## BenchmarkDotNet.Annotations.dll > Assembly Version Changed: 0.13.1.1696 vs 0.13.1.0 ### Namespace BenchmarkDotNet.Attributes #### Type Changed: BenchmarkDotNet.Attributes.BenchmarkAttribute Removed constructor: ```csharp public BenchmarkAttribute (); ``` Added constructor: ```csharp public BenchmarkAttribute (int sourceCodeLineNumber, string sourceCodeFile); ``` Added properties: ```csharp public string SourceCodeFile { get; } public int SourceCodeLineNumber { get; } ``` ### Namespace BenchmarkDotNet.Jobs #### Type Changed: BenchmarkDotNet.Jobs.RuntimeMoniker Modified fields: ```diff -CoreRt20 = 17 +CoreRt20 = 18 -CoreRt21 = 18 +CoreRt21 = 19 -CoreRt22 = 19 +CoreRt22 = 20 -CoreRt30 = 20 +CoreRt30 = 21 -CoreRt31 = 21 +CoreRt31 = 22 -CoreRt50 = 22 +CoreRt50 = 23 -CoreRt60 = 23 +CoreRt60 = 24 -MonoAOTLLVM = 27 +MonoAOTLLVM = 30 -Wasm = 24 +Wasm = 26 -WasmNet50 = 25 +WasmNet50 = 27 -WasmNet60 = 26 +WasmNet60 = 28 ``` Added values: ```csharp CoreRt70 = 25, MonoAOTLLVMNet60 = 31, MonoAOTLLVMNet70 = 32, Net70 = 17, WasmNet70 = 29, ```
BenchmarkDotNet.Annotations.dll.breaking # API diff: BenchmarkDotNet.Annotations.dll ## BenchmarkDotNet.Annotations.dll > Assembly Version Changed: 0.13.1.1696 vs 0.13.1.0 ### Namespace BenchmarkDotNet.Attributes #### Type Changed: BenchmarkDotNet.Attributes.BenchmarkAttribute Removed constructor: ```csharp public BenchmarkAttribute (); ``` ### Namespace BenchmarkDotNet.Jobs #### Type Changed: BenchmarkDotNet.Jobs.RuntimeMoniker Modified fields: ```diff -CoreRt20 = 17 +CoreRt20 = 18 -CoreRt21 = 18 +CoreRt21 = 19 -CoreRt22 = 19 +CoreRt22 = 20 -CoreRt30 = 20 +CoreRt30 = 21 -CoreRt31 = 21 +CoreRt31 = 22 -CoreRt50 = 22 +CoreRt50 = 23 -CoreRt60 = 23 +CoreRt60 = 24 -MonoAOTLLVM = 27 +MonoAOTLLVM = 30 -Wasm = 24 +Wasm = 26 -WasmNet50 = 25 +WasmNet50 = 27 -WasmNet60 = 26 +WasmNet60 = 28 ```