mdedetrich commented on issue #2093: URL: https://github.com/apache/pekko/issues/2093#issuecomment-3520511719
@raboof @He-Pin @pjfanning So I have just created a draft PR at https://github.com/apache/pekko/pull/2479 which is a set of changes against Pekko 1.3.x in an attempt to provide a source compatible transition from Pekko 1.3.x to Pekko 2.0.x. The good news is that the basis of the changes needed means its possible without breaking binary compatibility and the changeset is quite trivial/small. The bad news is that due to having the `terminate` method on the core `ActorSystem` which returns a `Future`, we cannot use that name for the new methods without breaking users. This means that I had to use new terminology, i.e. `close`/`closeAsync` which I have mixed feelings about. If we want to keep the current method name terminology (which there is a strong argument for) then we would have to do a source breaking change for 2.0.0 but the advantage would be that for a `ActorSystem` created by `javadsl`, `terminate()` would return `CompletionStage<Terminated>` but for `scaladsl`'s `terminate` it would return `Future[Terminated]`. We can also add a `terminateAsync` method which would be common for both, it would be async just like `terminate` would be but it won't return a `Future` or a `CompletionStage` and is intended when you use `context` within context of an `ActorSystem`. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
