github akkadotnet/akka.net 1.5.0-beta3
Akka.NET v1.5.0-beta3

latest releases: 1.5.31, 1.5.30, 1.5.29...
pre-release21 months ago

1.5.0-beta3 February 27th 2023

Version 1.5.0-beta3 contains breaking API changes and new API changes for Akka.NET.

COMMITS LOC+ LOC- AUTHOR
14 68 794 Gregorius Soedharmo
5 997 498 Aaron Stannard
3 6 6 dependabot[bot]

1.5.0-beta2 February 20th 2023

Version 1.5.0-beta2 contains breaking API changes and new API changes for Akka.NET.

COMMITS LOC+ LOC- AUTHOR
8 260 942 Aaron Stannard
5 169 60 Gregorius Soedharmo

1.5.0-beta1 February 20th 2023

Version 1.5.0-beta1 contains breaking API changes and new API changes for Akka.NET.

Breaking Changes: Logging

In #6408 the entire ILoggingAdapter interface was rewritten in order to improve extensibility and performance (logging is now 30-40% faster in all cases and allocates ~50% fewer objects for large format strings).

All of the changes made here are source compatible, but not binary compatible - meaning that users and package authors will need to do the following:

  • Add using Akka.Event in all files that used the ILoggingAdapter and
  • Recompile.

NOTE: you can use a global using Akka.Event directive to do this solution / project-wide if your project supports C# 10 and / or .NET 6.

In addition to improving the performance of the ILoggingAdapter system, we've also made it more extensible - for instance, you can now globally configure the ILogMessageFormatter via the following HOCON:

akka { 
    loglevel=INFO,
    loggers=["Akka.Logger.Serilog.SerilogLogger, Akka.Logger.Serilog"]
    logger-formatter="Akka.Logger.Serilog.SerilogLogMessageFormatter, Akka.Logger.Serilog"
}

That will allow users to use the SerilogLogMessageFormatter globally throughout their applications - no more annoying calls like this inside individual actors that want to use semantic logging:

private readonly ILoggingAdapter _logger = Context.GetLogger<SerilogLoggingAdapter>();

Breaking Changes: Akka.Persistence.Sql.Common

This is a breaking change that should effect almost no users, but we deleted some old, bad ideas from the API surface and it might require all Akka.Persistence.Sql* plugins to be recompiled.

For what it's worth, Akka.Persistence.Sql.Common's performance has been improved significantly and we'll continue working on that with some additional API changes this week.

Other Changes and Additions

If you want to see the full set of changes made in Akka.NET v1.5.0 so far, click here.

COMMITS LOC+ LOC- AUTHOR
12 15 15 dependabot[bot]
11 1930 1278 Aaron Stannard
2 143 73 Sergey Popov
1 26 4 Thomas Stegemann
1 1 1 Michel van Os

1.5.0-alpha4 February 1st 2023

Version 1.5.0-alpha3 contains several bug fixes and new features to Akka.NET

If you want to see the full set of changes made in Akka.NET v1.5.0 so far, click here.

COMMITS LOC+ LOC- AUTHOR
27 30 30 dependabot[bot]
11 2212 165 Gregorius Soedharmo
4 741 208 Ismael Hamed
4 680 112 Aaron Stannard
3 87 178 Sergey Popov
1 843 0 Drew
1 2 2 Popov Sergey

1.5.0-alpha3 November 15th 2022

Akka.NET v1.5.0-alpha3 is a security patch for Akka.NET v1.5.0-alpha2 but also includes some other fixes.

Security Advisory: Akka.NET v1.5.0-alpha2 and earlier depend on an old System.Configuration.ConfigurationManager version 4.7.0 which transitively depends on System.Common.Drawing v4.7.0. The System.Common.Drawing v4.7.0 is affected by a remote code execution vulnerability GHSA-ghhp-997w-qr28.

We have separately created a security advisory for Akka.NET Versions < 1.4.46 and < 1.5.0-alpha3 to track this issue.

Fixes and Updates

You can see the full set of tracked issues for Akka.NET v1.5.0 here.

1.5.0-alpha2 October 17th 2022

Akka.NET v1.5.0-alpha2 is a maintenance release for Akka.NET v1.5 that contains numerous performance improvements in critical areas, including core actor message processing and Akka.Remote.

Performance Fixes

In sum you should expect to see total memory consumption, garbage collection, and throughput improve when you upgrade to Akka.NET v1.5.0-alpha2.

Other Features and Improvements

1.5.0-alpha1 August 22 2022

Akka.NET v1.5.0-alpha1 is a major release that contains a lot of code improvement and rewrites/refactors. Major upgrades to Akka.Cluster.Sharding in particular.

Deprecation

Some codes and packages are being deprecated in v1.5

Changes

Akka

Akka.Cluster

Akka.Cluster.Sharding

The Akka.Cluster.Sharding changes in Akka.NET v1.5 are significant, but backwards compatible with v1.4 and upgrades should happen seamlessly.

Akka.Cluster.Sharding's state-store-mode has been split into two parts:

  • CoordinatorStore
  • ShardStore

Which can use different persistent mode configured via akka.cluster.sharding.state-store-mode & akka.cluster.sharding.remember-entities-store.

Possible combinations:

state-store-mode remember-entities-store CoordinatorStore mode ShardStore mode
persistence (default) - (ignored) persistence persistence
ddata ddata ddata ddata
ddata eventsourced (new) ddata persistence

There should be no breaking changes from user perspective. Only some internal messages/objects were moved.
There should be no change in the PersistentId behavior and default persistent configuration (akka.cluster.sharding.state-store-mode)

