typelevel / governance

Typelevel governance
Creative Commons Attribution 4.0 International
8 stars 1 forks source link

Project Submission: endless4s #89

Closed jchapuis closed 1 year ago

jchapuis commented 1 year ago

Project Name

endless4s

Project Short Description

Sharded and event-sourced entities for Cats Effect

Project Type

In accordance with the Typelevel Charter, I am proposing the project be a:

Additional Notes

endless4s is a Scala library to describe sharded and event-sourced entities using tagless-final algebras, running with built-in implementations for Akka.

rossabaker commented 1 year ago

@typelevel/steering: please vote with reaction on the issue. 👍 for yes, 👎 for no, 👀 for abstain.

I'll leave it open three business days (through Monday, April 10) and until quorum is reached.

rossabaker commented 1 year ago

Looks nice. A couple questions:

  1. Is there a code of conduct? Another recent affiliate project added one like this.
  2. Do you have a plan with the Akka licensing change? Are you going to stick with 2.6 indefinitely, or look at Pekko, or provide multiple backends?
jchapuis commented 1 year ago

@rossabaker thanks for the consideration and sorry for the delay 🐰, good idea I added the code of conduct

Regarding Akka, the runtime project has a Provided dependency to the minimum required Akka version for proper operation (since Akka complains when mixing versions). We do not plan to upgrade to 2.7. However, if there would be a need for this, e.g. due to some breaking change or to take advantage of some new feature, we could provide it in a separate runtime.

We indeed plan on adding a back-end for Pekko when it hits a first release. It's actually one advantage when using the lib, as it limits the number of direct imports to Akka namespaces (essentially shielding the entire algebra).

Regarding other backends/runtime entirely this would be a very cool project. Not easy as it would have to tackle cluster formation, sharding, event sourcing, stashing + hot-migration of entities etc. essentially all the core features of Akka cluster persistence.

rossabaker commented 1 year ago

Awesome. I like the pluggable design.

We need two more responses for quorum. /cc @typelevel/steering

rossabaker commented 1 year ago

Approved with a quorum of at least 7 (got 7) and affirmative vote of at least 3/4 (got 100%). Migration steps can be tracked in #92.