All Versions
43
Latest Version
Avg Release Cycle
316 days
Latest Release
907 days ago
Changelog History
Page 4
Changelog History
Page 4
-
v0.7.0 Changes
- Celluloid::Task abstraction replaces Celluloid::Fiber
- Celluloid#tasks API to introspect on running tasks
- ๐ Move Celluloid::IO into its own gem, celluloid-io
- Finite state machines with Celluloid::FSM
- ๐ Fix bugs in supervisors handling actors that crash during initialize
- ๐ Old syntax Celluloid::Future() { ... } deprecated. Please use the #future method or Celluloid::Future.new { ... } to create futures
- ๐ New timer subsystem! Bullet point-by-bullet point details below
- Celluloid#after registers a callback to fire after a given time interval
- Celluloid.sleep and Celluloid#sleep let an actor continue processing messages
- โฑ Celluloid.receive and Celluloid#receive now accept an optional timeout
- โฑ Celluloid::Mailbox#receive now accepts an optional timeout
-
v0.6.2 Changes
- List all registered actors with Celluloid::Actor.registered
- ๐ฒ All logging now handled through Celluloid::Logger
- Rescue DeadActorError in Celluloid::ActorProxy#inspect
-
v0.6.1 Changes
- Celluloid#links obtains Celluloid::Links for a given actor
- The #class method is now proxied to actors
- Celluloid::Fiber replaces the Celluloid.fiber and Celluloid.resume_fiber API
- ๐ Use Thread.mailbox instead of Thread.current.mailbox to obtain the mailbox for the current thread
-
v0.6.0 Changes
- Celluloid::Application classes for describing the structure of applications built with Celluloid
- Methods of actors can now participate in the actor protocol directly via Celluloid#receive
- ๐ง Configure custom mailbox types using Celluloid.use_mailbox
- Define a custom finalizer for an actor by defining MyActor#finalize
- Actor.call and Actor.async API for making direct calls to mailboxes
- ๐ Fix bugs in Celluloid::Supervisors which would crash on startup if the actor they're supervising also crashes on startup
- โ Add Celluloid.fiber and Celluloid.resume_fiber to allow extension APIs to participate in the Celluloid fiber protocol
-
v0.5.0 Changes
- ๐ "include Celluloid::Actor" no longer supported. Use "include Celluloid"
- ๐ New Celluloid::IO module for actors that multiplex IO operations
- ๐ Major overhaul of Celluloid::Actor internals (see 25e22cc1)
- Actor threads are pooled in Celluloid::Actor::Pool, improving the speed of creating short-lived actors by over 2X
- Classes that include Celluloid now have a #current_actor instance method
- Celluloid#async allows actors to make indefinitely blocking calls while still responding to messages
- ๐ Fix a potential thread safety bug in Thread#mailbox
- Experimental Celluloid::TCPServer for people wanting to write servers in Celluloid. This may wind up in another gem, so use at your own risk!
- Magically skip ahead a few version numbers to impart the magnitude of this release. It's my versioning scheme and I can do what I wanna.
-
v0.4.0 Changes
- This version was mysteriously lost to the sands of time
-
v0.3.0 Changes
- This version was also mysteriously lost to the sands of time
-
v0.2.2 Changes
- AbortErrors now reraise in caller scope and get a caller-focused backtrace
- ๐ฒ Log failed async calls instead of just letting them fail silently
- ๐ Properly handle arity of synchronous calls
- Actors can now make async calls to themselves
- Resolve crashes that occur when sending responses to exited/dead callers
-
v0.2.1 Changes
- Hack around a bug of an indeterminate cause (2baba3d2)
-
v0.2.0 Changes
- ๐ Support for future method calls with MyActor#future
- ๐ Initial signaling support via MyActor#signal and MyActor#wait
- Just "include Celluloid" works in lieu of "include Celluloid::Actor"
- Futures terminate implicitly when their values are obtained
- โ Add an underscore prefix to all of Celluloid's instance variables so they don't clash with user-defined ones.