Akkling icon indicating copy to clipboard operation
Akkling copied to clipboard

Roadmap

Open raymens opened this issue 8 years ago • 7 comments

I see some great enhancements added as issues, could you add a roadmap on what issues you (or others) are working on?

raymens avatar Aug 31 '15 09:08 raymens

Right now I'm working on them alone and in irregular manner, so no explicit roadmap was necessary. But it's acutally a good idea, no matter if we speak about single person or collaboration development.

Horusiath avatar Aug 31 '15 16:08 Horusiath

Yeah it would be great to see what you (or anyone) are actually working on and which of them are just idea floating around for now. It's also easier for any potential contributors to know what they can grab for a PR.

What are you thinking of? A table with the names on whose working on what, or?

raymens avatar Aug 31 '15 20:08 raymens

While this will need to wait for a proper documentation, initial roadmap looks like this:

[Edited: 2016-06-10]

> 0.4

  • Vagabond hot functions loading.
  • Integration of async inside actor computation expression.

0.4

  • Make an AtLeastOnceDelivery semantic working in cooperation with method combinators and based on function composability. (TODO: everything is ready on Akka.NET side)
  • Introduce Akkling.Streams library (TODO: better graph API, actor publisher and subscriber implementations).
  • Keep library up-to-date with Akka 1.1 - therefore release date will be after 1.1 will came out.

0.3

  • Publish Akkling.TestKit package to make F#-idiomatic API over Akka.TestKit
  • Publish Akkling.Cluster.Sharding package with helpers for working with Akka.NET cluster plugins, mainly Akka.Cluster.Sharding.
  • New typed version of Props. This also includes some changes in existing spawn methods.
  • actorOf and actorOf2 will operate on functions returning effects.
  • Receive method combinators <|> and <&>.

0.2

  • Simplified existing Akka.FSharp API to necessary minimum.
  • Introduced effects - this way actor can return special kind of effect to trigger some behavior on actor like Unhandled, Stop or Ignore.
  • Introduced actor's lifecycle events: a way to hook to PreStart, PostStop, PreRestart, PostRestart actions through dedicated messages. This also replaces mailbox.Defer callbacks.
  • Created whole new API for Akkling.Persistence: now it works as single uniform function, which is invoked on both OnCommand, OnRecover, and on persist and deffer callbacks. Those phases can be distinguished using correlated active patterns.

0.1

  • Initial release - fork from Akka.FSharp
  • Implemented typed actor refs.

Horusiath avatar Nov 28 '15 16:11 Horusiath

@Horusiath Could you please give us update on the current roadmap? Thanks!

gsomix avatar Jun 21 '18 05:06 gsomix

@gsomix right now I'm mostly occupied with implementing changes in akka.net core repository. Some of the changes I was thinking about changing how actor handles incoming messages - split this behavior in two (one for user-defined messages and one for system-defined ones). This would allow us to avoid retyping actor refs in situations when your actor needs to react on both user and system messages. Problem with that is that is a breaking change and Akkling is already used in many production systems.

Horusiath avatar Jun 22 '18 05:06 Horusiath

Since Akkling is being used in many production environment, do you still consider this as an experimental project?

Kavignon avatar Feb 20 '19 21:02 Kavignon

I don't really mind the breaking changes, as long as major version is changed? As is, it feels odd to use Actor to use System messages

Swoorup avatar May 10 '20 16:05 Swoorup