This change is designed to speed up the performance of Akka.Cluster.Sharding coordinator recovery by moving remember-entities recovery into separate actors - this also solves major performance problems with the ddata recovery mode overall.

The recommended settings for maximum ease-of-use for Akka.Cluster.Sharding going forward will be:

akka.cluster.sharding{
  state-store-mode = ddata
  remember-entities-store = eventsourced
}

However, for the sake of backwards compatibility the Akka.Cluster.Sharding defaults have been left as-is:

akka.cluster.sharding{
  state-store-mode = persistence
  # remember-entities-store (not set - also uses legacy Akka.Persistence)
}

Switching over to using remember-entities-store = eventsourced will cause an initial migration of data from the ShardCoordinator's journal into separate event journals going forward - this migration is irreversible without taking the cluster offline and deleting all Akka.Cluster.Sharding-related data from Akka.Persistence, so plan accordingly.

Akka.Cluster.Tools

Akka.Persistence.Query

Akka.Remote

Akka.Streams

Akka.TestKit

1.4.37 April 14 2022

Akka.NET v1.4.37 is a minor release that contains some minor bug fixes.

If you want to see the full set of changes made in Akka.NET v1.4.37, click here.

COMMITS LOC+ LOC- AUTHOR
3 15 4 Gregorius Soedharmo
1 2 2 dependabot[bot]

1.4.36 April 4 2022

Akka.NET v1.4.36 is a minor release that contains some bug fixes. Most of the changes have been aimed at improving our web documentation and code cleanup to modernize some of our code.

Bug fixes:

If you want to see the full set of changes made in Akka.NET v1.4.36, click here.

COMMITS LOC+ LOC- AUTHOR
5 274 33 Gregorius Soedharmo
4 371 6 Ebere Abanonu
3 9 3 Aaron Stannard
1 34 38 Ismael Hamed
1 2 3 Adrian Leonhard

1.4.35 March 18 2022

Akka.NET v1.4.35 is a minor release that contains some bug fixes. Most of the changes have been aimed at improving our web documentation and code cleanup to modernize some of our code.

Bug fixes:

If you want to see the full set of changes made in Akka.NET v1.4.35, click here.

COMMITS LOC+ LOC- AUTHOR
6 2178 174 Aaron Stannard
2 43 33 Gregorius Soedharmo
1 71 19 Ismael Hamed
1 1 1 dependabot[bot]

1.4.34 March 7 2022

Akka.NET v1.4.34 is a minor release that contains some bug fixes. Most of the changes have been aimed at improving our web documentation and code cleanup to modernize some of our code.

Bug fixes:

Improvements:

If you want to see the full set of changes made in Akka.NET v1.4.34, click here.

COMMITS LOC+ LOC- AUTHOR
12 1177 718 Ebere Abanonu
6 192 47 Gregorius Soedharmo
3 255 167 Ismael Hamed
1 3 0 Aaron Stannard
1 126 10 Drew

1.4.33 February 14 2022

Akka.NET v1.4.33 is a minor release that contains some bug fixes. Most of the changes have been aimed at improving our web documentation and code cleanup to modernize some of our code. The most important bug fix is the actor Props memory leak when actors are cached inside Akka.Remote.

If you want to see the full set of changes made in Akka.NET v1.4.33, click here.

COMMITS LOC+ LOC- AUTHOR
63 1264 1052 Ebere Abanonu
9 221 27 Brah McDude
8 2537 24 Gregorius Soedharmo
2 4 1 Aaron Stannard
1 2 2 ignobilis

1.4.32 January 19 2022

Akka.NET v1.4.32 is a minor release that contains some API improvements. Most of the changes have been aimed at improving our web documentation and code cleanup to modernize some of our code. One big improvement in this version release is the Hyperion serialization update.

Hyperion 0.12.0 introduces a new deserialization security mechanism to allow users to selectively filter allowed types during deserialization to prevent deserialization of untrusted data described here. This new feature is exposed in Akka.NET in HOCON through the new akka.actor.serialization-settings.hyperion.allowed-types settings or programmatically through the new WithTypeFilter method in the HyperionSerializerSetup class.

The simplest way to programmatically describe the type filter is to use the convenience class TypeFilterBuilder:

var typeFilter = TypeFilterBuilder.Create()
    .Include<AllowedClassA>()
    .Include<AllowedClassB>()
    .Build();
var setup = HyperionSerializerSetup.Default
    .WithTypeFilter(typeFilter);

You can also create your own implementation of ITypeFilter and pass an instance of it into the WithTypeFilter method.

For complete documentation, please read the Hyperion readme on filtering types for secure deserialization.

If you want to see the full set of changes made in Akka.NET v1.4.32, click here.

COMMITS LOC+ LOC- AUTHOR
11 1752 511 Aaron Stannard
8 1433 534 Gregorius Soedharmo
3 754 222 Ismael Hamed
2 3 6 Brah McDude
2 227 124 Ebere Abanonu
1 331 331 Sean Killeen
1 1 1 TangkasOka

1.4.31 December 20 2021

Akka.NET v1.4.31 is a minor release that contains some bug fixes.

Akka.NET v1.4.30 contained a breaking change that broke binary compatibility with all Akka.DI plugins.
Even though those plugins are deprecated that change is not compatible with our SemVer standards
and needed to be reverted. We regret the error.

Bug fixes:

COMMITS LOC+ LOC- AUTHOR
1 9 2 Gregorius Soedharmo

1.4.30 December 20 2021

Akka.NET v1.4.30 is a minor release that contains some enhancements for Akka.Streams and some bug fixes.

New features:

Bug fixes:

If you want to see the full set of changes made in Akka.NET v1.4.30, click here.

