postgres-es 0.2.1

A Postgres implementation of an event store for cqrs-es.
Documentation

postgres-es

A Postgres implementation of the EventStore trait in cqrs-es.

Build tag Crates.io docs

Installation

[dependencies]
postgres-es = "0.2.1"
cqrs-es = "0.2.1"

Usage

let store = default_postgress_pool("postgresql://my_user:my_pass@localhost:5432/my_db");
let cqrs = postgres_es::postgres_cqrs(pool, vec![Box::new(my_query)])

Change log

v0.2.1

  • Moved generic persistence logic into cqrs-es package.
  • Added repositories.
  • Added event context information to event envelope.

v0.2.0

Moved to async/await for better tool support.

v0.1.3

Aggregates now consume events on apply.

v0.1.2

Require queries to also use Send & Sync.

v0.1.1

Use r2d2_postgres crate to support Send + Sync for multi-threaded applications.

TODOs

  • Add support for TLS.
  • Additional framework around GenericQueryRepository to simplify event replay.

Demo

A demo application is available here.