Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Updated Akka from 1.4.13 to 1.5.52.
Release notes
Sourced from Akka's releases.
1.5.52
1.5.52 October 6th, 2025
SECURITY PATCH
Akka.NET v1.5.52 is a security patch containing crucial fixes for enforcing certificate-based authentication using mTLS enforcement. Please see https://getakka.net/articles/remoting/security.html for details on how this works.
Other fixes:
1 contributors since release 1.5.51
To see the full set of changes in Akka.NET v1.5.52, click here
Changes:
ShardedDaemonSets
: randomize starting worker index (#7857) (#7874)This list of changes was auto generated.
1.5.51
1.5.51 October 1st, 2025
Akka.NET v1.5.51 is a minor patch containing a remoting bug fix and add required codes to support persistence health check.
2 contributors since release 1.5.50
To see the full set of changes in Akka.NET v1.5.51, click here
Changes:
This list of changes was auto generated.
1.5.50
1.5.50 September 22nd, 2025
Akka.NET v1.5.50 is a minor patch containing a bug fix.
1 contributor since release 1.5.49
To see the full set of changes in Akka.NET v1.5.50, click here
Changes:
This list of changes was auto generated.
1.5.49
1.5.49 September 10th, 2025
Akka.NET v1.5.49 is a minor patch containing several bug fixes.
3 contributors since release 1.5.48
To see the full set of changes in Akka.NET v1.5.49, click here
Changes:
Replicator.ReceiveUnsubscribe
boolean logic (#7806) (#7809) [ #7804 ]This list of changes was auto generated.
1.5.48
1.5.48 August 21st, 2025
Akka.NET v1.5.48 is a minor patch containing stability improvement to Akka.TestKit.
2 contributors since release 1.5.47
To see the full set of changes in Akka.NET v1.5.48, click here
Changes:
This list of changes was auto generated.
1.5.47
1.5.47 August 12th, 2025
Akka.NET v1.5.47 is a minor patch containing several stability improvements to Akka.TestKit.
4 contributors since release 1.5.46
To see the full set of changes in Akka.NET v1.5.47, click here
Changes:
See More
This list of changes was auto generated.
1.5.46
1.5.46 July 17th, 2025
Akka.NET v1.5.46 is a minor patch containing a fix for the Akka.IO.Dns extension.
3 contributors since release 1.5.45
To see the full set of changes in Akka.NET v1.5.46, click here
Changes:
This list of changes was auto generated.
1.5.45
1.5.45 July 7th, 2025
Akka.NET v1.5.45 is a minor patch containing bug fixes for Core Akka and Akka.Cluster.Sharding plugin.
ShardingConsumerControllerImpl
shutdownFailure
toException
forAsk<object>
Settings.InjectTopLevelFallback
race conditionSupervision Strategy For Sharding Remembered Entities
SupervisorStrategy
property toClusterShardingSettings
. You can use any type ofSupervisionStrategy
, but it is recommended that you inheritShardSupervisionStrategy
if you're making your own custom supervision strategy.SupervisionStrategy
decisions and stops remembered entities if theSupervisionStrategy.Decider
returned aDirective.Stop
or if there is a maximum restart retry limitation.4 contributors since release 1.5.44
To see the full set of changes in Akka.NET v1.5.45, click here
Changes:
Settings.InjectTopLevelFallback
race condition (#7721)See More
TreatWarningsAsErrors
(#7708)This list of changes was auto generated.
1.5.44
1.5.44 June 19th, 2025
Akka.NET v1.5.44 is a minor patch that contains a bug fix to the Akka.Persistence plugin.
3 contributors since release 1.5.43
To see the full set of changes in Akka.NET v1.5.44, click here.
Changes:
See More
EventSourced
timer is cancelled when persistent actor is stopped (#7693)RELEASE_NOTES.md
(#7688)This list of changes was auto generated.
1.5.43
1.5.43 June 10th, 2025
Akka.NET v1.5.43 contains several bug fixes and also adds new quality of life features.
ReadJournalFor
API methodNew Akka.Analyzer Rules
We've added three new Akka.Analyzer rules, AK2003, AK2004, and AK2005. All of them addresses the same Akka anti-pattern where a
void async
delegate is being passed into theReceiveActor.Receive<T>()
(AK2003),IDslActor.Receive<T>()
(AK2004), andReceivePersistentActor.Command<T>()
(AK2005) message handlers.Here are the documentation for each new rules:
4 contributors since release 1.5.42
To see the full set of changes in Akka.NET v1.5.43, click here.
What's Changed
ReadJournalFor
API by @Arkatufus in [Query] Add non-genericReadJournalFor
API akkadotnet/akka.net#7679FilterOnFallbackPort
documentation by @Arkatufus in AddFilterOnFallbackPort
documentation akkadotnet/akka.net#7683New Contributors
... (truncated)
1.5.42
1.5.42 May 21st, 2025
Akka.NET v1.5.42 contains several bug fixes and also adds new quality of life features to
Akka.IO.Tcp
,Akka.Persistence
,Akka.Pattern
, andAkka.Cluster.Tools.DistributedPubSub
.TcpListener
connection queue problemCircuitBreaker
API to signal timed out operationsCircuitBreaker
protected method API to use cancellation tokenTcpListenerStatistics
and subscription methodsDistributedPubSub
codeDistributedPubSub
memory allocationDistributedPubSub
DeadLetter
log messageCreateBuilder
patternTcpConnection
PublishWithAck
feature toDistributedPubSub
Akka.Pattern.CircuitBreaker
Backward compatible API changes:
.WithCircuitBreaker()
APIs were added that changes the protected function delegate to accept a newCancellationToken
argument..WithCircuitBreaker()
APIs were marked as obsolete.Akka.Cluster.Tools.DistributedPubSub
The documentation for the new
PublishWithAck
feature can be read hereBackward compatible API changes:
DistributedPubSubSettings
constructor that leverages the newPublishWithAck
feature. The old constructor is marked as obsolete.Akka.Persistence
The documentation for the new supervision strategy for journal and snapshot-store feature can be read here
Breaking API changes:
Due to changes in
CircuitBreaker.WithCircuitBreaker()
APIs, severalAkka.Persistence
journal and snapshot-store were changed in a breaking manner. You will need to consider these changes if you have your own specificAkka.Persistence
plugin implementation and needed to upgrade to this version of Akka.DeleteMessagesToAsync()
ReadHighestSequenceNrAsync()
WriteMessagesAsync
DeleteAsync()
methodsLoadAsync()
... (truncated)
1.5.41
1.5.41 May 6th, 2025
Akka.NET v1.5.41 contains several bug fixes and also adds new quality of life features to Akka.TestKit and Akka.Streams.
EventFilter
respectsWithinAsync
timeout blocksExpectNextNAsync()
error message clarityIDaemonMsg
with public interface markerBroadcastHub
consumersGroupBy
to use infinite output sub-streamsXUnit V3 Support
We've added XUnit v3 support to Akka.TestKit.Xunit, please use this package if you're planning on using and/or migrating to the latest XUnit 3 platform.
Note that due to XUnit v3 limitation, please make sure that you're following these minimum requirements:
xunit.v3.*
packages v2.0.2 and above.xunit.runner.visualstudio
package v3.1.0 and above.Akka.Streams
GroupBy
API improvementAkka.Streams
GroupBy
stage can now, and now by default, create an unlimited number of sub-streams. Simply omit themaxSubstreams
parameter or change themaxSubstreams
parameter to a negative value to enable this feature.4 contributors since release 1.5.40
To see the full set of changes in Akka.NET v1.5.40, click here.
Changes:
Akka
benchmarks (#7618)... (truncated)
1.5.40
1.5.40 March 24th, 2025
Endpoint
actor cleanupBuffer
SelectAsyncUnordered
ContinueWith
to local functionSelectAsync
check equality by reference instead of by struct value2 contributors since release 1.5.39
To see the full set of changes in Akka.NET v1.5.40, click here.
Changes:
ClusterSingletonManager.DefaultConfig()
build warnings (#7571)QueueSinkSpec
(#7566)See More
DistributedPubSubRestartSpecs
(#7563)ConfigureAwait(false)
(#7561)FlowThrottleSpecs
(#7554)Tagged
messages in all queries (#7548) [ #7528 ]IMemoryJournal
API (#7547)SelectAsync
: check equality by reference on placeholder, rather than by value onstruct
(#7543)PersistentFsmSpec
s (#7545)refresh-interval
(#7544)... (truncated)
1.5.39
1.5.39 March 14th, 2025
Akka.NET v1.5.39 contains a mission-critical bugfix for most Akka.Streams users.
ShardingEnvelope
contents insideIMessageExtract.EntityMessage
- fixed a small edge case bug that could cause theShardingEnvelope
to be delivered to actors rather than the content inside the envelope.Result<T>
- small set of API changes here aimed at making Akka.Streams easier to reason about.SelectAsync
- this is a bug that's popped up in Akka.Persistence.Sql, Akka.Streams.Kafka, and many other places whereSelectAsync
is used:SelectAsync
stopped working even when async code block is guarded by a try...catch block akkadotnet/akka.net#75183 contributors since release 1.5.38
To see the full set of changes in Akka.NET v1.5.39, click here.
Changes:
SelectAsync
(#7521) [ #7518 ]Result<T>
(#7520)ShardingAdapter
recursively call the underlyingIMessageExtractor
(#7474) [ #7470 ]This list of changes was auto generated.
1.5.38
1.5.38 February 17th 2025
Akka.NET v1.5.38 is a maintenance release with several bug fixes and minor quality of life API additions
ByteString.ToReadOnlySpan()
IntentionalRestart
auto received message to easily test actor restart behaviorAsk()
FutureActorRef
temporary actors to prevent memory leaksTo see the full set of changes in Akka.NET v1.5.38, click here.
4 contributors since release 1.5.37
Changes:
Context.Watch
onFutureActorRef<T>
creates memory leaks (#7502) [ #7501 ]IntentionalRestart
message to test actor restart behaviors (#7493) [ #7492 ]See More
This list of changes was auto generated.
1.5.37
1.5.37 January 23rd 2025
Akka.NET v1.5.36 is a maintenance release that rolls back earlier changes made in Akka.NET v1.5.35 that have caused problems in some downstream Akka.NET plugins.
Akka.Persistence.Journal.AsyncWriteJournal+Resequencer
is created as a top-level/user
actor instead of a child of the journalTo see the full set of changes in Akka.NET v1.5.37, click here.
Changes:
Resequencer
should always be a child of the journal actor (#7481)This list of changes was auto generated.
1.5.36
1.5.36 January 22nd 2025
Akka.NET v1.5.36 is a maintenance release that addresses several bugs and added several improvements.
ActorCell
ActorCell
lifecycle metricsTo see the full set of changes in Akka.NET v1.5.36, click here.
2 contributors since release 1.5.35
Changes:
IActorTelemetry
events nullable (#7478)ActorCell
usenullable
(#7475)This list of changes was auto generated.
1.5.35
1.5.35 January 13th 2025
Akka.NET v1.5.35 is a maintenance release that addresses several bugs and added several improvements.
Broadcast
message support to sharded daemon processTo see the full set of changes in Akka.NET v1.5.35, click here.
5 contributors since release 1.5.34
Changes:
See More
Broadcast
message support toShardedDaemonProcess
(#7451)ShardingEnvelope
checks forShardingMessageAdapter
(#7449)... (truncated)
1.5.34
1.5.34 January 7th 2025
IShardingBufferMessageAdapter
to support tracing over shardingTo see the full set of changes in Akka.NET v1.5.34, click here.
3 contributors since release 1.5.33
Changes:
IShardingMessageAdapter
(#7441)This list of changes was auto generated.
1.5.33
1.5.33 December 23rd 2024
Stash()
stashes null messageIWrappedMessage
andIDeadLetterSuppression
handlingResult.FromTask
edge case handlingLog
stageTo see the full set of changes in Akka.NET v1.5.33, click here.
4 contributors since release 1.5.32
Changes:
Akka.Util.Result
edge case (#7433)LogFormatSpec
(#7429) [ #7421 ]ShardingCoordinator.CoordinatorState
serialization over DData (#7428)IWrappedMessage
+IDeadLetterSuppression
handling (#7414)Stash()
innull
message cases (#7425) [ #7938 ]See More
BackoffSupervisorSpecs
(#7420)CircuitBreakerSpecs.cs
(#7418)This list of changes was auto generated.
1.5.32
1.5.32 December 4th 2024
Akka.NET v1.5.32 is a maintenance release that addresses several bugs.
To see the full set of changes in Akka.NET v1.5.32, click here.
3 contributors since release 1.5.31
Changes:
RememberEntities
infrastructure against transient Akka.Persistence failures (#7401) [ #7399 ]RememberEntitiesFailureSpecs
(#7400)PeriodicTimer
messages when actors are busy (#7396)RemoteActorRef
are serialized with correctAddress
when using multiple transports (#7393) [ #7378 ]See More
TestTransport
XML-DOCTBD
s (#7390)ClusterSingleton.Init()
and add missing singleton feature toClusterSingletonSettings
(#7387)This list of changes was auto generated.
1.5.31
1.5.31 November 11th 2024
Akka.NET v1.5.31 is a maintenance release that addresses several bugs and added new features.
ArgumentException
during shard re-balancingMember
with the sameAddress
crashingClusterDaemon
Stash
filtering out identicalEnvelope
sShellRegistered
message deadletter logShard.PostStop
be blocking instead of using detached async taskUpgrade Advisory
There is a slight change in how actor
Stash
behavior. In previous behavior,Stash
will filter out any messages that are identical (see explanation below) when it is prepended with another. It will not do so now, which is the actual intended behavior.This change will affect
Akka.Persistence
users or users who use theStash.Prepend()
method in their code. You will need to add a de-duplication code if your code depends on sending identical messages multiple times to a persistence actor while it is recovering.Messages are considered as identical if they are sent from the same sender actor and have a payload message that
Equals()
to true against another message. Example payload types would be an object pointing to the same memory address (ReferenceEquals()
returns true), value types (enum, primitives, structs), and classes that implements theIEquatable
interface.To see the full set of changes in Akka.NET v1.5.31, click here.
2 contributors since release 1.5.30
Changes:
Stash.Stash
messages in Akka.,Persistence actors (#7374) [ #7373 ]Member
s with sameAddress
crashingClusterDaemon
(#7371) [ #7370 ]ArgumentException
during shard rebalancing (#7367) [ #7365 ]See More
... (truncated)
1.5.30
1.5.30 October 1st 2024
Akka.NET v1.5.29 introduced an interface change on the
IScheduler
that unfortunately caused a lot of other plugins to break due to API compatibility issues. v1.5.30 rolls back that change but still fixes the underlying bug in Akka.Persistence's handling and serialziation of timestamps without any interface changes. v1.5.29 will be deprecated from NuGet.To see the full set of changes in Akka.NET v1.5.30, click here.
3 contributors since release 1.5.28
1.5.29 October 1st 2024
Akka.NET v1.5.29 is an emergency patch release that addresses a severe bug for persistence users whom also use protobuf serializer.
To see the full set of changes in Akka.NET v1.5.29, click here.
3 contributors since release 1.5.28
Changes:
... (truncated)
1.5.29
1.5.29 October 1st 2024
Akka.NET v1.5.29 is an emergency patch release that addresses a severe bug for persistence users whom also use protobuf serializer.
To see the full set of changes in Akka.NET v1.5.29, click here.
3 contributors since release 1.5.28
Changes:
This list of changes was auto generated.
1.5.28
1.5.28 September 5th 2024
Akka.NET v1.5.28 is a release with several bug fixes and improvements.
To see the full set of changes in Akka.NET v1.5.28, click here.
2 contributors since release 1.5.27.1
Changes:
SqlJournal
andSqlSnapshotStore
against initialization failures (#7325)See More
DateTime.UtcNow
the default timestamp forSnapshotMetdata
(#7313)ITimeProvider
injectable into consuming classes (#7314)... (truncated)
1.5.28-beta1
1.5.28-beta1 August 23rd 2024
Akka.NET v1.5.28-beta1 is a patch beta release with several bug fixes and improvements.
To see the full set of changes in Akka.NET v1.5.28-beta1, click here.
Changes:
SqlJournal
andSqlSnapshotStore
against initialization failures (#7325)See More
DateTime.UtcNow
the default timestamp forSnapshotMetdata
(#7313)ITimeProvider
injectable into consuming classes (#7314)This list of changes was auto generated.
1.5.27.1
1.5.27.1 July 25th 2024
Akka.NET v1.5.27.1 is a minor patch to fix a race condition between the logging and remoting system.
Description has been truncated