Releases: Tochemey/goakt
Releases · Tochemey/goakt
v2.2.2
v2.2.1
What's Changed
- chore: add issue templates by @Tochemey in #368
- chore: add bug template by @Tochemey in #369
- feat: add cluster client by @Tochemey in #371
New Addition
This facilitates interaction with a specified Go-Akt cluster, contingent upon the activation of cluster mode. The client operates without knowledge of the specific node within the cluster that will process the request. With the client one can:
- Spawn - create an actor
- Stop - stops an actor
- Whereis - locate and get the address of a given actor
- Kinds - returns all the cluster kinds
- Tell - send a message to an actor without a reply(fire-forget)
- Ask - send a message to an actor with the expectation of a reply
Full Changelog: v2.2.0...v2.2.1
v2.2.0
What's Changed
- Upgrade to go 1.22 by @Tochemey in #354
- Upgrade kubernetes dependencies by @Tochemey in #354
- Calibrate appropriately the default mailbox size and stash size. by @Tochemey in #358
- Refactor example codes to use the new clusterConfig by @Tochemey in #359
- Remove examples code to a separate repo by @Tochemey in #362
- Update earthly/earthly to v0.8.14 by @renovate in #360
PipeTo
implementation by @Tochemey in #366
New
PipeTo
: send the successful result of a future(long-running task) to self or a given actor. This can be achieved from the PID as well as from the ReceiveContext- Go-Akt runs now on go 1.22: this was necessary because the latest kubernetes dependencies are all running on go 1.22
Full Changelog: v2.1.0...v2.2.0
v2.1.0
What's changed
- Breaking change in the old way of setting up cluster using
WithClustering
. This method accepts an additional parameter calledkinds
by @Tochemey in #346 - Provide a simple a clean
ClusterConfig
by @Tochemey in #346 - Deprecate
WithClustering
in favour ofWithCluster
that acceptsClusterConfig
by @Tochemey in #346 - Synchronisation of cluster peers state on a schedule basis (at the moment every 10 seconds, can be configurable) by @Tochemey in #346
- Redeploy actors of dead node to the rest of the cluster with a simple algorithm by @Tochemey in #346
- Add
Name
a convenient method to PID to retrieve the actor given name by @Tochemey in #346 - Static discovery by @qazwsxedckll in #337
- Dependencies updates by @renovate in #334
- Switch to connect protocol instead of gRPC by @Tochemey in #333
- Cleanup examples by @Tochemey in #340
New Contributors
- @qazwsxedckll made their first contribution in #337
Full Changelog: v2.0.0...v2.1.0
v2.0.0
Breaking Changes
WithClustering
accept additional parameters to setup the cluster mode in @Tochemey in #314- Module name has changed to
github.com/tochemey/goakt/v2
by @Tochemey in #331
Other Changes
- Better cluster provider configuration (https://github.com/Tochemey/goakt?tab=readme-ov-file#built-in-discovery-providers)
- Host node information is no longer fetched from hidden env vars in #314, #318 and #324
- Dependencies upgrades by @Tochemey #314, #318, #329 and #324
- Performance improvement using memory efficient map
- Create a new copy of mailbox each time an actor is created by @Tochemey in #327
Related issues
Full Changelog: v1.6.3...v2.0.0
v1.6.3
v1.6.2
v1.6.1
What's Changed
- fix(deps): update minor go modules by @renovate in #288
- fix(deps): update module github.com/nats-io/nats-server/v2 to v2.10.14 by @renovate in #289
- fix(deps): update patch go modules to v0.29.4 by @renovate in #292
- fix(deps): update module github.com/caarlos0/env/v10 to v11 by @renovate in #291
- fix(deps): update module github.com/caarlos0/env/v10 to v11 by @renovate in #293
- fix(deps): update module connectrpc.com/connect to v1.16.1 by @renovate in #295
- chore(deps): update dependency earthly/earthly to v0.8.8 by @renovate in #294
- fix: application should exit when cluster engine fails to start by @Tochemey in #302
Full Changelog: v1.6.0...v1.6.1
v1.6.0
What's Changed
- feat: add ID and Equals methods to PID by @Tochemey in #278
- fix(deps): update module github.com/nats-io/nats.go to v1.34.1 by @renovate in #279
- fix(deps): update module golang.org/x/net to v0.23.0 by @renovate in #281
- feat: add RemoteSpawn by @Tochemey in #284
- fix(deps): update module golang.org/x/sync to v0.7.0 by @renovate in #282
- chore(deps): update dependency earthly/earthly to v0.8.7 by @renovate in #280
- fix(deps): update module golang.org/x/net to v0.24.0 by @renovate in #285
- fix(deps): update module github.com/cespare/xxhash/v2 to v2.3.0 by @renovate in #286
Noteworthy
ID
method onPID
interface returns the unique identifier of an actorEquals
method onPID
interface help check whether twoPID
s are equalsRemoteSpawn
method onPID
interface and on the api to remotely spawn an actor. One need to first register the actor type on the remote host.Register
method onActorSystem
interface to register an actor typeDeregister
method onActorSystem
interface to deregister an actor type- Move from gRPC unary call to streaming for remote messaging to cater for message ordering.
Full Changelog: v1.5.1...v1.6.0
v1.5.1
What's Changed
- fix(deps): update k8s.io/utils digest to 4693a02 by @renovate in #262
- chore(deps): update dependency earthly/earthly to v0.8.5 by @renovate in #263
- fix(deps): update module github.com/nats-io/nats-server/v2 to v2.10.12 by @renovate in #264
- feat: routers implementation by @Tochemey in #261
- fix(deps): update patch go modules to v0.29.3 by @renovate in #265
- chore: remove unnessary comments by @Tochemey in #267
- fix(deps): update module github.com/reugn/go-quartz to v0.11.2 by @renovate in #268
- chore(deps): update dependency earthly/earthly to v0.8.6 by @renovate in #269
- fix(deps): update minor go modules by @renovate in #270
- feat: add RemoteStop method by @Tochemey in #271
- perf: use gRPC streaming to handle remote messaging by @Tochemey in #273
- refactor: skip system messages from ctx.Unhandled method by @Tochemey in #275
Full Changelog: v1.5.0...v1.5.1