TUnit.Core 0.2.128

Prefix Reserved
There is a newer version of this package available.
See the version list below for details.
dotnet add package TUnit.Core --version 0.2.128                
NuGet\Install-Package TUnit.Core -Version 0.2.128                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="TUnit.Core" Version="0.2.128" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add TUnit.Core --version 0.2.128                
#r "nuget: TUnit.Core, 0.2.128"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install TUnit.Core as a Cake Addin
#addin nuget:?package=TUnit.Core&version=0.2.128

// Install TUnit.Core as a Cake Tool
#tool nuget:?package=TUnit.Core&version=0.2.128                

TUnit

<a href="https://trendshift.io/repositories/11781" target="_blank"><img src="https://trendshift.io/api/badge/repositories/11781" alt="thomhurst%2FTUnit | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/></a>

A modern, flexible and fast testing framework for .NET 8 and up. With Native AOT and Trimmed Single File application support included!

TUnit is designed to aid with all testing types:

  • Unit
  • Integration
  • Acceptance
  • and more!

GitHub Repo stars GitHub Sponsors nuget NuGet Downloads GitHub Workflow Status (with event) GitHub last commit (branch) License

Documentation

See here: https://thomhurst.github.io/TUnit/

IDE

TUnit is built on top of the newer Microsoft.Testing.Platform, as opposed to the older VSTest platform. Because the infrastructure behind the scenes is new and different, you may need to enable some settings. This should just be a one time thing.

Visual Studio

Visual Studio is supported on the Preview version currently.

  • Install the latest preview version
  • Open Visual Studio and go to Tools > Manage Preview Features
  • Enable "Use testing platform server mode"

<img src="/docs/static/img/visual-studio.png" height="300px">

Rider

Rider is supported. The Enable Testing Platform support option must be selected in Settings > Build, Execution, Deployment > Unit Testing > VSTest.

<img src="/docs/static/img/rider.png" height="300px">

VS Code

Visual Studio Code is supported.

  • Install the extension Name: C# Dev Kit
  • Go to the C# Dev Kit extension's settings
  • Enable Dotnet > Test Window > Use Testing Platform Protocol

<img src="/docs/static/img/visual-studio-code.png" height="300px">

CLI

dotnet CLI - Fully supported. Tests should be runnable with dotnet test, dotnet run, dotnet exec or executing an executable directly. See the docs for more information!

Features

  • Native AOT / Trimmed Single File application support
  • Source generated tests
  • Property injection
  • Full async support
  • Parallel by default, with mechanisms to:
    • Run specific tests completely on their own
    • Run specific tests not in parallel with other specific tests
    • Limit the parallel limit on a per-test, class or assembly level
  • Tests can depend on other tests to form chains, useful for if one test depends on state from another action. While not recommended for unit tests, this can be useful in integration testing where state matters
  • Easy to read assertions - though you're also free to use whichever assertion library you like
  • Injectable test data via classes, methods, compile-time args, or matrices
  • Hooks before and after:
    • TestDiscover
    • TestSession
    • Assembly
    • Class
    • Test
  • Designed to avoid common pitfalls such as leaky test states
  • Dependency injection support (See here)
  • Ability to view and interrogate metadata and results from various assembly/class/test context objects

Installation

dotnet add package TUnit --prerelease

Example test

    private static readonly TimeOnly Midnight = TimeOnly.FromTimeSpan(TimeSpan.Zero);
    private static readonly TimeOnly Noon = TimeOnly.FromTimeSpan(TimeSpan.FromHours(12));
    
    [Test]
    public async Task IsMorning()
    {
        var time = GetTime();

        await Assert.That(time).IsAfterOrEqualTo(Midnight)
            .And.IsBefore(Noon);
    }

or with more complex test orchestration needs

    [Before(Class)]
    public static async Task ClearDatabase(ClassHookContext context) { ... }

    [After(Class)]
    public static async Task AssertDatabaseIsAsExpected(ClassHookContext context) { ... }

    [Before(Test)]
    public async Task CreatePlaywrightBrowser(TestContext context) { ... }

    [After(Test)]
    public async Task DisposePlaywrightBrowser(TestContext context) { ... }

    [Retry(3)]
    [Test, DisplayName("Register an account")]
    [MethodData(nameof(GetAuthDetails))]
    public async Task Register(string username, string password) { ... }

    [Repeat(5)]
    [Test, DependsOn(nameof(Register))]
    [MethodData(nameof(GetAuthDetails))]
    public async Task Login(string username, string password) { ... }

    [Test, DependsOn(nameof(Login), [typeof(string), typeof(string)])]
    [MethodData(nameof(GetAuthDetails))]
    public async Task DeleteAccount(string username, string password) { ... }

    [Category("Downloads")]
    [Timeout(300_000)]
    [Test, NotInParallel(Order = 1)]
    public async Task DownloadFile1() { ... }

    [Category("Downloads")]
    [Timeout(300_000)]
    [Test, NotInParallel(Order = 2)]
    public async Task DownloadFile2() { ... }

    [Repeat(10)]
    [Test]
    [Arguments(1)]
    [Arguments(2)]
    [Arguments(3)]
    [DisplayName("Go to the page numbered $page")]
    public async Task GoToPage(int page) { ... }

    [Category("Cookies")]
    [Test, Skip("Not yet built!")]
    public async Task CheckCookies() { ... }

    [Test, Explicit, WindowsOnlyTest, RetryHttpServiceUnavailable(5)]
    [Property("Some Key", "Some Value")]
    public async Task Ping() { ... }

    [Test]
    [ParallelLimit<LoadTestParallelLimit>]
    [Repeat(1000)]
    public async Task LoadHomepage() { ... }

    public static IEnumerable<(string Username, string Password)> GetAuthDetails()
    {
        yield return ("user1", "password1");
        yield return ("user2", "password2");
        yield return ("user3", "password3");
    }

    public class WindowsOnlyTestAttribute : SkipAttribute
    {
        public WindowsOnlyTestAttribute() : base("Windows only test")
        {
        }

        public override Task<bool> ShouldSkip(TestContext testContext)
        {
            return Task.FromResult(!OperatingSystem.IsWindows());
        }
    }

    public class RetryHttpServiceUnavailableAttribute : RetryAttribute
    {
        public RetryHttpServiceUnavailableAttribute(int times) : base(times)
        {
        }

        public override Task<bool> ShouldRetry(TestInformation testInformation, Exception exception, int currentRetryCount)
        {
            return Task.FromResult(exception is HttpRequestException { StatusCode: HttpStatusCode.ServiceUnavailable });
        }
    }

    public class LoadTestParallelLimit : IParallelLimit
    {
        public int Limit => 50;
    }

