From bunny-amqp-devel at rubyforge.org Fri May 1 03:39:40 2009 From: bunny-amqp-devel at rubyforge.org (Bunny AMQP client mailing list) Date: Fri, 1 May 2009 08:39:40 +0100 Subject: [bunny-amqp-devel] [ANN] New release of Bunny v0.2.0 Message-ID: I am pleased to announce a new release of Bunny. It contains the following highlights - * Code has been re-organised enabling Bunny to play nicely with amqp (thanks Dan) * When instantiating a default exchange (one beginning with ?amq.?) the type will be inferred from the name. * Fixed Queue#subscribe and included Queue#unsubscribe method. See examples/simple_consumer.rb for details You can get it from Rubyforge or GitHub as usual. Let me know if you have any issues with it, otherwise, happy hacking! Regards, Chris From bunny-amqp-devel at rubyforge.org Tue May 5 10:52:26 2009 From: bunny-amqp-devel at rubyforge.org (Bunny AMQP client mailing list) Date: Tue, 5 May 2009 15:52:26 +0100 Subject: [bunny-amqp-devel] Making Bunny a RabbitMQ client only Message-ID: <0907FADF-EFF1-4A13-A625-E4CE344D5018@gmail.com> I'm considering making Bunny a RabbitMQ client only. Ideally I would like Bunny to be vendor neutral, however, when I started this project I only had RabbitMQ in mind as the target broker/server (as the name implies). I am enjoying working on Bunny, but I have limited time and resources to spend on developing it and so I propose using them to produce the best Ruby RabbitMQ client that I can. From a purely pragmatic point of view, I don't see how I will be able to test against all of the other significant AMQP-compliant brokers/servers and cater for their unavoidable idiosyncrasies and implementation differences. Does anyone have any opinion about this course of action one way or the other? Regards, Chris From bunny-amqp-devel at rubyforge.org Wed May 6 05:08:54 2009 From: bunny-amqp-devel at rubyforge.org (Bunny AMQP client mailing list) Date: Wed, 6 May 2009 11:08:54 +0200 Subject: [bunny-amqp-devel] Making Bunny a RabbitMQ client only In-Reply-To: <0907FADF-EFF1-4A13-A625-E4CE344D5018@gmail.com> References: <0907FADF-EFF1-4A13-A625-E4CE344D5018@gmail.com> Message-ID: <6609772B-4E50-4859-BFC7-CC805AD1AC8B@agilisto.com> I don't think its a bad idea. Do one thing and do it well, as they say. On 05 May 2009, at 4:52 PM, Bunny AMQP client mailing list wrote: > I'm considering making Bunny a RabbitMQ client only. Ideally I would > like Bunny to be vendor neutral, however, when I started this > project I only had RabbitMQ in mind as the target broker/server (as > the name implies). > > I am enjoying working on Bunny, but I have limited time and > resources to spend on developing it and so I propose using them to > produce the best Ruby RabbitMQ client that I can. From a purely > pragmatic point of view, I don't see how I will be able to test > against all of the other significant AMQP-compliant brokers/servers > and cater for their unavoidable idiosyncrasies and implementation > differences. > > Does anyone have any opinion about this course of action one way or > the other? > > Regards, > > Chris > _______________________________________________ > bunny-amqp-devel mailing list > bunny-amqp-devel at rubyforge.org > http://rubyforge.org/mailman/listinfo/bunny-amqp-devel -- Craig Paterson craigp at agilisto.com +27 82 377 3416 From bunny-amqp-devel at rubyforge.org Wed May 6 09:14:08 2009 From: bunny-amqp-devel at rubyforge.org (Bunny AMQP client mailing list) Date: Wed, 06 May 2009 23:14:08 +1000 Subject: [bunny-amqp-devel] Making Bunny a RabbitMQ client only In-Reply-To: <0907FADF-EFF1-4A13-A625-E4CE344D5018@gmail.com> References: <0907FADF-EFF1-4A13-A625-E4CE344D5018@gmail.com> Message-ID: <1241615381-sup-1890@wrasse> Excerpts from Bunny AMQP client mailing list's message of Wed May 06 00:52:26 +1000 2009: > I'm considering making Bunny a RabbitMQ client only. Ideally I would > like Bunny to be vendor neutral, however, when I started this project > I only had RabbitMQ in mind as the target broker/server (as the name > implies). > > I am enjoying working on Bunny, but I have limited time and resources > to spend on developing it and so I propose using them to produce the > best Ruby RabbitMQ client that I can. From a purely pragmatic point > of view, I don't see how I will be able to test against all of the > other significant AMQP-compliant brokers/servers and cater for their > unavoidable idiosyncrasies and implementation differences. > > Does anyone have any opinion about this course of action one way or > the other? > > Regards, > > Chris Given that rabbitmq does seem to be raising to prominence and it's standards compliance I think making it "tested against rabbitmq, but YMMV with others" is a sensible way to go. If at a later date you or some one else has more time to test against other implementations great, it not then so be it. rgh From bunny-amqp-devel at rubyforge.org Thu May 7 12:49:32 2009 From: bunny-amqp-devel at rubyforge.org (Bunny AMQP client mailing list) Date: Thu, 7 May 2009 17:49:32 +0100 Subject: [bunny-amqp-devel] Change to :header option return hash Message-ID: <75173C65-DAC8-49E8-89D5-8EB41537C41D@gmail.com> Hello, The :header option for Queue#pop and Queue#subscribe now adds additional information to the returned hash. The returned hash now contains ? {:header, :payload, :delivery_details}. This change will be in the forthcoming 0.2.1 gem and has been committed to GitHub (http://github.com/celldee/bunny) if you want to get hold of it early. Regards, Chris From bunny-amqp-devel at rubyforge.org Fri May 8 03:09:31 2009 From: bunny-amqp-devel at rubyforge.org (Bunny AMQP client mailing list) Date: Fri, 8 May 2009 08:09:31 +0100 Subject: [bunny-amqp-devel] Changes for Bunny v0.3.0 Message-ID: <83BD090B-8BE0-437A-8E3C-2352114DEB27@gmail.com> Hello, I'm preparing to make another Bunny release. It contains changes that are significant enough to justify a jump in minor release number. These are the proposed changes - * Instantiate Bunny instance with Bunny::Client.new instead of Bunny.new * The :header option for Queue#pop and Queue#subscribe adds additional information to the returned hash. The returned hash now contains ? {:header, :payload, :delivery_details} * All Bunny classes and modules wrapped in Bunny namespace * Return messages from Bunny methods are now symbols. For example, ?CONNECTED? is now :connected You can get the pre-release code from GitHub (http://github.com/ celldee/bunny) as usual. Please let me know if you have any major concerns and I will try to accommodate your wishes if it makes sense to do so. Regards, Chris From bunny-amqp-devel at rubyforge.org Sun May 10 17:11:59 2009 From: bunny-amqp-devel at rubyforge.org (Bunny AMQP client mailing list) Date: Sun, 10 May 2009 22:11:59 +0100 Subject: [bunny-amqp-devel] [ANN] Version 0.3.0 of Bunny is now available Message-ID: <47D79E6E-9E63-41FD-AA0F-BCB01170B1C9@gmail.com> A new release of Bunny (http://github.com/celldee/bunny) is available. The highlights are - * Rdoc documentation is included * Bunny version number accessible from Bunny#version * Instantiate Bunny instance with Bunny::Client#new instead of Bunny#new * The :header option for Queue#pop and Queue#subscribe adds additional information to the returned hash. The returned hash now contains ? {:header, :payload, :delivery_details} * All Bunny classes and modules wrapped in Bunny namespace * Return messages from Bunny methods are now symbols - o ?CONNECTED? to :connected o ?NOT CONNECTED? to :not_connected o ?QUEUE DELETED? to :delete_ok o ?EXCHANGE DELETED? to :delete_ok o ?BIND SUCCESSFUL? to :bind_ok o ?UNBIND SUCCESSFUL? to :unbind_ok Please let me know if there are any issues. You can raise them on GitHub if you like, so that I can keep track of them in a central place. Regards, Chris From bunny-amqp-devel at rubyforge.org Sun May 10 19:53:30 2009 From: bunny-amqp-devel at rubyforge.org (Bunny AMQP client mailing list) Date: Mon, 11 May 2009 00:53:30 +0100 Subject: [bunny-amqp-devel] [ANN] Release of version 0.3.1 of Bunny Message-ID: Just a small addition after 0.3.0. I decided to create a Bunny#new method so that the API would not change. Regards, Chris From bunny-amqp-devel at rubyforge.org Thu May 14 16:13:21 2009 From: bunny-amqp-devel at rubyforge.org (Bunny AMQP client mailing list) Date: Thu, 14 May 2009 21:13:21 +0100 Subject: [bunny-amqp-devel] Qrack and what it means for Bunny Message-ID: Hello, I have been working on a project with Aman Gupta called 'Qrack' - http://github.com/celldee/qrack - which aims to encapsulate the Ruby AMQP protocol stuff. I've tested it with Bunny and it functions well as a drop in replacement providing the AMQP protocol underpinnings. In the next release of Bunny I intend to introduce a dependency on a Qrack gem. Do any of you have any thoughts about this? Are there any particular features that you would like to see implemented? Any ideas to refine/refactor? Regards, Chris From bunny-amqp-devel at rubyforge.org Fri May 15 06:09:33 2009 From: bunny-amqp-devel at rubyforge.org (Bunny AMQP client mailing list) Date: Fri, 15 May 2009 11:09:33 +0100 Subject: [bunny-amqp-devel] Qrack in Bunny Message-ID: <937BB89B-3954-45E3-BAFF-98E81C7599D8@gmail.com> Hello, I've been thinking about how best to incorporate Qrack (http:// github.com/celldee/qrack) into Bunny. Due to the dynamic nature of Qrack, in that you can generate Ruby classes based on different versions of the AMQP XML specifications, I propose including a qrack directory in the Bunny project under lib. Therefore, there will be no additional gem dependencies for Bunny and the qrack directory will include the Ruby classes for a specific version of the AMQP XML specification. Regards, Chris From bunny-amqp-devel at rubyforge.org Fri May 15 07:43:00 2009 From: bunny-amqp-devel at rubyforge.org (Bunny AMQP client mailing list) Date: Fri, 15 May 2009 12:43:00 +0100 Subject: [bunny-amqp-devel] [ANN] Bunny v0.4.0 is now available Message-ID: Version 0.4.0 of Bunny is now available. It contains the new Qrack module which provides the AMQP wire protocol classes as well as Frame and Buffer classes. It should be available from Rubyforge or GitHub so give it a try. Regards, Chris From bunny-amqp-devel at rubyforge.org Wed May 20 09:47:00 2009 From: bunny-amqp-devel at rubyforge.org (Bunny AMQP client mailing list) Date: Wed, 20 May 2009 14:47:00 +0100 Subject: [bunny-amqp-devel] RabbitMQ v1.5.5 Message-ID: <901CB414-8B52-43FF-834E-1C4A623FF533@gmail.com> I have run the Bunny specs and examples against RabbitMQ v1.5.5 and everything seems to be working. If anybody finds any issues with Bunny and the new RabbitMQ release please let me know. Regards, Chris Duncan From bunny-amqp-devel at rubyforge.org Wed May 20 10:59:56 2009 From: bunny-amqp-devel at rubyforge.org (Bunny AMQP client mailing list) Date: Wed, 20 May 2009 15:59:56 +0100 Subject: [bunny-amqp-devel] New Queue#purge method Message-ID: <53B42BAB-2CF2-4653-96D4-B2A66C13C84C@gmail.com> I have added a Queue#purge method that deletes all messages from a queue. It is invoked like this - client = Bunny.new client.start q = client.queue('test') q.purge It returns :purge_ok if successful. This is available from the master GitHub repository - http://github/ celldee/bunny - if you want to try it before the v0.4.1 gem release. Regards, Chris From bunny-amqp-devel at rubyforge.org Wed May 20 12:14:37 2009 From: bunny-amqp-devel at rubyforge.org (Bunny AMQP client mailing list) Date: Wed, 20 May 2009 12:14:37 -0400 Subject: [bunny-amqp-devel] undefined method `enum_with_index' for [false]:Array Message-ID: <4A142C6D.5090101@andrew.cmu.edu> Hello, I'm using ruby 1.9.1 and bunny 0.4.0. Code works fine on ruby 1.8.6. I'm getting the following error: /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/qrack/transport/buffer.rb:189:in `block in write': undefined method `enum_with_index' for [false]:Array (NoMethodError) from /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/qrack/transport/buffer.rb:188:in `each_slice' from /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/qrack/transport/buffer.rb:188:in `each' from /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/qrack/transport/buffer.rb:188:in `write' from /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/qrack/protocol/protocol.rb:50:in `to_binary' from /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/qrack/protocol/protocol.rb:57:in `to_s' from /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/qrack/transport/buffer.rb:153:in `write' from /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/qrack/transport/frame.rb:55:in `to_binary' from /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/qrack/transport/frame.rb:62:in `to_s' from /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/bunny/client.rb:152:in `block in send_frame' from /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/bunny/client.rb:146:in `each' from /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/bunny/client.rb:146:in `send_frame' from /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/bunny/client.rb:248:in `start_session' from mq-publisher.rb:45:in `
' b = Bunny.new( :host => a.settings[:mq_hostname], :user => a.settings[:mq_username], :pass => a.settings[:mq_password], :vhost => a.settings[:mq_vhost]) b.start ^-- line 45 From bunny-amqp-devel at rubyforge.org Wed May 20 19:49:42 2009 From: bunny-amqp-devel at rubyforge.org (Bunny AMQP client mailing list) Date: Wed, 20 May 2009 16:49:42 -0700 (PDT) Subject: [bunny-amqp-devel] undefined method `enum_with_index' for [false]:Array In-Reply-To: <4A142C6D.5090101@andrew.cmu.edu> References: <4A142C6D.5090101@andrew.cmu.edu> Message-ID: Hi On May 20, 5:14?pm, Bunny AMQP client mailing list wrote: > Hello, > > I'm using ruby 1.9.1 and bunny 0.4.0. ?Code works fine on ruby 1.8.6. > > I'm getting the following error: > > /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/qrack/transport/buffer.rb:189:in > `block in write': undefined method `enum_with_index' for [false]:Array > (NoMethodError) > ? ? ? ? from > /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/qrack/transport/buffer.rb:188:in > `each_slice' > ? ? ? ? from > /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/qrack/transport/buffer.rb:188:in > `each' > ? ? ? ? from > /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/qrack/transport/buffer.rb:188:in > `write' > ? ? ? ? from > /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/qrack/protocol/protocol.rb:50:in > `to_binary' > ? ? ? ? from > /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/qrack/protocol/protocol.rb:57:in > `to_s' > ? ? ? ? from > /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/qrack/transport/buffer.rb:153:in > `write' > ? ? ? ? from > /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/qrack/transport/frame.rb:55:in > `to_binary' > ? ? ? ? from > /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/qrack/transport/frame.rb:62:in > `to_s' > ? ? ? ? from > /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/bunny/client.rb:152:in > `block in send_frame' > ? ? ? ? from > /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/bunny/client.rb:146:in > `each' > ? ? ? ? from > /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/bunny/client.rb:146:in > `send_frame' > ? ? ? ? from > /usr/local/lib/ruby/gems/1.9.1/gems/celldee-bunny-0.4.0/lib/bunny/client.rb:248:in > `start_session' > ? ? ? ? from mq-publisher.rb:45:in `
' > > b = Bunny.new( > ? ? ? ? :host => a.settings[:mq_hostname], > ? ? ? ? :user => a.settings[:mq_username], > ? ? ? ? :pass => a.settings[:mq_password], > ? ? ? ?:vhost => a.settings[:mq_vhost]) > b.start > ^-- line 45 > _______________________________________________ > bunny-amqp-devel mailing list > bunny-amqp-de... at rubyforge.orghttp://rubyforge.org/mailman/listinfo/bunny-amqp-devel Thanks for finding this. I have put a patch up on GitHub that should work for you. I will create a new gem v0.4.1 shortly which will include the patch. Regards, Chris From bunny-amqp-devel at rubyforge.org Thu May 21 02:40:56 2009 From: bunny-amqp-devel at rubyforge.org (Bunny AMQP client mailing list) Date: Thu, 21 May 2009 07:40:56 +0100 Subject: [bunny-amqp-devel] [ANN] New Bunny release v0.4.1 Message-ID: <13B4334B-CB75-4D54-87A6-8EE90B51A34E@gmail.com> Hello, A new release of Bunny is available. It contains the following changes - * Add Queue#purge method. This deletes all messages from a queue. * Make buffer.rb compatible with Ruby v1.8.6/1.8.7/1.9.1 It is available from GitHub - http://github.com/celldee/bunny and Rubyforge. Please let me know if you have any issues. Regards, Chris Duncan From bunny-amqp-devel at rubyforge.org Fri May 22 06:14:56 2009 From: bunny-amqp-devel at rubyforge.org (Bunny AMQP client mailing list) Date: Fri, 22 May 2009 11:14:56 +0100 Subject: [bunny-amqp-devel] [ANN] New release v0.4.2 of Bunny available Message-ID: <67E5B9A6-7F50-4802-9B58-42E07334DC87@gmail.com> Hello, A new release of Bunny is frolicking in the fields. The changes are - * Client#recover method added. It can be used to requeue/redeliver unacknowledged messages * Queue#ack method amended to allow arguments in accordance with AMQP specification 0-8 (thanks dkindlund) * Queue#ack method changed to prevent error if called with nil delivery_tag (thanks dkindlund) * Client require statement in qrack.rb amended to prevent name clashes (thanks dkindlund) It is available from the usual outlets, GitHub (http://github.com/ celldee/bunny) and Rubyforge. As usual, if you have any issues please let me know and I will address them as quickly as I can. The issue tracker in GitHub is quite useful, so if possible please make use of it. Regards, Chris From bunny-amqp-devel at rubyforge.org Fri May 22 10:42:13 2009 From: bunny-amqp-devel at rubyforge.org (Bunny AMQP client mailing list) Date: Fri, 22 May 2009 15:42:13 +0100 Subject: [bunny-amqp-devel] Bunny v0.4.2 gem Message-ID: Up until now I have been able to provide updates on both Rubyforge and GitHub. Unfortunately, with this release, although I have uploaded the new gem to Rubyforge it is not yet available when you use rubygems in the time-honoured way - sudo gem install bunny Version 0.4.1 is the newest gem available from the Rubyforge repository. At least I can't see the new gem and I have always been able to in the past. Maybe other people have the same issue? I will monitor the situation. Hopefully it is only a temporary glitch. Regards, Chris From bunny-amqp-devel at rubyforge.org Fri May 22 18:43:55 2009 From: bunny-amqp-devel at rubyforge.org (Bunny AMQP client mailing list) Date: Fri, 22 May 2009 23:43:55 +0100 Subject: [bunny-amqp-devel] Bunny v0.4.2 gem now available from Rubyforge Message-ID: <2A20C472-9154-491B-A88B-6CF8A3AE40F1@gmail.com> Hello, I re-released the new gem. This time it has shown up in the Rubyforge rubygems repository. Hurray! Regards, Chris