COMMITS LOC+ LOC- AUTHOR
6 75 101 Aaron Stannard
2 53 5 Brah McDude
2 493 12 Drew
1 289 383 Andreas Dirnberger
1 220 188 Gregorius Soedharmo
1 173 28 Ismael Hamed

1.4.29 December 13 2021

Maintenance Release for Akka.NET 1.4
Akka.NET v1.4.29 is a minor release that contains some enhancements for Akka.Streams and some bug fixes.

New features:

Documentation:

Bug fixes:

If you want to see the full set of changes made in Akka.NET v1.4.29, click here.

COMMITS LOC+ LOC- AUTHOR
7 82 51 Aaron Stannard
6 1381 483 Gregorius Soedharmo
4 618 85 Andreas Dirnberger
1 4 4 Luca V
1 1 1 dependabot[bot]

1.4.28 November 10 2021

Maintenance Release for Akka.NET 1.4
Akka.NET v1.4.28 is a minor release that contains some enhancements for Akka.Streams and some bug fixes.

New Akka.Streams Stages
Akka.NET v1.4.28 includes two new Akka.Streams stages:

  • Source.Never - a utility stage that never emits any elements, never completes, and never fails. Designed primarily for unit testing.
  • Flow.WireTap - the WireTap stage attaches a given Sink to a Flow without affecting any of the upstream or downstream elements. This stage is designed for performance monitoring and instrumentation of Akka.Streams graphs.

In addition to these, here are some other changes introduced Akka.NET v1.4.28:

If you want to see the full set of changes made in Akka.NET v1.4.28, click here.

COMMITS LOC+ LOC- AUTHOR
16 2707 1911 Sean Killeen
8 1088 28 Ismael Hamed
6 501 261 Gregorius Soedharmo
5 8 8 dependabot[bot]
4 36 86 Aaron Stannard
1 1 0 Jarl Sveinung Flø Rasmussen

Special thanks for @SeanKilleen for contributing extensive Markdown linting and automated CI checks for that to our documentation! #5312

1.4.27 October 11 2021

Maintenance Release for Akka.NET 1.4
Akka.NET v1.4.27 is a small release that contains some major performance improvements for Akka.Remote.

Performance Fixes
In RemoteActorRefProvider address paring, caching and resolving improvements Akka.NET contributor @Zetanova introduced some major changes that make the entire ActorPath class much more reusable and more parse-efficient.

Our last major round of Akka.NET performance improvements in Akka.NET v1.4.25 produced the following:

OSVersion:                         Microsoft Windows NT 6.2.9200.0
ProcessorCount:                    16
ClockSpeed:                        0 MHZ
Actor Count:                       32
Messages sent/received per client: 200000  (2e5)
Is Server GC:                      True
Thread count:                      111

Num clients, Total [msg], Msgs/sec, Total [ms]
         1,  200000,    130634,    1531.54
         5, 1000000,    246975,    4049.20
        10, 2000000,    244499,    8180.16
        15, 3000000,    244978,   12246.39
        20, 4000000,    245159,   16316.37
        25, 5000000,    243333,   20548.09
        30, 6000000,    241644,   24830.55

In Akka.NET v1.4.27 those numbers now look like:

OSVersion:                         Microsoft Windows NT 6.2.9200.
ProcessorCount:                    16                            
ClockSpeed:                        0 MHZ                         
Actor Count:                       32                            
Messages sent/received per client: 200000  (2e5)                 
Is Server GC:                      True                          
Thread count:                      111                           
                                                                 
Num clients, Total [msg], Msgs/sec, Total [ms]                   
         1,  200000,    105043,    1904.29                       
         5, 1000000,    255494,    3914.73                       
        10, 2000000,    291843,    6853.30                       
        15, 3000000,    291291,   10299.75                       
        20, 4000000,    286513,   13961.68                       
        25, 5000000,    292569,   17090.64                       
        30, 6000000,    281492,   21315.35

To put these numbers in comparison, here's what Akka.NET's performance looked like as of v1.4.0:

Num clients (actors)    Total [msg] Msgs/sec    Total [ms]
1   200000  69736   2868.60
5   1000000 141243  7080.98
10  2000000 136771  14623.27
15  3000000 38190   78556.49
20  4000000 32401   123454.60
25  5000000 33341   149967.08
30  6000000 126093  47584.92

We've made Akka.Remote consistently faster, more predictable, and reduced total memory consumption significantly in the process.

You can see the full set of changes introduced in Akka.NET v1.4.27 here

COMMITS LOC+ LOC- AUTHOR
3 89 8 Aaron Stannard
1 856 519 Andreas Dirnberger
1 3 4 Vadym Artemchuk
1 261 233 Gregorius Soedharmo
1 1 1 dependabot[bot]

1.4.26 September 28 2021

Maintenance Release for Akka.NET 1.4
Akka.NET v1.4.26 is a very small release that addresses one wire format regression introduced in Akka.NET v1.4.20.

Bug Fixes and Improvements

You can see the full set of changes introduced in Akka.NET v1.4.26 here

COMMITS LOC+ LOC- AUTHOR
4 99 96 Gregorius Soedharmo
3 79 5 Aaron Stannard
1 1 1 dependabot[bot]

1.4.25 September 08 2021

Maintenance Release for Akka.NET 1.4
Akka.NET v1.4.25 includes some significant performance improvements for Akka.Remote and a number of important bug fixes and improvements.

Bug Fixes and Improvements

Performance Improvements
Using our standard RemotePingPong benchmark, the difference between v1.4.24 and v1.4.24 is significant:

v1.4.24

OSVersion:                         Microsoft Windows NT 6.2.9200.0 
ProcessorCount:                    16                              
ClockSpeed:                        0 MHZ                           
Actor Count:                       32                              
Messages sent/received per client: 200000  (2e5)                   
Is Server GC:                      True                            
Thread count:                      111                             
                                                                   
