[rabbitmq-discuss] IMPORTANT: amqp gem 0.8.0+ will no longer support Ruby 1.8.7-p249 (this specific patchlevel) due to a Ruby bug

Michael Klishin michael.s.klishin at gmail.com
Wed May 11 18:17:00 BST 2011


This message is cross-posted to rabbitmq-discuss and amqp gem mailing list. If you do not use Ruby or amqp gem, feel free to ignore this message. Otherwise please do read on.


I just found out (in the QA process of my apps) that Ruby 1.8.7-p249 (this specific patchlevel) struggles from a bug
that affects 0.8.0 (and possibly earlier versions, too, if you subclass Exchange or Queue, as some libraries do): http://bit.ly/iONBmH

Unfortunately, there is absolutely no way we can provide all the features (including backwards-compatibility behavior/features) and work around this bug on 1.8.7-249, so this version is NO LONGER SUPPORTED by amqp gem.

1.8.7-p174 and p334 are NOT affected by this issue so either downgrading or upgrading will help. That bug was fixed more than a year ago (in December 2009), also affected Ruby Enterprise Edition users and there was at least one stable patchlevel release of 1.8.7 since that time.

If you use Ruby Enterprise Edition or some custom build of 1.8.7 and not sure whether the fix is included with your build, figuring this out is easy: run the following example (managed by Bundler) and see if you get "super called outside of method" exception (usually NoMethodError but can also be a SystemExit):

https://github.com/ruby-amqp/amqp/blob/master/examples/hello_world_with_eventmachine_in_a_separate_thread.rb

If you know anyone who may be running Ruby 1.8.7-p249 or equivalent REE release, please pass this information on to them. If you have any questions, just reply to
this message or contact me directly if you have reasons to do so.

Thank you.
-- 
MK



More information about the rabbitmq-discuss mailing list