Motivations

TUnit is inspired by NUnit and xUnit - two of the most popular testing frameworks for .NET.

It aims to build upon the useful features of both while trying to address any pain points that they may have.

Read more here

Prerelease

You'll notice that version 1.0 isn't out yet. While this framework is mostly feature complete, I'm waiting for a few things:

  • Full Rider support for all features
  • Full VS support for all features
  • Open to feedback on existing features
  • Open to ideas on new features

As such, the API may change. I'll try to limit this but it's a possibility.

Benchmark

Scenario: Building the test project

macos-latest

BenchmarkDotNet v0.14.0, macOS Sonoma 14.7 (23H124) [Darwin 23.6.0]
Apple M1 (Virtual), 1 CPU, 3 logical and 3 physical cores
.NET SDK 9.0.100-rc.2.24474.11
  [Host]   : .NET 9.0.0 (9.0.24.47305), Arm64 RyuJIT AdvSIMD
  .NET 9.0 : .NET 9.0.0 (9.0.24.47305), Arm64 RyuJIT AdvSIMD

Job=.NET 9.0  Runtime=.NET 9.0  

Method Mean Error StdDev Median
Build_TUnit 1.054 s 0.0435 s 0.1277 s 1.009 s
Build_NUnit 1.340 s 0.0500 s 0.1473 s 1.322 s
Build_xUnit 1.376 s 0.0564 s 0.1644 s 1.379 s
Build_MSTest 1.446 s 0.0414 s 0.1209 s 1.453 s
ubuntu-latest

BenchmarkDotNet v0.14.0, Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763, 1 CPU, 4 logical and 2 physical cores
.NET SDK 9.0.100-rc.2.24474.11
  [Host]   : .NET 9.0.0 (9.0.24.47305), X64 RyuJIT AVX2
  .NET 9.0 : .NET 9.0.0 (9.0.24.47305), X64 RyuJIT AVX2

Job=.NET 9.0  Runtime=.NET 9.0  

Method Mean Error StdDev
Build_TUnit 1.808 s 0.0361 s 0.0338 s
Build_NUnit 1.488 s 0.0120 s 0.0101 s
Build_xUnit 1.512 s 0.0159 s 0.0149 s
Build_MSTest 1.576 s 0.0188 s 0.0166 s
windows-latest

BenchmarkDotNet v0.14.0, Windows 10 (10.0.20348.2762) (Hyper-V)
AMD EPYC 7763, 1 CPU, 4 logical and 2 physical cores
.NET SDK 9.0.100-rc.2.24474.11
  [Host]   : .NET 9.0.0 (9.0.24.47305), X64 RyuJIT AVX2
  .NET 9.0 : .NET 9.0.0 (9.0.24.47305), X64 RyuJIT AVX2

Job=.NET 9.0  Runtime=.NET 9.0  

Method Mean Error StdDev
Build_TUnit 1.892 s 0.0359 s 0.0384 s
Build_NUnit 1.602 s 0.0288 s 0.0270 s
Build_xUnit 1.619 s 0.0218 s 0.0193 s
Build_MSTest 1.647 s 0.0318 s 0.0327 s

Scenario: A single test that completes instantly (including spawning a new process and initialising the test framework)

macos-latest

BenchmarkDotNet v0.14.0, macOS Sonoma 14.7 (23H124) [Darwin 23.6.0]
Apple M1 (Virtual), 1 CPU, 3 logical and 3 physical cores
.NET SDK 9.0.100-rc.2.24474.11
  [Host]   : .NET 9.0.0 (9.0.24.47305), Arm64 RyuJIT AdvSIMD
  .NET 9.0 : .NET 9.0.0 (9.0.24.47305), Arm64 RyuJIT AdvSIMD

Job=.NET 9.0  Runtime=.NET 9.0  

Method Mean Error StdDev
TUnit_AOT 80.57 ms 0.197 ms 0.174 ms
TUnit 452.85 ms 6.907 ms 6.461 ms
NUnit 697.75 ms 8.971 ms 8.391 ms
xUnit 681.51 ms 7.538 ms 7.051 ms
MSTest 617.45 ms 5.768 ms 5.395 ms
ubuntu-latest

