- also remove resetReceiveTimeout and change receiveTimeout() to return
a Duration (which may be Undefined)
- also move akka.actor.{cell -> dungeon}, because that is
+ an adequate name
+ and does not coincide with the lowercase version of a class name
- replace ActorRef.stop() by ActorRefFactory.stop(child) everywhere
- ActorCell “optimizes” this to remove the child from its childrenRefs
in order to allow immediate recycling of the name
- the lost soul must have a place, for which the Locker has been
created, where Davy Jones will happily rebind the soul to his ship
(i.e. set “parent” to the locker to avoid mem leak) and periodically
revisit it (.stop(), in case of that being lost in comm failure,
similar .watch() to re-check liveness)
- I had reused akka.actor.timeout for ActorSystem.actorOf calls (which
“ask” the guardian to create the actor), but 5sec proved too short for
Jenkins
- CreationTimeout defaults to 30sec now, let’s hope Jenkins is not
slower than _that_.
- introduce common parent for guardian and systemGuardian
- install deathWatch chain to ensure proper shutdown upon guardian’s
death
- re-install stdout logger before detaching default loggers
- await app termination after running AkkaSpec tests (max 5sec, with
warning logged if not stopped)
- add Logging trait for nicer interface
- add EventHandlerLogging class for offering the nice interface from
app.log
- add eventHandler instance to app and use that for all internal logging
(this means that some places (dispatchers, remoting) were infiltrated
by app just to do logging, but I think we'll need app in there soon
enough for other reasons)
- remove global Config
- pull everything which depended on it into new AkkaApplication
- leave EventHandler alone for the moment: that evil sucker gets his
very own AkkaApplication("akka-reference.conf") until we have settled
on an acceptable logging API without globals
- make akka-actor and akka-testkit compile
- TestKit uses implicit AkkaApplication passing for maximum convenience
- Actor object nearly completely removed, actor creation possible via
ActorRefFactory interface which is implemented by AkkaApplication and
ActorContext
- serialization of ActorRef is probably broken, and so is the reflective
RemoteSupport (now needs AkkaApplication constructor arg)
- everything else is still broken, including akka-actor-tests, so this
is of course all not runtime-tested