amqp 0.8.0.rc9 → 0.8.0.rc10
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +2 -1
- data/README.textile +16 -1
- data/lib/amqp.rb +3 -0
- data/lib/amqp/compatibility/ruby187_patchlevel_check.rb +17 -0
- data/lib/amqp/version.rb +1 -1
- metadata +69 -38
data/CHANGELOG
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
= Version 0.8.0
|
2
2
|
|
3
|
-
* [
|
3
|
+
* [BUG] Ruby 1.8.7-p249 is not supported because of this (p249-specific) Ruby bug: http://bit.ly/iONBmH
|
4
|
+
* [FEATURE] AMQP::Utilities::EventLoopHelper detects app server (if any) being used and starts EventMachine reactor in an optimal way.
|
4
5
|
* [FEATURE] AMQP 0.9.1 support, including tx.* operations class.
|
5
6
|
* [API] Default authentication handler now raises AMQP::PossibleAuthenticationFailureError
|
6
7
|
* [API] AMQP::Channel#initialize now takes 3rd (optional) options hash.
|
data/README.textile
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
h1. About amqp gem "!http://travis-ci.org/ruby-amqp/amqp.png!":http://travis-ci.org/ruby-amqp/amqp
|
2
2
|
|
3
3
|
amqp gem is a widely used, feature-rich, well-maintained asynchronous AMQP 0.9.1 client with batteries included.
|
4
|
-
This library works with Ruby 1.8.7, Ruby 1.9.2, JRuby, REE and Rubinius, and is
|
4
|
+
This library works with Ruby 1.8.7 (p174 and p334), Ruby 1.9.2, JRuby, REE and Rubinius, and is
|
5
5
|
licensed under the "Ruby License":http://www.ruby-lang.org/en/LICENSE.txt.
|
6
6
|
Versions 0.8.0 and later of amqp gem implement "AMQP 0.9.1":http://bit.ly/hw2ELX.
|
7
7
|
|
@@ -205,6 +205,21 @@ This library was tested primarily with "RabbitMQ":http://rabbitmq.com, although
|
|
205
205
|
server implementing the "AMQP 0.9.1 spec":http://bit.ly/hw2ELX. For AMQP 0.8.0 brokers,
|
206
206
|
use version 0.7.
|
207
207
|
|
208
|
+
h3. Why isn't Ruby 1.8.7.-p249 supported?
|
209
|
+
|
210
|
+
Because there is absolutely no way we can both make code like the following (pseudo-synchronous) work
|
211
|
+
|
212
|
+
<pre>
|
213
|
+
<code>
|
214
|
+
conn = AMQP.connect
|
215
|
+
ch = AMQP::Channel.new(conn)
|
216
|
+
|
217
|
+
ex = ch.default_exchange
|
218
|
+
ex.publish(some_data)
|
219
|
+
</code>
|
220
|
+
</pre>
|
221
|
+
|
222
|
+
and not be affected by this "Ruby 1.8.7-p249-specific bug (super called outside of method)":http://bit.ly/iONBmH
|
208
223
|
|
209
224
|
h2. Links
|
210
225
|
|
data/lib/amqp.rb
CHANGED
@@ -4,6 +4,9 @@ require "amq/client"
|
|
4
4
|
require "amq/client/adapters/event_machine"
|
5
5
|
|
6
6
|
require "amqp/version"
|
7
|
+
if RUBY_VERSION =~ /^1.8.7/
|
8
|
+
require "amqp/compatibility/ruby187_patchlevel_check"
|
9
|
+
end
|
7
10
|
require "amqp/exceptions"
|
8
11
|
require "amqp/connection"
|
9
12
|
require "amqp/exchange"
|
@@ -0,0 +1,17 @@
|
|
1
|
+
if RUBY_VERSION =~ /^1.8.7/
|
2
|
+
require "rbconfig"
|
3
|
+
conf = RbConfig::CONFIG
|
4
|
+
|
5
|
+
# looks like PATCHLEVEL was added after 1.8.7-p249 release :( MK.
|
6
|
+
if (conf["PATCHLEVEL"] && conf["PATCHLEVEL"] == "249") || (conf["libdir"] =~ /1.8.7-p249/)
|
7
|
+
raise <<-MESSAGE
|
8
|
+
IMPORTANT: amqp gem 0.8.0+ does not support Ruby 1.8.7-p249 (this exact patch level. p174 and p334 are supported!)
|
9
|
+
because of a nasty Ruby bug (http://bit.ly/iONBmH). Refer to http://groups.google.com/group/ruby-amqp/browse_thread/thread/37d6dcc1aea1c102
|
10
|
+
for more information, especially if you want to verify whether a particular Ruby patch level or version or build suffers from
|
11
|
+
this issue.
|
12
|
+
|
13
|
+
To reiterate: 1.8.7-p174 and 1.8.7-p334 are supported. The fix has been committed to MRI in December 2009. It's
|
14
|
+
a good idea to upgrade, although downgrading to p174 is an option, too.
|
15
|
+
MESSAGE
|
16
|
+
end
|
17
|
+
end
|
data/lib/amqp/version.rb
CHANGED
metadata
CHANGED
@@ -1,48 +1,67 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: amqp
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
hash: 15424129
|
5
5
|
prerelease: 6
|
6
|
+
segments:
|
7
|
+
- 0
|
8
|
+
- 8
|
9
|
+
- 0
|
10
|
+
- rc
|
11
|
+
- 10
|
12
|
+
version: 0.8.0.rc10
|
6
13
|
platform: ruby
|
7
|
-
authors:
|
14
|
+
authors:
|
8
15
|
- Aman Gupta
|
9
16
|
- Jakub Stastny aka botanicus
|
10
17
|
- Michael S. Klishin
|
11
18
|
autorequire:
|
12
19
|
bindir: bin
|
13
20
|
cert_chain: []
|
14
|
-
|
15
|
-
|
16
|
-
|
21
|
+
|
22
|
+
date: 2011-05-12 00:00:00 Z
|
23
|
+
dependencies:
|
24
|
+
- !ruby/object:Gem::Dependency
|
17
25
|
name: eventmachine
|
18
|
-
|
26
|
+
prerelease: false
|
27
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
19
28
|
none: false
|
20
|
-
requirements:
|
21
|
-
- -
|
22
|
-
- !ruby/object:Gem::Version
|
23
|
-
|
29
|
+
requirements:
|
30
|
+
- - ">="
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
hash: 3
|
33
|
+
segments:
|
34
|
+
- 0
|
35
|
+
version: "0"
|
24
36
|
type: :runtime
|
25
|
-
|
26
|
-
|
27
|
-
- !ruby/object:Gem::Dependency
|
37
|
+
version_requirements: *id001
|
38
|
+
- !ruby/object:Gem::Dependency
|
28
39
|
name: amq-client
|
29
|
-
|
40
|
+
prerelease: false
|
41
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
30
42
|
none: false
|
31
|
-
requirements:
|
32
|
-
- -
|
33
|
-
- !ruby/object:Gem::Version
|
43
|
+
requirements:
|
44
|
+
- - ">="
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
hash: -3702664442
|
47
|
+
segments:
|
48
|
+
- 0
|
49
|
+
- 7
|
50
|
+
- 0
|
51
|
+
- alpha
|
52
|
+
- 21
|
34
53
|
version: 0.7.0.alpha21
|
35
54
|
type: :runtime
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
included
|
40
|
-
email:
|
55
|
+
version_requirements: *id002
|
56
|
+
description: Widely used, feature-rich asynchronous AMQP 0.9.1 client with batteries included
|
57
|
+
email:
|
41
58
|
- michael@novemberain.com
|
42
59
|
- stastny@101ideas.cz
|
43
60
|
executables: []
|
61
|
+
|
44
62
|
extensions: []
|
45
|
-
|
63
|
+
|
64
|
+
extra_rdoc_files:
|
46
65
|
- README.textile
|
47
66
|
- docs/08Migration.textile
|
48
67
|
- docs/Bindings.textile
|
@@ -58,7 +77,7 @@ extra_rdoc_files:
|
|
58
77
|
- docs/RabbitMQVersions.textile
|
59
78
|
- docs/Routing.textile
|
60
79
|
- docs/VendorSpecificExtensions.textile
|
61
|
-
files:
|
80
|
+
files:
|
62
81
|
- .gitignore
|
63
82
|
- .rspec
|
64
83
|
- .travis.yml
|
@@ -162,6 +181,7 @@ files:
|
|
162
181
|
- lib/amqp.rb
|
163
182
|
- lib/amqp/channel.rb
|
164
183
|
- lib/amqp/client.rb
|
184
|
+
- lib/amqp/compatibility/ruby187_patchlevel_check.rb
|
165
185
|
- lib/amqp/connection.rb
|
166
186
|
- lib/amqp/deprecated/fork.rb
|
167
187
|
- lib/amqp/deprecated/logger.rb
|
@@ -205,27 +225,38 @@ files:
|
|
205
225
|
- tasks.rb
|
206
226
|
homepage: http://github.com/ruby-amqp/amqp
|
207
227
|
licenses: []
|
228
|
+
|
208
229
|
post_install_message:
|
209
|
-
rdoc_options:
|
230
|
+
rdoc_options:
|
210
231
|
- --include=examples --main README.textile
|
211
|
-
require_paths:
|
232
|
+
require_paths:
|
212
233
|
- lib
|
213
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
234
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
214
235
|
none: false
|
215
|
-
requirements:
|
216
|
-
- -
|
217
|
-
- !ruby/object:Gem::Version
|
218
|
-
|
219
|
-
|
236
|
+
requirements:
|
237
|
+
- - ">="
|
238
|
+
- !ruby/object:Gem::Version
|
239
|
+
hash: 3
|
240
|
+
segments:
|
241
|
+
- 0
|
242
|
+
version: "0"
|
243
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
220
244
|
none: false
|
221
|
-
requirements:
|
222
|
-
- -
|
223
|
-
- !ruby/object:Gem::Version
|
245
|
+
requirements:
|
246
|
+
- - ">"
|
247
|
+
- !ruby/object:Gem::Version
|
248
|
+
hash: 25
|
249
|
+
segments:
|
250
|
+
- 1
|
251
|
+
- 3
|
252
|
+
- 1
|
224
253
|
version: 1.3.1
|
225
254
|
requirements: []
|
255
|
+
|
226
256
|
rubyforge_project: amqp
|
227
|
-
rubygems_version: 1.8.
|
257
|
+
rubygems_version: 1.8.2
|
228
258
|
signing_key:
|
229
259
|
specification_version: 3
|
230
260
|
summary: AMQP client implementation in Ruby/EventMachine.
|
231
261
|
test_files: []
|
262
|
+
|