Num clients, Total [msg], Msgs/sec, Total [ms]                     
         1,  200000,     96994,    2062.08                         
         5, 1000000,    194818,    5133.93                         
        10, 2000000,    198966,   10052.93                         
        15, 3000000,    199455,   15041.56                         
        20, 4000000,    198177,   20184.53                         
        25, 5000000,    197613,   25302.80                         
        30, 6000000,    197349,   30403.82                         

v1.4.25

OSVersion:                         Microsoft Windows NT 6.2.9200.0
ProcessorCount:                    16
ClockSpeed:                        0 MHZ
Actor Count:                       32
Messages sent/received per client: 200000  (2e5)
Is Server GC:                      True
Thread count:                      111

Num clients, Total [msg], Msgs/sec, Total [ms]
         1,  200000,    130634,    1531.54
         5, 1000000,    246975,    4049.20
        10, 2000000,    244499,    8180.16
        15, 3000000,    244978,   12246.39
        20, 4000000,    245159,   16316.37
        25, 5000000,    243333,   20548.09
        30, 6000000,    241644,   24830.55

This represents a 24% overall throughput improvement in Akka.Remote across the board. We have additional PRs staged that should get aggregate performance improvements above 40% for Akka.Remote over v1.4.24 but they didn't make it into the Akka.NET v1.4.25 release.

You can see the full set of changes introduced in Akka.NET v1.4.25 here

COMMITS LOC+ LOC- AUTHOR
32 1301 400 Aaron Stannard
4 358 184 Andreas Dirnberger
3 414 149 Gregorius Soedharmo
3 3 3 dependabot[bot]
2 43 10 zbynek001
1 14 13 tometchy
1 139 3 carlcamilleri

1.4.24 August 17 2021

Maintenance Release for Akka.NET 1.4

Bug Fixes and Improvements

You can see the full set of changes introduced in Akka.NET v1.4.24 here

COMMITS LOC+ LOC- AUTHOR
5 360 200 Aaron Stannard
3 4 4 dependabot[bot]
1 548 333 Arjen Smits
1 42 19 Martijn Schoemaker
1 26 27 Andreas Dirnberger
1 171 27 Gregorius Soedharmo

1.4.23 August 09 2021

Maintenance Release for Akka.NET 1.4

Akka.NET v1.4.23 is designed to patch an issue that occurs on Linux machines using Akka.Cluster.Sharding with akka.cluster.sharding.state-store-mode=ddata and akka.cluster.sharding.remember-entities=on: "System.DllNotFoundException: Unable to load shared library 'lmdb' or one of its dependencies"

In Akka.NET v1.4.21 we added built-in support for Akka.DistributedData.LightningDb for use with the remember-entities setting, but we never received any reports about this issue until shortly after v1.4.22 was released. Fundamentally, the problem was that our downstream dependency, Lightning.NET, doesn't include any of the necessary Linux native binaries in their distributions currently. So in the meantime, we've published our own "vendored" distribution of Lightning.NET to NuGet until a new official one is released that includes these binaries.

There are some other small fixes included in Akka.NET v1.4.23 and you can read about them here.

COMMITS LOC+ LOC- AUTHOR
8 136 2803 Aaron Stannard
2 61 3 Gregorius Soedharmo

1.4.22 August 05 2021

Maintenance Release for Akka.NET 1.4

Akka.NET v1.4.22 is a fairly large release that includes an assortment of performance and bug fixes.

Performance Fixes
Akka.NET v1.4.22 includes a significant performance improvement for Ask<T>, which now requires 1 internal await operation instead of 3:

Before

Method Iterations Mean Error StdDev Gen 0 Gen 1 Gen 2 Allocated
RequestResponseActorSelection 10000 83.313 ms 0.7553 ms 0.7065 ms 4666.6667 - - 19 MB
CreateActorSelection 10000 5.572 ms 0.1066 ms 0.1140 ms 953.1250 - - 4 MB

After

Method Iterations Mean Error StdDev Gen 0 Gen 1 Gen 2 Allocated
RequestResponseActorSelection 10000 71.216 ms 0.9885 ms 0.9246 ms 4285.7143 - - 17 MB
CreateActorSelection 10000 5.462 ms 0.0495 ms 0.0439 ms 953.1250 - - 4 MB

Bug Fixes and Improvements

You can see the full set of changes introduced in Akka.NET v1.4.22 here

Akka.Cluster.Sharding.RepairTool
In addition to the work done on Akka.NET itself, we've also created a separate tool for cleaning up any left-over data in the event of an Akka.Cluster.Sharding cluster running with akka.cluster.sharding.state-store-mode=persistence was terminated abruptly before it had a chance to cleanup.

We've added documentation to the Akka.NET website that explains how to use this tool here: https://getakka.net/articles/clustering/cluster-sharding.html#cleaning-up-akkapersistence-shard-state

And the tool itself has documentation here: https://github.com/petabridge/Akka.Cluster.Sharding.RepairTool

COMMITS LOC+ LOC- AUTHOR
16 1254 160 Gregorius Soedharmo
7 104 83 Aaron Stannard
5 8 8 dependabot[bot]
4 876 302 Ismael Hamed
2 3942 716 zbynek001
2 17 3 Andreas Dirnberger
1 187 2 andyfurnival
1 110 5 Igor Fedchenko

Changes:

