Skip to content

Releases: nactio/nact

v7.3.0

12 Jun 11:04
Compare
Choose a tag to compare

Added the ability to read the mailbox in onCrash and afterStop event handlers.

Added Persistent Queries

18 May 22:36
17a10cf
Compare
Choose a tag to compare

This new feature is especially for architectures which may require a CQRS approach.

A persistentQuery is similar to an actor, except it cannot cannot persist messages, does not have context and checks the event store each time it is invoked for messages it has not yet processed (later versions may may use of streaming). Additionally a persistent query supports snapshotting of state, making it ideal as an event model.

Usage is below, however a more detailed tutorial is to follow on nact.io once the reason version is published:

let query = persistentQuery(
      system,
      (result, msg) => apply(result,msg),
      'persistenceKey',
      { cacheDuration: 10 *minutes, snapshotKey: 'test', snapshotEvery: 5 * messages }
);
let result = await query(); 

Removed implicit shutdown

10 May 21:22
Compare
Choose a tag to compare

Changes

  • Former behaviour was for an stateful/persistent actor to shutdown if it the next state was a falsey value. This has been removed as it isn't hugely useful and is a little bit too implicit for my liking. Think it creates confusion more than anything else.
  • Adjusted snapshotting behavior to discretely snapshot. This means that snapshots only are scheduled after a message has been completely processed.
  • Removed some branching.
  • Removed some allocations
  • Added hooks for encoders and decoders for both persistent messages and snapshots. This will make the reason wrapper of nact a lot more efficient. (It's currently performing a json serialize/deserialize every message, a massive hack that was done as an emergency fix in a production scenario)

v6.1.0

16 Apr 22:02
Compare
Choose a tag to compare
Updated stateless actor

Fixed a bug involving resets on crash and the persistent actor

11 Apr 18:32
Compare
Choose a tag to compare

Removed rxjs from nact

04 Apr 18:23
a9e9b7f
Compare
Choose a tag to compare

Please note that the Postgres Persistence engine is also required to be upgraded with this breaking change.

The only user facing change is that the state$ operator has been removed as was previously announced.

v5.0.0: Merge pull request #41 from ncthbrt/refactor/supervision

06 Mar 19:40
0cd4065
Compare
Choose a tag to compare

Specifying a supervision policy has now been moved to the child rather than the parent. This is to allow ReasonNact to correctly type the policy and include the message which resulted in the fault. Please see https://nact.io/lesson/javascript/supervision for changes to usage.

v4.4.4

23 Jan 17:05
Compare
Choose a tag to compare
Made service more structured

v4.4.3

21 Jan 21:42
Compare
Choose a tag to compare
Merged

Minor Bug Fix

17 Jan 21:42
Compare
Choose a tag to compare
v4.4.2

Fixed bug