BenchmarkDotNet v0.14.0, Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763, 1 CPU, 4 logical and 2 physical cores
.NET SDK 9.0.100-rc.2.24474.11
  [Host]   : .NET 9.0.0 (9.0.24.47305), X64 RyuJIT AVX2
  .NET 9.0 : .NET 9.0.0 (9.0.24.47305), X64 RyuJIT AVX2

Job=.NET 9.0  Runtime=.NET 9.0  

Method Mean Error StdDev
TUnit_AOT 32.58 ms 0.643 ms 1.328 ms
TUnit 844.49 ms 16.278 ms 22.282 ms
NUnit 1,350.68 ms 23.361 ms 21.852 ms
xUnit 1,322.61 ms 19.540 ms 18.277 ms
MSTest 1,199.91 ms 15.670 ms 14.658 ms
windows-latest

BenchmarkDotNet v0.14.0, Windows 10 (10.0.20348.2762) (Hyper-V)
AMD EPYC 7763, 1 CPU, 4 logical and 2 physical cores
.NET SDK 9.0.100-rc.2.24474.11
  [Host]   : .NET 9.0.0 (9.0.24.47305), X64 RyuJIT AVX2
  .NET 9.0 : .NET 9.0.0 (9.0.24.47305), X64 RyuJIT AVX2

Job=.NET 9.0  Runtime=.NET 9.0  

Method Mean Error StdDev
TUnit_AOT 77.69 ms 0.973 ms 0.812 ms
TUnit 889.07 ms 17.267 ms 25.844 ms
NUnit 1,377.39 ms 20.445 ms 19.125 ms
xUnit 1,348.55 ms 9.672 ms 9.047 ms
MSTest 1,223.46 ms 14.083 ms 13.173 ms

Scenario: A test that takes 50ms to execute, repeated 100 times (including spawning a new process and initialising the test framework)

macos-latest

BenchmarkDotNet v0.14.0, macOS Sonoma 14.7 (23H124) [Darwin 23.6.0]
Apple M1 (Virtual), 1 CPU, 3 logical and 3 physical cores
.NET SDK 9.0.100-rc.2.24474.11
  [Host]   : .NET 9.0.0 (9.0.24.47305), Arm64 RyuJIT AdvSIMD
  .NET 9.0 : .NET 9.0.0 (9.0.24.47305), Arm64 RyuJIT AdvSIMD

Job=.NET 9.0  Runtime=.NET 9.0  

Method Mean Error StdDev
TUnit_AOT 255.9 ms 14.29 ms 42.14 ms
TUnit 877.1 ms 48.65 ms 141.14 ms
NUnit 14,549.6 ms 290.06 ms 515.57 ms
xUnit 14,565.2 ms 289.43 ms 543.62 ms
MSTest 14,429.0 ms 284.72 ms 475.71 ms
ubuntu-latest

BenchmarkDotNet v0.14.0, Ubuntu 22.04.5 LTS (Jammy Jellyfish)
AMD EPYC 7763, 1 CPU, 4 logical and 2 physical cores
.NET SDK 9.0.100-rc.2.24474.11
  [Host]   : .NET 9.0.0 (9.0.24.47305), X64 RyuJIT AVX2
  .NET 9.0 : .NET 9.0.0 (9.0.24.47305), X64 RyuJIT AVX2

Job=.NET 9.0  Runtime=.NET 9.0  

Method Mean Error StdDev
TUnit_AOT 105.6 ms 2.04 ms 2.58 ms
TUnit 891.2 ms 17.81 ms 23.78 ms
NUnit 6,485.3 ms 22.80 ms 21.33 ms
xUnit 6,486.0 ms 20.23 ms 17.93 ms
MSTest 6,463.9 ms 19.69 ms 18.42 ms
windows-latest

BenchmarkDotNet v0.14.0, Windows 10 (10.0.20348.2762) (Hyper-V)
AMD EPYC 7763, 1 CPU, 4 logical and 2 physical cores
.NET SDK 9.0.100-rc.2.24474.11
  [Host]   : .NET 9.0.0 (9.0.24.47305), X64 RyuJIT AVX2
  .NET 9.0 : .NET 9.0.0 (9.0.24.47305), X64 RyuJIT AVX2

Job=.NET 9.0  Runtime=.NET 9.0  

Method Mean Error StdDev
TUnit_AOT 127.3 ms 2.51 ms 5.51 ms
TUnit 970.5 ms 18.94 ms 27.76 ms
NUnit 7,590.3 ms 17.53 ms 16.40 ms
xUnit 7,560.2 ms 17.89 ms 16.73 ms
MSTest 7,539.4 ms 11.98 ms 10.62 ms
Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net8.0

    • No dependencies.
  • net9.0

    • No dependencies.

NuGet packages (5)

Showing the top 5 NuGet packages that depend on TUnit.Core:

Package Downloads
TUnit.Engine

A .NET Testing Framework

Verify.TUnit

Enables verification of complex models and documents.

WireMock.Net.TUnit

Some extensions for TUnit (TUnitLogger)

EasyTestFile.TUnit

Enables EasyTestFile when writing test using TUnit.

