Getting Started

Add the following dependency to your build.sbt file:

libraryDependencies += "io.github.endless4s" %% "endless-transaction" % "0.4.0"

This will pull in the module containing the abstractions. You should add this dependency to the project that contains your business domain logic (typically “domain”).

The Pekko runtime is available in endless-transaction-pekko and provides PekkoTransactor, an implementation of Transactor which is the entry-point to create a transaction coordinator (for Akka, use endless-transaction-akka).

Compatibility

Since Pekko/Akka do not allow mixed versions in a project, dependencies of endless-transaction-pekko (and endless-transaction-akka respectively) are marked a Provided. This means that your application libraryDependencies needs to directly include Pekko or Akka as a direct dependency. The minimal supported Pekko version is 1.1.2, and Akka version is 2.6.20.