I've had some great contributions from Marc Bowes recently where he
slapped me on the wrists for the legacy use of the 0.6-series of the
AMQP gem. I'm currently torn whether we should have the next DK
release use the new 0.8-series AMQP gem (currently in RC5 status) or
stick to 0.7 until a 0.8 stable is released.
Gut feel says we might want to take 0.8 as the preferred option for
the dk generators and the dk-ruote integration. Since DK's internal
use of the AMQP gem is minimal, I need to gauge the impact this will
have on the projects people use DK for. I personally don't leverage
all of the AMQP specification, so for my personal use it would make no
difference which version we're on. I only need to orchestrate the
version with the ruote-amqp gem.
Any objections to this, or can I hack away and get this onto master
later today ?
The next release is still a few weeks off as I'm building up speed
working through the pull requests and cleaning up some internals.
Thanks to everyone involved recently in getting various parts dusted
off and ready for a whole new life!
Ciao
--
Kenneth Kalmer
kenneth...@gmail.com
http://opensourcery.co.za
@kennethkalmer
--
You received this message because you are subscribed to the Google Groups "Daemon Kit" group.
To post to this group, send email to daemo...@googlegroups.com.
To unsubscribe from this group, send email to daemon-kit+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/daemon-kit?hl=en.
Ultimately the generator just spits out a line in the Gemfile for
requiring the amqp gem, so I can have the generator default to one
version and have a commented out line for the other.
The potential issues lie in these files:
https://github.com/kennethkalmer/daemon-kit/blob/master/lib/daemon_kit/dk_amqp.rb
https://github.com/kennethkalmer/daemon-kit/blob/master/lib/daemon_kit/ruote_workitem.rb#L94
https://github.com/kennethkalmer/daemon-kit/blob/master/lib/daemon_kit/ruote_participants.rb#L98-120
If the AMQP gem's API's are the same for those three spots it would
really not make a difference.
As an aside, feedback on twitter has been both positive and not so far:
https://twitter.com/rubyamqp/status/74024997752029184 (positive)
https://twitter.com/coffeeaddict_nl/status/74034699307192321 (warning)
Thanks for the feedback so far.
Ciao !
OK, so my experiments with ruote-amqp and the ruote-amqp-ping-pong [1]
example had me come to more or less the same conclusion as Marc. The
thing is we have to provide better documentation around the AMQP
versions (and the project overall, but that is a separate issue
altogether).
The gist of it is this:
0.7.1 works well and supports older RabbitMQ servers and all Ruby
versions (1.8.7, REE, 1.9.2), should be adoptable by developers
targeting older systems, or systems that you 'apt-get install
rabbitmq'. It targets the 0.8 AMQP SPEC.
0.8.0.rc12 is a much better design, better documentation and such and
will make for a better "default". The downsides are however that it
doesn't support 1.8.7 yet due to a Bug in Ruby itself. It also
requires RabbitMQ 2.0 or later, or another broker that implements the
0.9.1 AMQP SPEC. Oh, it also brings in EventMachine 1.0.0 which is
currently an RC.
So herewith a summary:
1. DK depends on eventmachine >= 0.10.12, which will allow the EM RC
required by AMQP 0.8
2. Default to 0.8.0 in generated Gemfile for all AMQP related projects
3. Clearly document the option to use 0.7.1 without a hitch
I'll tackle the documentation in the coming days, and make a separate
post to the list about my plans there.
For now, by show of hands, do I bump to 0.1.9 because of this
dependency change (although no API changes have been made), or will
0.1.8.2 be suitable ?
Kind regards
1. http://groups.google.com/group/openwferu-users/browse_thread/thread/f7a8138e987867a3