Quick Links

May 7, 2026 ยท View on GitHub

Build Status License Test Coverage CodeQL Ask DeepWiki

.NEXT (dotNext) is a set of powerful libraries designed for high-performance scenarios when your application expects near zero memory allocation and high flexibility. It is aimed to high-load microservices, database engines, actors, and various types of distributed applications. The feature list includes a rich set of efficient tools with low overhead:

All these things are implemented in 100% managed code on top of existing .NET API.

Quick Links

What's new

Release Date: 05-07-2026

This release contains major update of Raft implementation: leader can move forward to the next heartbeat round when the majority committed the log entry. Before 6.2.0, leader was able to commit the log entry when the majority confirmed the replication, however, for the next heartbeat round it had to wait all cluster members. The overall latency was impacted. Now, slow cluster member cannot impact the latency. The core of the replication is significantly modified to achieve this behavior:

  1. WAL binary format remains the same, so you can migrate existing data in the log smoothly
  2. Cluster configuration storage format is changed. It's not backward compatible
  3. Wire protocol for communication between cluster nodes is changed. It's not backward compatible

DotNext 6.2.0

  • Added T.ZeroBytes static extension property which returns zero bytes for particular numeric type

DotNext.Metaprogramming 6.2.0

  • Updated dependencies

DotNext.Unsafe 6.2.0

  • Updated dependencies

DotNext.Threading 6.2.0

  • Increased chance of object reusability when it's rented from and returned to BoundedObjectPool<T>
  • Added CancellationToken.Combine static extension method which allows to combine multiple cancellation tokens without CancellationTokenMultiplexer instance
  • Fixed documentation for SIEVE cache: 283

DotNext.IO 6.2.0

  • Updated dependencies

DotNext.Net.Cluster 6.2.0

  • Major performance improvement: leader advances forward to the next heartbeat round when the majority is committed the log entry, without waiting for the rest of nodes
  • Major performance improvement: AppendEntries RPC message doesn't carry cluster configuration data anymore, which reduces the network overhead
  • Introduced different types of read barriers in Raft
  • Cluster configuration system is now tightly integrated with WAL and replication mechanism
  • IRaftCluster.ReplicateAsync method return type is changed from ValueTask<bool> to ValueTask for simplicity
  • Smallish perf improvements of WriteAheadLog class

DotNext.AspNetCore.Cluster 6.2.0

  • Updated dependencies

DotNext.MaintenanceServices 1.2.0

  • Updated dependencies

Release & Support Policy

The libraries are versioned according to Semantic Versioning 2.0.

Version.NET compatibilitySupport Level
0.x.NET Standard 2.0:x:
1.x.NET Standard 2.0:x:
2.x.NET Standard 2.1:x:
3.x.NET Standard 2.1, .NET 5:x:
4.x.NET 6:x:
5.x.NET 8:white_check_mark:
6.x.NET 10:heavy_check_mark:

:x: - unsupported, :white_check_mark: - bug and security fixes only, :heavy_check_mark: - active development

Development Process

Philosophy of development process:

  1. All libraries in .NEXT family are available for various .NET form factors: Mono, WASM, NativeAOT
  2. Minimal set of dependencies
  3. Provide high-quality documentation
  4. Stay cross-platform
  5. Provide benchmarks

Users

.NEXT is used by several companies in their projects:

Copenhagen Atomics

Wargaming

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the .NET Foundation Code of Conduct. For more information see the Code of Conduct FAQ or contact conduct@dotnetfoundation.org with any additional questions or comments.