[ANN] Celluloid(::IO/ZMQ/DCell) 0.15: actor-based concurrent objects for Ruby

Celluloid is a concurrent object oriented programming framework for Ruby
which lets you build multithreaded programs out of concurrent objects in a
similar manner to how you build sequential programs out of plain old Ruby

Web sites:




Trello: (Roadmap/Planning):

Celluloid 0.15 is primarily a bugfix/maintenance release. While we'd hoped
to include some more interesting features in this release, there were so
many bugs fixed in this release that we felt it more important to get the
framework on a more solid footing before proceeding with some more in-depth
refactoring and design changes we'd like to get in before releasing 1.0.

Most of the major changes in this release series are to Celluloid itself.
Celluloid::IO includes only minor bugfixes, and Celluloid::ZMQ/DCell are
just tracking releases with bumped version numbers.

Full Celluloid 0.15 changelog below:

* Remove legacy support for "bang"-method based async invocation
* Generic timeout support with Celluloid#timeout
* Implement recursion detection for #inspect, avoiding infinite loop bugs
* Fix various inheritance anomalies in class attributes (e.g. mailbox_class)
* Avoid letting version.rb define an unusable Celluloid module
* Remove "Shutdown completed cleanly" message that was annoying everyone
* Subclass all Celluloid exceptions from Celluloid::Error
* Log all unhandled messages in debug mode
* Celluloid::Conditions are now usable ubiquitously, not just inside actors
* Introspection support for number of threads in the Celluloid thread pool
* Use a ThreadGroup to track the threads in the Celluloid thread pool
* Reimplement signal system on top of Conditions
* Add metadata such as the current method to Celluloid::StackDumps


Tony Arcieri