Rocket.Surgery.Extensions.Testing.TUnit

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
0.3.34 514 11/19/2024
0.3.31 570 11/18/2024
0.3.30 129 11/18/2024
0.3.29 265 11/18/2024
0.3.25 268 11/17/2024
0.3.20 239 11/17/2024
0.3.14 251 11/17/2024
0.3.12 111 11/16/2024
0.3.3 110 11/16/2024
0.3.0 103 11/16/2024
0.2.212 1,885 11/11/2024
0.2.210 125 11/11/2024
0.2.208 123 11/11/2024
0.2.206 99 11/11/2024
0.2.202 801 11/9/2024
0.2.195 1,068 11/6/2024
0.2.193 500 11/5/2024
0.2.191 127 11/5/2024
0.2.187 1,678 11/4/2024
0.2.185 97 11/4/2024
0.2.181 826 11/2/2024
0.2.180 99 11/2/2024
0.2.176 880 11/1/2024
0.2.175 140 11/1/2024
0.2.169 595 10/31/2024
0.2.168 162 10/31/2024
0.2.167 220 10/31/2024
0.2.164 304 10/31/2024
0.2.161 212 10/31/2024
0.2.145 684 10/30/2024
0.2.141 154 10/30/2024
0.2.131 404 10/29/2024
0.2.128 138 10/29/2024
0.2.126 120 10/29/2024
0.2.120 203 10/29/2024
0.2.119 145 10/29/2024
0.2.112 305 10/29/2024
0.2.107 357 10/29/2024
0.2.106 113 10/29/2024
0.2.105 114 10/29/2024
0.2.103 147 10/29/2024
0.2.100 158 10/29/2024
0.2.86 400 10/29/2024
0.2.85 109 10/28/2024
0.2.82 128 10/28/2024
0.2.80 133 10/28/2024
0.2.63 859 10/27/2024
0.2.60 130 10/27/2024
0.2.55 153 10/27/2024
0.2.54 83 10/27/2024
0.2.52 102 10/27/2024
0.2.49 134 10/27/2024
0.2.48 125 10/27/2024
0.2.43 142 10/27/2024
0.2.34 204 10/26/2024
0.2.30 130 10/26/2024
0.2.26 138 10/26/2024
0.2.15 327 10/25/2024
0.2.11 257 10/25/2024
0.2.10 112 10/25/2024
0.2.7 139 10/25/2024
0.2.5 117 10/25/2024
0.2.3 114 10/25/2024
0.2.2 131 10/25/2024
0.2.1 289 10/25/2024
0.1.1099 3,374 10/21/2024
0.1.1097 116 10/21/2024
0.1.1096 277 10/20/2024
0.1.1094 131 10/20/2024
0.1.1090 146 10/20/2024
0.1.1089 123 10/19/2024
0.1.1086 113 10/19/2024
0.1.1085 131 10/19/2024
0.1.1082 173 10/19/2024
0.1.1079 122 10/19/2024
0.1.1076 336 10/19/2024
0.1.1071 194 10/18/2024
0.1.1066 150 10/18/2024
0.1.1065 329 10/17/2024
0.1.1063 104 10/17/2024
0.1.1061 157 10/17/2024
0.1.1056 296 10/16/2024
0.1.1051 841 10/16/2024
0.1.1043 318 10/15/2024
0.1.1039 172 10/15/2024
0.1.1033 735 10/13/2024
0.1.1030 168 10/13/2024
0.1.1022 461 10/12/2024
0.1.1019 109 10/12/2024
0.1.1010 1,520 10/11/2024
0.1.1007 112 10/11/2024
0.1.998 429 10/10/2024
0.1.997 102 10/10/2024
0.1.984 753 10/7/2024
0.1.980 124 10/7/2024
0.1.971 433 10/7/2024
0.1.966 360 10/7/2024
0.1.962 100 10/6/2024
0.1.961 92 10/6/2024
0.1.958 96 10/6/2024
0.1.954 105 10/6/2024
0.1.949 122 10/6/2024
0.1.942 297 10/5/2024
0.1.939 98 10/5/2024
0.1.937 110 10/5/2024
0.1.934 91 10/5/2024
0.1.931 146 10/5/2024
0.1.928 594 10/4/2024
0.1.923 621 10/4/2024
0.1.916 245 10/3/2024
0.1.911 256 10/3/2024
0.1.897 2,362 10/2/2024
0.1.894 104 10/2/2024
0.1.891 201 10/2/2024
0.1.885 367 10/1/2024
0.1.877 576 9/29/2024
0.1.872 99 9/29/2024
0.1.869 125 9/29/2024
0.1.864 442 9/28/2024
0.1.863 126 9/28/2024
0.1.857 205 9/28/2024
0.1.842 402 9/26/2024
0.1.827 588 9/25/2024
0.1.818 685 9/24/2024
0.1.817 855 9/24/2024
0.1.816 96 9/24/2024
0.1.812 567 9/23/2024
0.1.807 321 9/23/2024
0.1.804 613 9/22/2024
0.1.801 133 9/22/2024
0.1.797 122 9/22/2024
0.1.793 537 9/21/2024
0.1.791 102 9/21/2024
0.1.790 174 9/21/2024
0.1.783 566 9/20/2024
0.1.773 675 9/20/2024
0.1.767 529 9/19/2024
0.1.763 219 9/19/2024
0.1.762 115 9/19/2024
0.1.759 121 9/19/2024
0.1.752 705 9/18/2024
0.1.741 379 9/17/2024
0.1.738 322 9/16/2024
0.1.732 382 9/16/2024
0.1.720 318 9/15/2024
0.1.716 140 9/15/2024
0.1.714 120 9/15/2024
0.1.711 122 9/15/2024
0.1.703 294 9/14/2024
0.1.697 190 9/14/2024
0.1.691 291 9/13/2024
0.1.686 147 9/13/2024
0.1.672 362 9/12/2024
0.1.667 181 9/11/2024
0.1.664 122 9/11/2024
0.1.653 230 9/11/2024
0.1.639 286 9/10/2024
0.1.634 150 9/10/2024
0.1.623 280 9/7/2024
0.1.600 550 9/6/2024
0.1.582 299 9/5/2024
0.1.578 102 9/5/2024
0.1.575 101 9/4/2024
0.1.518 317 9/2/2024
0.1.512 1,105 8/30/2024
0.1.508 94 8/29/2024
0.1.506 173 8/28/2024
0.1.505 115 8/28/2024
0.1.504 96 8/28/2024
0.1.503 152 8/27/2024
0.1.502 110 8/27/2024
0.1.497 95 8/27/2024
0.1.495 105 8/27/2024
0.1.492 131 8/16/2024
0.1.491 115 8/15/2024
0.1.486 195 8/9/2024
0.1.481 341 8/8/2024
0.1.479 182 8/8/2024
0.1.476 560 8/7/2024
0.1.474 175 8/7/2024
0.1.472 175 8/7/2024
0.1.471 182 8/7/2024
0.1.470 159 8/7/2024
0.1.469 171 8/7/2024
0.1.467 131 8/7/2024
0.1.465 97 8/7/2024
0.1.460 119 8/6/2024
0.1.459 87 8/6/2024
0.1.458 78 8/5/2024
0.1.457 95 8/1/2024
0.1.456 82 8/1/2024
0.1.455 71 7/31/2024
0.1.454 77 7/30/2024
0.1.442 403 7/13/2024
0.1.441 91 7/13/2024
0.1.440 89 7/13/2024
0.1.439 101 7/13/2024
0.1.438 142 7/12/2024
0.1.434 88 7/12/2024
0.1.433 87 7/12/2024
0.1.430 253 7/11/2024
0.1.428 96 7/10/2024
0.1.424 385 7/9/2024
0.1.423-alpha01 79 7/9/2024
0.1.422-alpha01 73 7/7/2024
0.1.420-alpha01 78 7/7/2024
0.1.419-alpha01 82 7/7/2024
0.1.418-alpha01 70 7/7/2024
0.1.417-alpha01 67 7/7/2024
0.1.416-alpha01 77 7/7/2024
0.1.413-alpha01 69 7/7/2024
0.1.412-alpha01 76 7/7/2024
0.1.411-alpha01 70 7/6/2024
0.1.410-alpha01 80 7/6/2024
0.1.409-alpha01 73 7/5/2024
0.1.407-alpha01 80 7/5/2024
0.1.406-alpha01 81 7/5/2024
0.1.405-alpha01 80 7/5/2024
0.1.404-alpha01 84 7/5/2024
0.1.403-alpha01 71 7/5/2024
0.1.402-alpha01 74 7/5/2024
0.1.401-alpha01 159 7/5/2024
0.1.398-alpha01 75 7/5/2024
0.1.397-alpha01 81 7/4/2024
0.1.395-alpha01 84 7/2/2024
0.1.394-alpha01 78 7/1/2024
0.1.392-alpha01 71 6/30/2024
0.1.391-alpha01 72 6/30/2024
0.1.390-alpha01 69 6/30/2024
0.1.389-alpha01 73 6/30/2024
0.1.386-alpha01 75 6/30/2024
0.1.385-alpha01 70 6/30/2024
0.1.384-alpha01 72 6/30/2024
0.1.383-alpha01 75 6/30/2024
0.1.382-alpha01 83 6/28/2024
0.1.381-alpha01 84 6/26/2024
0.1.380-alpha01 70 6/26/2024
0.1.379-alpha01 194 6/26/2024
0.1.378-alpha01 71 6/26/2024
0.1.377-alpha01 75 6/26/2024
0.1.376-alpha01 77 6/26/2024
0.1.375-alpha01 79 6/25/2024
0.1.374-alpha01 80 6/25/2024
0.1.373-alpha01 80 6/24/2024
0.1.372-alpha01 77 6/24/2024
0.1.371-alpha01 62 6/23/2024
0.1.370-alpha01 87 6/21/2024
0.1.369-alpha01 78 6/21/2024
0.1.368-alpha01 69 6/21/2024
0.1.367-alpha01 86 6/21/2024
0.1.366-alpha01 81 6/21/2024
0.1.365-alpha01 86 6/20/2024
0.1.364-alpha01 73 6/19/2024
0.1.363-alpha01 83 6/19/2024
0.1.362-alpha01 85 6/18/2024
0.1.361-alpha01 82 6/18/2024
0.1.360-alpha01 79 6/18/2024
0.1.359-alpha01 73 6/17/2024
0.1.358-alpha01 74 6/17/2024
0.1.357-alpha01 79 6/16/2024
0.1.356-alpha01 83 6/16/2024
0.1.355-alpha01 89 6/16/2024
0.1.354-alpha01 85 6/16/2024
0.1.353-alpha01 87 6/16/2024
0.1.352-alpha01 93 6/16/2024
0.1.351-alpha01 94 6/14/2024
0.1.350-alpha01 190 6/14/2024
0.1.349-alpha01 92 6/13/2024
0.1.347-alpha01 74 6/12/2024
0.1.346-alpha01 89 6/12/2024
0.1.343-alpha01 89 6/12/2024
0.1.342-alpha01 78 6/12/2024
0.1.341-alpha01 70 6/11/2024
0.1.340-alpha01 72 6/11/2024
0.1.338-alpha01 83 6/11/2024
0.1.336-alpha01 85 6/11/2024
0.1.335-alpha01 82 6/11/2024
0.1.334-alpha01 84 6/11/2024
0.1.333-alpha01 81 6/11/2024
0.1.332-alpha01 85 6/11/2024
0.1.331-alpha01 84 6/11/2024
0.1.330-alpha01 80 6/11/2024
0.1.329-alpha01 83 6/11/2024
0.1.328-alpha01 83 6/11/2024
0.1.327-alpha01 80 6/10/2024
0.1.326-alpha01 82 6/7/2024
0.1.325-alpha01 84 6/7/2024
0.1.324-alpha01 94 6/6/2024
0.1.323-alpha01 98 6/6/2024
0.1.322-alpha01 94 6/3/2024
0.1.321-alpha01 88 6/3/2024
0.1.320-alpha01 114 6/2/2024
0.1.319-alpha01 94 6/2/2024
0.1.318-alpha01 80 6/2/2024
0.1.317-alpha01 92 6/2/2024
0.1.316-alpha01 99 6/2/2024
0.1.315-alpha01 101 5/31/2024
0.1.314-alpha01 101 5/30/2024
0.1.313-alpha01 96 5/30/2024
0.1.312-alpha01 99 5/29/2024
0.1.311-alpha01 95 5/29/2024
0.1.310-alpha01 87 5/29/2024
0.1.309-alpha01 94 5/29/2024
0.1.308-alpha01 97 5/29/2024
0.1.307-alpha01 93 5/29/2024
0.1.306-alpha01 88 5/29/2024
0.1.305-alpha01 93 5/29/2024
0.1.303-alpha01 93 5/29/2024
0.1.302-alpha01 96 5/29/2024
0.1.301-alpha01 97 5/29/2024
0.1.300-alpha01 90 5/28/2024
0.1.299-alpha01 86 5/28/2024
0.1.298-alpha01 107 5/24/2024
0.1.297-alpha01 94 5/24/2024
0.1.296-alpha01 109 5/23/2024
0.1.295-alpha01 100 5/23/2024
0.1.294-alpha01 101 5/23/2024
0.1.293-alpha01 103 5/21/2024
0.1.292-alpha01 102 5/17/2024
0.1.291-alpha01 103 5/17/2024
0.1.290-alpha01 108 5/16/2024
0.1.289-alpha01 104 5/16/2024
0.1.288-alpha01 461 5/16/2024
0.1.287-alpha01 122 5/15/2024
0.1.286-alpha01 105 5/15/2024
0.1.285-alpha01 102 5/15/2024
0.1.284-alpha01 102 5/15/2024
0.1.283-alpha01 93 5/15/2024
0.1.282-alpha01 126 5/15/2024
0.1.281-alpha01 98 5/15/2024
0.1.280-alpha01 104 5/15/2024
0.1.279-alpha01 96 5/15/2024
0.1.278-alpha01 91 5/15/2024
0.1.277-alpha01 101 5/15/2024
0.1.276-alpha01 92 5/15/2024
0.1.275-alpha01 91 5/15/2024
0.1.274-alpha01 89 5/15/2024
0.1.273-alpha01 94 5/15/2024
0.1.272-alpha01 81 5/15/2024
0.1.271-alpha01 109 5/14/2024
0.1.270-alpha01 106 5/14/2024
0.1.269-alpha01 98 5/14/2024
0.1.267-alpha01 94 5/14/2024
0.1.266-alpha01 93 5/14/2024
0.1.265-alpha01 90 5/14/2024
0.1.264-alpha01 93 5/14/2024
0.1.263-alpha01 111 5/14/2024
0.1.262-alpha01 100 5/14/2024
0.1.261-alpha01 92 5/14/2024
0.1.260-alpha01 102 5/14/2024
0.1.259-alpha01 105 5/14/2024
0.1.258-alpha01 126 5/14/2024
0.1.257-alpha01 108 5/14/2024
0.1.256-alpha01 97 5/14/2024
0.1.255-alpha01 100 5/14/2024
0.1.253-pullrequest0116-0276 101 5/14/2024
0.1.253-pullrequest0116-0274 92 5/14/2024
0.1.253-pullrequest0116-0273 98 5/14/2024
0.1.253-alpha01 94 5/14/2024
0.1.252-alpha01 110 5/13/2024
0.1.251-alpha01 94 5/13/2024
0.1.250-alpha01 101 5/13/2024
0.1.249-alpha01 73 5/3/2024
0.1.248-alpha01 138 4/24/2024
0.1.247-alpha01 103 4/16/2024
0.1.246-alpha01 103 4/16/2024
0.1.245-alpha01 94 4/16/2024
0.1.244-alpha01 96 4/16/2024
0.1.243-alpha01 95 4/16/2024
0.1.242-alpha01 98 4/16/2024
0.1.241-alpha01 95 4/16/2024
0.1.240-alpha01 101 4/16/2024
0.1.239-alpha01 107 4/16/2024
0.1.238-alpha01 103 4/16/2024
0.1.237-alpha01 105 4/16/2024
0.1.236-alpha01 112 4/16/2024
0.1.235-alpha01 106 4/16/2024
0.1.234-alpha01 104 4/16/2024
0.1.233-alpha01 109 4/16/2024
0.1.232-pullrequest0073-0043 138 3/25/2024
0.1.232-alpha01 413 3/26/2024
0.1.231-pullrequest0073-0042 101 2/27/2024
0.1.231-pullrequest0073-0041 126 2/27/2024
0.1.231-pullrequest0073-0040 101 2/27/2024
0.1.231-pullrequest0073-0039 96 2/27/2024
0.1.231-pullrequest0073-0038 102 2/27/2024
0.1.231-pullrequest0073-0037 105 2/27/2024
0.1.231-PullRequest0073.3333 78 2/27/2024
0.1.231-alpha01 112 3/8/2024
0.1.230-alpha01 375 2/25/2024
0.1.229-alpha01 117 2/25/2024
0.1.228-alpha01 97 2/25/2024
0.1.227-alpha01 96 2/25/2024
0.1.225-alpha01 95 2/24/2024
0.1.224-alpha01 135 2/24/2024
0.1.223-alpha01 90 2/24/2024
0.1.222-alpha01 108 2/24/2024
0.1.221-alpha01 102 2/24/2024
0.1.219-alpha01 96 2/24/2024
0.1.218-alpha01 87 2/24/2024
0.1.217-alpha01 88 2/24/2024
0.1.216-alpha01 86 2/24/2024
0.1.215-alpha01 88 2/24/2024
0.1.214-alpha01 114 2/24/2024
0.1.213-alpha01 93 2/24/2024
0.1.212-alpha01 104 2/23/2024
0.1.211-alpha01 100 2/22/2024
0.1.210-alpha01 102 2/22/2024
0.1.209-alpha01 96 2/22/2024
0.1.208-alpha01 112 2/21/2024
0.1.207-alpha01 92 2/21/2024
0.1.206-alpha01 95 2/21/2024
0.1.205-alpha01 106 2/21/2024
0.1.204-alpha01 101 2/19/2024
0.1.203-alpha01 91 2/19/2024
0.1.202-alpha01 90 2/19/2024
0.1.201-alpha01 93 2/19/2024
0.1.200-alpha01 97 2/19/2024
0.1.199-alpha01 99 2/19/2024
0.1.198-alpha01 94 2/19/2024
0.1.197-alpha01 92 2/18/2024
0.1.196-alpha01 93 2/18/2024
0.1.194-alpha01 92 2/18/2024
0.1.193-alpha01 105 2/18/2024
0.1.191-alpha01 108 2/18/2024
0.1.190-alpha01 90 2/18/2024
0.1.189-alpha01 96 2/18/2024
0.1.188-alpha01 87 2/18/2024
0.1.187-alpha01 97 2/18/2024
0.1.186-alpha01 97 2/18/2024
0.1.185-alpha01 91 2/18/2024
0.1.184-alpha01 101 2/18/2024
0.1.183-alpha01 91 2/18/2024
0.1.182-alpha01 99 2/18/2024
0.1.181-alpha01 94 2/18/2024
0.1.180-alpha01 89 2/18/2024
0.1.179-alpha01 89 2/18/2024
0.1.178-alpha01 95 2/18/2024
0.1.177-alpha01 94 2/16/2024
0.1.176-alpha01 105 2/16/2024
0.1.175-alpha01 89 2/16/2024
0.1.174-alpha01 96 2/16/2024
0.1.173-alpha01 96 2/16/2024
0.1.172-alpha01 96 2/16/2024
0.1.171-alpha01 87 2/16/2024
0.1.170-alpha01 94 2/16/2024
0.1.169-alpha01 103 2/16/2024
0.1.168-alpha01 93 2/16/2024
0.1.167-alpha01 93 2/16/2024
0.1.166-alpha01 98 2/16/2024
0.1.164-alpha01 89 2/16/2024
0.1.163-alpha01 108 2/16/2024
0.1.162-alpha01 90 2/16/2024
0.1.158-alpha01 95 2/15/2024
0.1.157-alpha01 98 2/15/2024
0.1.155-alpha01 104 2/15/2024
0.1.154-alpha01 100 2/15/2024
0.1.153-alpha01 103 2/15/2024
0.1.152-alpha01 106 2/15/2024
0.1.151-alpha01 96 2/15/2024
0.1.150-alpha01 111 2/15/2024
0.1.149-alpha01 99 2/15/2024
0.1.148-alpha01 90 2/15/2024
0.1.147-alpha01 102 2/15/2024
0.1.146-alpha01 103 2/15/2024
0.1.145-alpha01 96 2/15/2024
0.1.144-alpha01 98 2/15/2024
0.1.143-alpha01 102 2/14/2024
0.1.142-alpha01 105 2/14/2024
0.1.141-alpha01 97 2/14/2024
0.1.140-alpha01 83 2/14/2024
0.1.139-alpha01 87 2/14/2024
0.1.138-alpha01 91 2/14/2024
0.1.137-alpha01 107 2/13/2024
0.1.136-alpha01 101 2/13/2024
0.1.135-alpha01 101 2/13/2024
0.1.134-alpha01 102 2/13/2024
0.1.133-alpha01 97 2/13/2024
0.1.132-alpha01 98 2/13/2024
0.1.131-alpha01 110 2/13/2024
0.1.130-alpha01 95 2/11/2024
0.1.129-alpha01 222 2/11/2024
0.1.128-alpha01 108 2/11/2024
0.1.127-alpha01 111 2/11/2024
0.1.126-alpha01 96 2/11/2024
0.1.125-alpha01 95 2/11/2024
0.1.124-alpha01 104 2/11/2024
0.1.123-alpha01 103 2/11/2024
0.1.122-alpha01 104 2/10/2024
0.1.121-alpha01 95 2/10/2024
0.1.120-alpha01 109 2/10/2024
0.1.119-alpha01 87 2/10/2024
0.1.118-alpha01 107 2/10/2024
0.1.117-alpha01 95 2/9/2024
0.1.116-alpha01 96 2/9/2024
0.1.115-alpha01 96 2/9/2024
0.1.114-alpha01 101 2/9/2024
0.1.113-alpha01 94 2/9/2024
0.1.112-alpha01 106 2/9/2024
0.1.111-alpha01 114 2/9/2024
0.1.110-alpha01 130 2/8/2024
0.1.109-alpha01 129 2/8/2024
0.1.108-alpha01 113 2/8/2024
0.1.107-alpha01 101 2/8/2024
0.1.106-alpha01 123 2/8/2024
0.1.105-alpha01 118 2/8/2024
0.1.104-alpha01 120 2/8/2024
0.1.103-alpha01 99 2/8/2024
0.1.102-alpha01 126 2/8/2024
0.1.101-alpha01 118 2/8/2024
0.1.100-alpha01 93 2/8/2024
0.1.99-alpha01 99 2/8/2024
0.1.98-alpha01 122 2/8/2024
0.1.97-alpha01 115 2/8/2024
0.1.96-alpha01 162 2/7/2024
0.1.95-alpha01 115 2/7/2024
0.1.94-alpha01 147 2/7/2024
0.1.93-alpha01 110 2/7/2024
0.1.92-alpha01 105 2/7/2024
0.1.91-alpha01 140 2/7/2024
0.1.90-alpha01 115 2/7/2024
0.1.89-alpha01 123 2/7/2024
0.1.88-alpha01 109 2/7/2024
0.1.87-alpha01 117 2/7/2024
0.1.86-alpha01 122 2/7/2024
0.1.85-alpha01 118 2/7/2024
0.1.84-alpha01 116 2/7/2024
0.1.83-alpha01 117 2/7/2024
0.1.82-alpha01 114 2/7/2024
0.1.81-alpha01 127 2/7/2024
0.1.80-alpha01 112 2/7/2024
0.1.79-alpha01 115 2/7/2024
0.1.78-alpha01 105 2/7/2024
0.1.77-alpha01 120 2/7/2024
0.1.75-alpha01 113 2/7/2024
0.1.74-alpha01 108 2/7/2024
0.1.72-alpha01 122 2/7/2024
0.1.71-alpha01 123 2/7/2024
0.1.70-alpha01 109 2/7/2024
0.1.69-alpha01 111 2/7/2024
0.1.68-alpha01 138 2/6/2024
0.1.67-alpha01 107 2/6/2024
0.1.66-alpha01 117 2/6/2024
0.1.65-alpha01 137 2/6/2024
0.1.64-alpha01 112 2/6/2024
0.1.63-alpha01 112 2/6/2024
0.1.62-alpha01 113 2/6/2024
0.1.61-alpha01 114 2/6/2024
0.1.60-alpha01 120 2/6/2024
0.1.59-alpha01 118 2/6/2024
0.1.58-alpha01 122 2/6/2024
0.1.57-alpha01 115 2/6/2024
0.1.56-alpha01 114 2/6/2024
0.1.55-alpha01 118 2/6/2024
0.1.54-alpha01 120 2/6/2024
0.1.53-alpha01 119 2/6/2024
0.1.52-alpha01 128 2/6/2024
0.1.51-alpha01 106 2/6/2024
0.1.50-alpha01 118 2/6/2024
0.1.49-alpha01 126 2/5/2024
0.1.48-alpha01 119 2/5/2024
0.1.47-alpha01 119 2/5/2024
0.1.45-alpha01 118 2/5/2024
0.1.44-alpha01 124 2/5/2024
0.1.43-alpha01 126 2/5/2024
0.1.42-alpha01 119 2/5/2024
0.1.41-alpha01 117 2/5/2024
0.1.40-alpha01 128 2/5/2024
0.1.39-alpha01 110 2/5/2024
0.1.38-alpha01 130 2/5/2024
0.1.37-alpha01 121 2/5/2024
0.1.36-alpha01 119 2/5/2024
0.1.35-alpha01 120 2/5/2024
0.1.34-alpha01 128 2/5/2024
0.1.33-alpha01 125 2/5/2024
0.1.32-alpha01 119 2/5/2024
0.1.31-alpha01 114 2/5/2024
0.1.30-alpha01 120 2/5/2024
0.1.29-alpha01 124 2/5/2024
0.1.27-alpha01 121 2/5/2024
0.1.26-alpha01 123 2/5/2024
0.1.25-alpha01 117 2/5/2024
0.1.24-alpha01 119 2/4/2024
0.1.23-alpha01 126 2/4/2024
0.1.22-alpha01 128 2/4/2024
0.1.21-alpha01 129 2/4/2024
0.1.20-alpha01 126 2/4/2024
0.1.19-alpha01 117 2/4/2024
0.1.18-alpha01 123 2/4/2024
0.1.17-alpha01 116 2/4/2024
0.1.14-alpha01 130 2/4/2024
0.1.13-alpha01 121 2/4/2024
0.1.12-alpha01 108 2/4/2024
0.1.11-alpha01 124 2/4/2024
0.1.10-alpha01 125 2/4/2024
0.1.9-alpha01 99 2/4/2024
0.1.0-alpha01 118 2/4/2024