See More
  • 99bbd80 Remove all obsolete methods from Akka.Cluster.Sharding (#6441)
  • 750acb3 Revert obsolete DData constructor changes (#6451)
  • f4078cc Remove obsolete methods from Akka.DistributedData (#6443)
  • d25b669 Remove obsolete methods and properties from Akka.Cluster (#6445)
  • 9c6501c Set akka.persistence.query.journal.sql.max-concurrent-queries = 100 by default (#6449)
  • 994f1e7 Append message content to deadletter log message (#6448)
  • 4da2f29 Bump Fsharp.Core from 6.0.6 to 7.0.200 (#6402)
  • 0bc2464 Akka.Persistence.Query Throttling implementation - "QueryPermitter" (#6436)
  • f0ff08a Remove obsolete methods from Akka.Persistence (#6447)
  • 90e8770 Remove obsolete methods from Akka.Cluster.Tools (#6442)
  • da1fceb Akka.Streams: memory-optimize ActorMaterializer HOCON injection (#6440)
  • 05cfaca Remove DeprecatedSchedulerExtensions (#6438)
  • 0e75c68 Remove TypedActor (#6437)
  • 30e762c added v1.5.0-beta2 release notes (#6434)
  • bd793f0 Bump Google.Protobuf from 3.21.12 to 3.22.0 (#6410)
  • 32b832b Akka.Persistence: improve AsyncWriteJournal and PersistentActor performance (#6432)
  • e58b041 Remove unsafe implicit conversion operators in AtomicBoolean and AtomicReference<T> (#6429)
  • ac3c06a Standardize on C# 11.0 (#6431) [ #11 ]
  • ee2513c close #5506 - deleted PersistenceBenchmark (#6428)
  • 22255e3 Fix racy Akka.Streams.IO.Tcp spec (#6430)
  • 0e0bd83 move DateTime / TimeSpan extension APIs out of Akka.Util and into Akka.Cluster.Metrics (#6427)
  • e5d8c30 Harden Option<T> by disallowing null value (#6426)
  • 9779a37 delete Akka.Util.,Resolver (#6425)
  • 053199e ClusterSharding should clean its internal cache if region/proxy died (#6424)
  • 46d680f [TESTKIT] Reintroduce old code and mark them obsolete (#6420)
  • b570276 cleaned up build warnings (#6418)
  • 90bedf2 Bump MultinodeTestAdapter to 1.5.0-beta1 (#6422)
  • 4f98a13 Add K to the DateTime format string to include TZ information (#6419)
  • c0b81d9 Akka.NET v1.5.0-beta1 Release notes (#6416)
  • e8e3569 Customizable ILogMessageFormatter across entire ActorSystem (#6413)
  • bf3b5e2 Bump Verify.Xunit from 19.9.3 to 19.10.0 (#6415)
  • 797894c Delete unnecessary / bad Sql.Common.Journal subscriptions (#6412)
  • 8fb39e5 v1.5 logging (version 2) (#6408)
  • c9ccc25 Bump Microsoft.Extensions.Hosting.WindowsServices from 6.0.1 to 7.0.0 (#6240)
  • 1065929 Bump Microsoft.Data.SQLite from 7.0.2 to 7.0.3 (#6400)
  • 8423c80 Bump Microsoft.Extensions.ObjectPool from 7.0.2 to 7.0.3 (#6401)
  • b138778 Bump Microsoft.Extensions.Hosting from 6.0.1 to 7.0.1 (#6403)
  • 0b8f611 added EventStreamBenchmark (#6405)
  • ff77b28 Fix persistence allocations #5505. (#6384)
  • 5a077d4 Bump Verify.Xunit from 19.9.2 to 19.9.3 (#6399)
  • c5a52cb harden timing on racy Akka.Streams specs (#6397)
  • 74ff4f2 fixed ordering assertion in AtLeastOnceDelivery_must_warn_about_unconfirmed_messages (#6396)
  • 9a55cba harden racy ActorCellSpecs (#6395)
  • 06b1d29 fixed GracefulStop DocFx warnings (#6393)
  • ba142bc add WatchAysnc methods for monitoring actor lifecycles outside of Akka.NET (#6102)
  • 192e9a8 harden ClusterLogVerboseSpec (#6390)
  • 2f5aab2 Fix for issue #6377 (#6378)
  • 83341fa Fix of EventFilter.And from Akka.testKit when one parameter is string (#6316). (#6371)
  • c5bdeae Bump Verify.DiffPlex from 2.1.0 to 2.2.0 (#6387)
  • 48bf02f Bump Verify.Xunit from 19.8.3 to 19.9.2 (#6386)
  • 905ff73 Update tutorial-1.md (#6382)
  • ff2b321 Bump LightningDB from 0.14.1 to 0.15.0 (#6385)
  • 5b8c04f Bump Microsoft.Bcl.AsyncInterfaces from 6.0.0 to 7.0.0 (#6233)
  • aa7eca0 Bump Verify.Xunit from 19.8.2 to 19.8.3 (#6383)
  • 8156ecc Bump Verify.Xunit from 19.8.1 to 19.8.2 (#6381)
  • 233fc34 Bump Verify.Xunit from 19.7.1 to 19.8.1 (#6380)
  • 918688f Update RELEASE_NOTES.md for 1.5.0-alpha4 release (#6379)
  • 8dfa8f8 [PORT #6366] set default PoolRouter SupervisorStrategy to Restart (#6370) [ #6295 ]
  • d3b89da Fix PersistenceIdsPublisher hung on failure messages (#6374)
  • a447760 Type of LogEvent of UnhandledMessage was changed to INFO in Akka.TestKit (#6354). (#6360)
  • d43a8d0 Persistence-views docs has been removed (#6291). (#6363)
  • fb4fe01 Fixes FailChunkExecution does not handle DbExceptions wrapped in an AggregateException (#6361)
  • a7f4d3f Bump Verify.Xunit from 19.7.0 to 19.7.1 (#6357)
  • 303ad3c Add API for UntypedActorWithStash types (#6327)
  • 1aff6c7 Bump Verify.Xunit from 19.6.0 to 19.7.0 (#6356)
  • 7b1090d Added support for UnrestrictedStash (#6325)
  • d0d1369 Bump Microsoft.Extensions.ObjectPool from 7.0.1 to 7.0.2 (#6340)
  • 2c3b5db Documentation fix #6342. (#6343)
  • 459a160 Bump Swashbuckle.AspNetCore from 6.4.0 to 6.5.0 (#6345)
  • c553e0d Bump Verify.DiffPlex from 2.0.1 to 2.1.0 (#6337)
  • 0b3e8bc Bump Verify.Xunit from 19.5.0 to 19.6.0 (#6338)
  • 91a9086 Bump Microsoft.Data.SQLite from 7.0.1 to 7.0.2 (#6339)
  • 31f40e2 Documentation fix of ActorRefExtensions.IsNobody #6313. (#6334)
  • 0070079 [PORT] make FutureActorRef<T> unsealed (#6331) [ #6322 ]
  • 965e4c3 Add support to ByteString for copying to/from Memory and Span (#6026)
  • 4d124ce Read stash capacity from actor's mailbox or dispatcher configuration (#6323)
  • 124a378 Add DI router pool unit tests (#6319)
  • b7241f5 Move Channel Stages from Alpakka to main project. (#6268)
  • 134a35b Bump Microsoft.Extensions.DependencyInjection from 6.0.1 to 7.0.0 (#6234)
  • aa9d7f3 Bump Microsoft.Extensions.ObjectPool from 6.0.10 to 7.0.1 (#6308)
  • 0d9fcb8 Bump Microsoft.Extensions.Http from 6.0.0 to 7.0.0 (#6243)
  • 2ffe584 Bump Google.Protobuf from 3.21.11 to 3.21.12 (#6311)
  • 3f8988c Bump Verify.DiffPlex from 2.0.0 to 2.0.1 (#6314)
  • f9f84e6 Bump Verify.Xunit from 19.3.0 to 19.5.0 (#6315)
  • e5f3cdd Bump Microsoft.NET.Test.Sdk from 17.4.0 to 17.4.1 (#6312)
  • 52ecb0c Bump Microsoft.Data.SQLite from 7.0.0 to 7.0.1 (#6309)
  • 780af3a Bump Newtonsoft.Json in /src/examples/PersistenceExample.FsApi (#6303)
  • 39156a6 Bump Newtonsoft.Json (#6302)
  • 3b18a2b Bump Newtonsoft.Json in /src/examples/Stocks/SymbolLookup (#6304)
  • 3c5ad25 Bump Newtonsoft.Json in /src/examples/FaultTolerance (#6305)
  • 4e47543 Bump Newtonsoft.Json (#6307)
  • 5cb5e74 Bump Newtonsoft.Json (#6306)
  • ec1e469 [Port #6294] add simple actor telemetry (#6299) [ #6293 ]
  • fddecf1 Exception serialization support for built-in messages (#6297) (#6300) [ #3903 ]
  • 4b7badc Bump Google.Protobuf from 3.21.10 to 3.21.11 (#6298)
  • bedce24 [Backports #6290] Akka:Streams Resolve IAsyncEnumerator.DisposeAsync bug (#6296) [ #6280 ]
  • ae953d0 Added .NET 7.0 support for release pipelines (#6288)
  • 5605d83 Add ReceiveAsync feature to Akka.TestKit TestActorRef (#6281)
  • de55b33 Bump Google.Protobuf from 3.21.9 to 3.21.10 (#6284)
  • 020cb7d V1.4 sync up (#6282) [ #6264, #6263, #6262, #6276, #6277, #6195 ]
  • 16888b2 Bump Microsoft.NET.Test.Sdk from 17.3.2 to 17.4.0 (#6236)
  • 2ea44e3 Bump Verify.Xunit from 19.1.0 to 19.3.0 (#6278)
  • 680e101 Fix serilog aspnet docs (#6261)
  • b90c129 Bump NUnit3TestAdapter from 4.3.0 to 4.3.1 (#6259)
  • 3f7d398 Bump Microsoft.Data.SQLite from 6.0.10 to 7.0.0 (#6239)
  • 76b1886 Remove Akka.Tests.Shared.Internals from Akka.Streams.TestKit dependency (#6258)
  • 88ebfa9 Update cluster SBR documentation on lease and how it works (#6257)
  • d6564d5 Update RELEASE_NOTES.md for 1.5.0-alpha3 release (#6256)
  • 1e2eda4 Add CodeQL vulnerability scanning (#6254)
  • 68a969a Bump Verify.Xunit from 19.0.0 to 19.1.0 (#6249)
  • c3a288f Bump Verify.Xunit from 18.3.0 to 19.0.0 (#6244)
  • 5e66bf0 Upgrade to Newtonsoft.Json 13.0.1 as minimum version (#6230)
  • 94756d6 Upgrade to System.Configuration.ConfigurationManager 6.0.1 (#6229)
  • 5665013 Increase dependabot open PR limit (#6227)
  • cebc498 Improve Akka.Cluster.Metrics collected values (#6203) (#6225)
  • 39a8f9e Bump NUnit3TestAdapter from 4.2.1 to 4.3.0 (#6219)
  • ab93f9a Bump Verify.Xunit from 18.1.1 to 18.3.0 (#6222)
  • c9c0b44 Report cause for Akka/IO TCP CommandFailed events (#6221)
  • cdc2b85 Bump Verify.Xunit from 18.0.0 to 18.1.1 (#6218)
  • 471922a Remove suspicious code fragment in ActorMaterializer.cs (#6216)
  • 78d753f Bump Google.Protobuf from 3.21.8 to 3.21.9 (#6217)
  • 8bf4a61 Update PersistenceExample to use the latest Akka.NET version (#6213)
  • 108c701 Make sure that DeadLetters published by DistributedPubSubMediator contain full context of topic (#6209) (#6212)
  • 4bcf3e6 Bump Verify.DiffPlex from 1.3.0 to 2.0.0 (#6210)
  • 7c2bbcb Bump Verify.Xunit from 17.10.2 to 18.0.0 (#6211)
  • 1639765 Update app.conf (#6208)
  • bf4e7b4 Update testing-actor-systems.md (#6207)
  • ec2d4ba [PORT #6201] Revert ConfigurationException due to binary incompatibility (#6204)
  • b45065e Bump Google.Protobuf from 3.21.7 to 3.21.8 (#6199)
  • a69d778 Update RELEASE_NOTES.md for 1.5.0-alpha2 release (#6198)
  • c78cec6 removed boxing allocations inside FSM (#6183) (#6196)
  • 65f392a Bump Microsoft.Extensions.ObjectPool from 5.0.5 to 6.0.10 (#6170)
  • e26b196 Bump Microsoft.Data.SQLite from 6.0.9 to 6.0.10 (#6179)
  • ee3a26b Bump Microsoft.Extensions.Hosting.WindowsServices from 6.0.0 to 6.0.1 (#6172)
  • 0675bd9 Fix OldCoordinatorStateMigrationEventAdapter.Manifest (#6176)
  • f5d5838 add HashCodeMEssageExtractor Factory method (#6173)
  • 0b944de Bump Microsoft.Extensions.DependencyInjection from 6.0.0 to 6.0.1 (#6171)
  • 695fada Fix DbCommand.CommandTimeout (#6175)
  • eba7bf5 [PORT #6167] Improve error/exception message for misconfigured cluster provider (#6169)
  • d82cdc2 Eliminate DefaultLogMessageFormatter allocations (#6166)
  • c508e3e Update version numbers in spellcheck pipeline (#6165)
  • b6c5e93 Logging Benchmarks (#6164)
  • 04a24be Merge pull request #6162 from Aaronontheweb/backport-v1.4.44
  • 43ba211 fixed API port issues and API approvals
  • 2131146 make DedicatedThreadPool.QueueUserWorkItem<T> generic (#6156)
  • 18aae3b Reduce FSM<TState, TData> allocations (#6145) [ #2560 ]
  • e308e28 Make Envelope a reference type again (#6137)
  • ef186a4 added actor messaging pressure benchmark (#6147)
  • 2032ff9 remove delegate allocation from ForkJoinDispatcher and DedicatedThreadPool (#6143)
  • 7855518 close #2560 - added performance benchmarks for FSM (#6144)
  • dbdc4e1 Added Dispatcher Benchmarks (#6140)
  • 352d9a1 eliminate mailbox delegate allocations (#6134)
  • 70c57df WIP queue benchmarks (#6127)
  • bf543ff Fix unhandled RememberShards by DDataShardCoordinator (#6160)
  • 6259295 Bump Microsoft.NET.Test.Sdk from 17.2.0 to 17.3.2 (#6155)
  • dc616b9 Bump Tmds.ExecFunction from 0.5.0 to 0.6.0 (#6154)
  • d683312 Block Xunit2 TestKit until unit test logger is ready (#6152)
  • 6655d63 Bump Google.Protobuf from 3.21.1 to 3.21.7 (#6141)
  • 21d8b3a Bump Microsoft.Data.SQLite from 6.0.4 to 6.0.9 (#6150)
  • 9575f22 Bump FluentDateTime from 2.0.0 to 2.1.0 (#6151)
  • 7780131 Bump Verify.Xunit from 17.1.4 to 17.10.2 (#6149)
  • e5c7c16 Bump Swashbuckle.AspNetCore from 6.3.0 to 6.4.0 (#6148)
  • 24d1d7f fix Shard.LoadingEntityIdsFailed log message (#6146)
  • 213ebb6 Bump XunitVersion from 2.4.1 to 2.4.2 (#6138)
  • 425aef0 Bump Microsoft.Extensions.Hosting from 5.0.0 to 6.0.1 (#5605)
  • dbfc802 Bump NUnit3TestAdapter from 4.1.0 to 4.2.1 (#6139)
  • 5c224c4 Bump BenchmarkDotNet from 0.13.1 to 0.13.2 (#6130)
  • c813d9e Bump Verify.DiffPlex from 1.2.0 to 1.3.0 (#6129)
  • 5d6ae6a Bump LightningDB from 0.14.0 to 0.14.1 (#6128)
  • a4bbd85 Bump Fsharp.Core from 6.0.1 to 6.0.6 (#6096)
  • 507d3c8 1.5 Akka.Cluster.Sharding migration documentation (#6124) [ #6123 ]
  • 8daa482 Allow LogLevel template to display milliseconds (#6126)
  • a04daec [Port #6120] Fix GetEntityLocation use wrong actor path (#6121)
  • cc84ca5 [PORT #6111] cleaned up NuGet package descriptions (#6114)
  • 6f298a6 made README.md NuGet-friendly (#6113)
  • 8fcaaa4 cherry-picked from 231c8c9 (#6107)
  • b0529e9 Update Linux AzDo to use ubuntu-latest (#6104)
  • daa2b9b Add graceful stop specs (#6103)
  • 4c2f30e Remove the PatternMatch class (#6099)
  • 46d02f9 Change TestKitBase.InitializeTest to virtual so it can be deferred (#6093) (#6095)
  • 015de37 [Akka.TestKit] TestKitBase should take arbitrary ActorSystem without throwing (#6092)
  • 3b4ed91 Require verbose logging for more gossip send/receive log statements. (#6089)
  • a55cb9e regenerate all protobuf messages (#6082)
  • e3511dc Extend DistributedData Replicator settings with VerboseDebugLogging switch (#6080)
  • 79c7afc delete AzCopy from tools directory` (#6081)
  • eee47ac AkkaPduCodec serializer benchmark (#6078)
  • 3a90fe2 add BenchmarkDotNet results to .gitignore (#6079)
  • 1b96294 updated all copyright headers to 2022 (#6076)
  • 95b3c31 added missing redirect for build documentation (#6075)
  • 0228d5d [Remoting] Add spec for Status.Failure on Ask operation (#6072)
  • b956e4b enabled Directive.Resume to log the full Exception (#6071)
  • c948581 Update RELEASE_NOTES.md for 1.5.0-alpha1 release (#6069)
  • 9acaf00 Cluster singleton should consider Member AppVersion during hand over. (#6065)
  • d55f67f [Cluster] Enable HeartbeatResponse message type (#6063)
  • 899c3a2 Singleton class and settings based on current Akka Typed implementation (#6050)
  • 207e7b8 [SBR] Ignore reachability records for invalid nodes (#6064)
  • 9410a4c Tutorial improvements (#6057)
  • 03de287 Fixes log and uses cluster sharding LeaseSettings, if configured, in ShardedDaemonProcess (#6058)
  • f571e26 Fix Streams.Tests.Dsl.MergeHub_must_work_with_long_streams_when_buffer_size_is_1 (#6054)
  • 411c800 Fix faulty AddLogger in LoggingBus (#6028) (#6053)
  • 6f28f17 migrate project chat from Gitter to Discord (#6052)
  • b1eb688 Make JoinAsync and JoinSeedNodesAsync more robust by checking cluster UP status (#6033)
  • 59cda86 Fix attempt, AsyncEnumerableSpec was hung (#6049)
  • e9b643f Improve Akka.Actor.Cancelable (#6032)
  • 0c92aac cleaned up IAsyncEnumerable Source to use local functions (#6045)
  • af513b0 Add IAsyncEnumerable Akka.Streams Source (#6044)
  • 32040a3 Fix ClusterLogSpec, EventFilter does not play nice with Within (#6041)
  • b21f5fa SSL Configuration Fails even EnbleSsl property is set to false (#6038)
  • 4b667c6 harden ClusterLogSpec (#6031)
  • 0efdc18 Fix ClusterSpec CoordinatedShutdown (#6034)
  • a626bd9 harden HubSpec duration (#6030)
  • 0c9677f Add ValueTask support to PipeTo (#6025)
  • 6839192 [Async TestKit] Convert Akka.Streams.Tests to async - Dsl.UnfoldResourceAsyncSourceSpec (#6023)
  • 566a46c [Async TestKit] Fix racy specs (#6027)
  • 6acea81 [Async TestKit] Convert Akka.Streams.Tests Dsl.TickSourceSpec (#6024)
  • 7da2aa7 Added TimeBasedUuid offset (#5995)
  • d16b934 Convert Akka.Streams.Tests to async - Extra.FlowTimedSpec (#5993)
  • f3469d7 [Async TestKit] Fix WithinAsync and Remaining logic (#6010)
  • b56ea0b Disabling GH NuGet nightly flow (#6021)
  • 65edb0c Apply LocalFact and LocalTheory attributes to racy tests (#6012)
  • 0a2162a Bump FsCheckVersion from 2.16.4 to 2.16.5 (#6008)
  • 125a2a3 Add environment variable controlled skipable LocalFactAttribute (#6009)
  • f46d845 Added GroupedWeightedWithin operator (#6000)
  • 6c07c56 [Async TestKit] Convert Akka.Streams.Tests to async - FlowFlattenMergeSpec FlowGroupBySpec TimeoutsSpec (#5963)
  • 5ca2166 Convert Akka.Streams.Tests to async - Actor.ActorSubscriberSpec (#5992)
  • 64b8daa Bump Verify.Xunit from 16.5.4 to 17.1.4 (#6007)
  • 6991066 Bump Microsoft.NET.Test.Sdk from 17.0.0 to 17.2.0 (#6005)
  • 138d576 Bump Google.Protobuf from 3.19.4 to 3.21.1 (#6004)
  • 9e64ca3 Remove MultiNodeTestRunner projects (#6002)
  • 6e5dc1e Remove old Akka.DI dependency injection projects (#6003)
  • e3be344 Port of #5999: Add Cluster.Sharding ActorInitializationException spec (#6001)
  • 52dfcc1 Reset non-stream specs back on (#5994)
  • 8f960ff [Async TestKit] Modernize TcpStage and TcpListener (#5989)
  • f595f63 Convert Akka.Streams.Tests to async - Actor.ActorPublisherSpec (#5991)
  • d8e62f6 Convert Akka.Streams.Tests to async - Dsl.LastSinkSpec (#5990)
  • daa2491 Added missing SourceWithContext.FromTuples operator (#5987)
  • 6cd1b3a Started Akka.Cluster troubleshooting guide (#5983)
  • e4af8f0 Update integration.md (#5985)
  • 9c3aa67 [Async TestKit] Convert Akka.Cluster.Tests to async - ClusterSpec (#5984)
  • 1032308 TcpTransport classs instead of DotNettyTransport class in hocon configuration (#5982)

This list of changes was auto generated.

Don't miss a new akka.net release

NewReleases is sending notifications on new releases.