For those who are interested: I've just cut release 2.1 of the Requester library <https://github.com/jducoeur/Requester> -- the Actor-friendly version of ask(), which allows you to safely compose requests from one Actor to another in a thread-safe way.
Release 2.1 addresses several problems I've encountered while beating on it hard: When you are wrapping a RequestM[T] in a Future[T] (typical in RPC scenarios), *Exceptions now propagate to the Future <https://github.com/jducoeur/Requester/blob/master/src/test/scala/org/querki/requester/FutureTests.scala#L47-L54>* correctly. request / *? now works correctly with ActorSelections*; previously, it only worked with ActorRefs. Most important: when you flatMap requests together, they need to chain so that things can "unwind" when you finally come up with a final result. (This is necessary for composition to work as expected.) It turns out that the original design for this worked recursively: it was beautiful, elegant, and caused a StackOverflow if you flatMapped more than about 1500 levels deep. (Yes, I'm currently doing stuff in Querki that is flatMapping several *thousand* roundtrips in some cases. It allows delightfully elegant Akka code <https://github.com/jducoeur/Querki/blob/master/querki/scalajvm/app/querki/imexport/ImporterImpl.scala#L190-L205>.) This is *now rewritten to chain flatMap() a bit less elegantly, but in a tail-recursive way that should be robust in the face of extreme nesting*. At this point, I think it's getting seriously ready for prime time. I encourage folks to play with it, and drop me a note if you have any thoughts... -- >>>>>>>>>> Read the docs: http://akka.io/docs/ >>>>>>>>>> Check the FAQ: >>>>>>>>>> http://doc.akka.io/docs/akka/current/additional/faq.html >>>>>>>>>> Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups "Akka User List" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
