actor_system
An implementation of the actor model in the Dart language. An actor processes only one message at a time, even if the processing is asynchronous.
0.9.6
blimster/actor_system
What this package is like to depend on
Last release 2 years ago
no release in 18 months
Ships unpredictably
gaps range from 8 days to 8 months
Nearly every release is documented
notes for 22 of 22 stable releases
Nothing withdrawn
no release was ever pulled
4 years old
22 releases · first in 2022
0 releases in the last 12 months
see the full history below
Release timeline
22 releases · Nov 2022 to Mar 2024
2023
2024
2025
2026
Releases
latest 22-
0.9.617 Mar 2024Release notes
Open source →- Add an optional parameter
donetoProtocolBuilderMessage.build.doneis called, when the protocol is completed.
- Add an optional parameter
-
0.9.517 Mar 2024 -
0.9.403 Aug 2023 -
0.9.303 Aug 2023Release notes
Open source →- It is now possible to configure the defailt mailbox size for an actor system.
ActorStoppedexception contains information about the affected actor and message.
-
0.9.203 Aug 2023Release notes
Open source →- Bugfix:
senderandcorrelationIdfrom current context was determined in the wrong point of time. Thus, wrong values could be return fromActorContext.senderandActorContext.correlationId.
- Bugfix:
-
0.9.122 Jul 2023Release notes
Open source →- Bugfix: "one message at a time" was not fulfilled for async message processing.
-
0.9.027 Jun 2023Release notes
Open source →- BREAKING CHANGE: if the
correlationIdis not explicitly set as parameter ofActorRef.send()it is implicitly set set from the context of the current actor (if available).
- BREAKING CHANGE: if the
-
0.8.120 Jun 2023Release notes
Open source →- The key
zoneSenderKeyto set or get an actor as the sender in the currentZoneis now public.
- The key
-
0.8.019 Jun 2023Release notes
Open source →- BREAKING CHANGE: it is no longer possible to exclitly specifying a sender, when sending a message to an actor. Instead, it is implcitly set, if the message was sent in the context of an actor.
-
0.7.208 Mar 2023Release notes
Open source →- It is now possible to set callback function to be callled when an actors is added or removed from a system by using the setters
ActorSystem.onActorAddedandActorSystem.onActorRemoved.
- It is now possible to set callback function to be callled when an actors is added or removed from a system by using the setters
-
0.7.106 Mar 2023Release notes
Open source →- It is now possible to get metrics of an actor system by using
ActorSystem.metrics. - It is now possbile to get a list of all available actor paths by using
ActorSystem.actorPaths. ^
- It is now possible to get metrics of an actor system by using
-
0.7.004 Mar 2023Release notes
Open source →- BREAKING CHANGE: parameter
pathoflookupActor()andlookupActors()must be absolute. - BREAKING CHANGE: parameter
pathofcreateActor()andlookupActor()must not end with a slash. - Bugfix: it was possible to create more than one actor on the same path.
- Improved handling of an empty fragment in
validActorPath()andcopyWith()ofUriExtension.
- BREAKING CHANGE: parameter
-
0.6.021 Feb 2023Release notes
Open source →- BREAKING CHANGE: renamed
UriExtension.copy()toUriExtension.copy()and renamed parameterfragmenttotag. - Added named parameter
tagtoactorPath().
- BREAKING CHANGE: renamed
-
0.5.120 Feb 2023 -
0.5.011 Feb 2023Release notes
Open source →- BREAKING CHANGE: renamed
ExternalActorCreatetoCreateActor. - BREAKING CHANGE: renamed
ExternalActorLookuptoLookupActor. - BREAKING CHANGE: renamed
ActorSyste.externalCreatetoActorSyste.externalCreateActor. - BREAKING CHANGE: renamed
ActorSyste.externalLookuptoActorSyste.externalLlookupActor. - Added
BaseContext.lookupActors()
- BREAKING CHANGE: renamed
-
0.4.008 Feb 2023Release notes
Open source →- BREAKING CHANGE: moved cluster functionality to an separate package.
- BREAKING CHANGE: renamed library
actor_buildertoactor_system_helper. - BREAKING CHANGE: reaname class
WhenLikeActorBuildertoActorBuilder. - BREAKING CHANGE: class
ActorBuilderno longer has a methodactor(). UseorActor(),orSkip()ororThrow()instead. - BREAKING CHANGE: replaced
ActorSystem.registerFactory(Pattern, ActorFactory)byActorSystem.addActorFactory(PathMatcher, ActoryFactory). - It is now possible to stop an actor. This can be done by calling
ActorRef.shutdown()or sending the constantshutdownMsgto the actor. - An actor can now throw a
SkipMessagewhile executing a message. In contrast to all other exceptions thrown by an actor, the actor is not restarted. - Added
ActorContextExtensiononActorContextwith getterssenderOrSkip,replyToOrSkipandcorrelationIdOrSkip. Use these methods to get null safe versions ofsender,replyToandcorrelationId. If a value isnull, aSkipMessageis thrown.
-
0.3.008 Jan 2023Release notes
Open source →- BREAKING CHANGE: removed parameter
useExistingActorfromBaseContext.createActor(). BaseContext.createActor()has a new parametersendInit. If set totrue, aninitMsgis sent after the actor is created.ActorRef.send()now has a new parametercorrelationId. An actor can read the correlation id from its context.WhenLikeActorBuilderhas new methodsisTrue()andisInit().
- BREAKING CHANGE: removed parameter
-
0.2.224 Dec 2022 -
0.2.123 Dec 2022Release notes
Open source →- Prefixed all logger names in library
actor_systemwithactor_system.system.and all logger names in libraryactor_clusterwithactor_system.cluster..
- Prefixed all logger names in library
-
0.2.022 Dec 2022Release notes
Open source →- Improved package score on pub.dev
- More useful version of README.md
- BREAKING CHANGE: Refactored
WhenLikeActorBuilder.equals(Object?, Actor)toWhenLikeActorBuilder.isEqual<T>(T, FutureOr<void> Function(ActorContext, T))
-
0.1.128 Nov 2022Release notes
Open source →- Changed dependency from
msgpack_darttomsgpack_dart_with_webto support web
- Changed dependency from
-
0.1.025 Nov 2022