bunny 2.16.1 → 2.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/ChangeLog.md +28 -1
- data/README.md +5 -6
- data/lib/bunny/session.rb +4 -0
- data/lib/bunny/version.rb +1 -1
- data/spec/higher_level_api/integration/connection_spec.rb +26 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3f3ba4a5565a42eace00f8789c1be953871d9dc57d42028a94a9dd70a586271e
|
4
|
+
data.tar.gz: c7d2fdf832b466a27c7ae884e6195729d31a6bf1cb6accde9818c2f72b46cdc6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 26a352492ca652429975e45ec36fad12ebfd3c94e66babb879afb0f09dcec0158affc820f8a29fd07a25d8db6ac9312fd31ebc5b1a3d4c315ecfeeb880a5a8f2
|
7
|
+
data.tar.gz: 393fa99fb87c7784eccd0f5019fe3668b39064e15935d85f4134c85aa6b138849d0026addb814f49d00f606b9157b78878863c875d2ad6480b17b3053dcb98fb
|
data/ChangeLog.md
CHANGED
@@ -1,8 +1,35 @@
|
|
1
|
-
## Changes between Bunny 2.
|
1
|
+
## Changes between Bunny 2.17.x and 2.18.0 (in development)
|
2
2
|
|
3
3
|
No changes yet.
|
4
4
|
|
5
5
|
|
6
|
+
## Changes between Bunny 2.16.x and 2.17.0 (Sep 11th, 2020)
|
7
|
+
|
8
|
+
### Easier to Specify a Client-Propvided Connection Name
|
9
|
+
|
10
|
+
It is now easier to provide a client-provided (custom) connection
|
11
|
+
name that will be displayed in the RabbitMQ management UI and mentioned in
|
12
|
+
[server logs](https://www.rabbitmq.com/logging.html).
|
13
|
+
|
14
|
+
Instead of
|
15
|
+
|
16
|
+
``` ruby
|
17
|
+
conn = Bunny.new(client_properties: {connection_name: 'app ABC #{rand}'})
|
18
|
+
conn.start
|
19
|
+
```
|
20
|
+
|
21
|
+
a new top-level connection option now can be used:
|
22
|
+
|
23
|
+
``` ruby
|
24
|
+
conn = Bunny.new(connection_name: 'app ABC #{rand}')
|
25
|
+
conn.start
|
26
|
+
```
|
27
|
+
|
28
|
+
Contributed by @brerx.
|
29
|
+
|
30
|
+
GitHub issue: [ruby-amqp/bunny#600](https://github.com/ruby-amqp/bunny/pull/600)
|
31
|
+
|
32
|
+
|
6
33
|
## Changes between Bunny 2.15.0 and 2.16.0 (Aug 14th, 2020)
|
7
34
|
|
8
35
|
### Asynchronous Exception Delegate
|
data/README.md
CHANGED
@@ -43,12 +43,11 @@ Specific examples:
|
|
43
43
|
Web applications that display that information in the real time.
|
44
44
|
|
45
45
|
|
46
|
-
|
47
46
|
## Supported Ruby Versions
|
48
47
|
|
49
48
|
Modern Bunny versions support
|
50
49
|
|
51
|
-
* CRuby 2.3 through 2.
|
50
|
+
* CRuby 2.3 through 2.7 (inclusive)
|
52
51
|
|
53
52
|
Bunny works sufficiently well on JRuby but there are known
|
54
53
|
JRuby bugs in versions prior to JRuby 9000 that cause high CPU burn. JRuby users should
|
@@ -71,10 +70,10 @@ a stable public API.
|
|
71
70
|
Change logs per release series:
|
72
71
|
|
73
72
|
* [master](https://github.com/ruby-amqp/bunny/blob/master/ChangeLog.md)
|
74
|
-
* [2.
|
73
|
+
* [2.16.x](https://github.com/ruby-amqp/bunny/blob/2.16.x-stable/ChangeLog.md)
|
74
|
+
* [2.15.x](https://github.com/ruby-amqp/bunny/blob/2.15.x-stable/ChangeLog.md)
|
75
|
+
* [2.14.x](https://github.com/ruby-amqp/bunny/blob/2.14.x-stable/ChangeLog.md)
|
75
76
|
* [2.13.x](https://github.com/ruby-amqp/bunny/blob/2.13.x-stable/ChangeLog.md)
|
76
|
-
* [2.12.x](https://github.com/ruby-amqp/bunny/blob/2.12.x-stable/ChangeLog.md)
|
77
|
-
* [2.11.x](https://github.com/ruby-amqp/bunny/blob/2.11.x-stable/ChangeLog.md)
|
78
77
|
|
79
78
|
|
80
79
|
|
@@ -97,7 +96,7 @@ gem install bunny
|
|
97
96
|
To use Bunny in a project managed with Bundler:
|
98
97
|
|
99
98
|
``` ruby
|
100
|
-
gem "bunny", ">= 2.
|
99
|
+
gem "bunny", ">= 2.16.1"
|
101
100
|
```
|
102
101
|
|
103
102
|
|
data/lib/bunny/session.rb
CHANGED
@@ -89,6 +89,7 @@ module Bunny
|
|
89
89
|
# @return [Integer] Timeout for blocking protocol operations (queue.declare, queue.bind, etc), in milliseconds. Default is 15000.
|
90
90
|
attr_reader :continuation_timeout
|
91
91
|
attr_reader :network_recovery_interval
|
92
|
+
attr_reader :connection_name
|
92
93
|
attr_accessor :socket_configurator
|
93
94
|
|
94
95
|
# @param [String, Hash] connection_string_or_opts Connection string or a hash of connection options
|
@@ -128,6 +129,7 @@ module Bunny
|
|
128
129
|
#
|
129
130
|
# @option optz [String] :auth_mechanism ("PLAIN") Authentication mechanism, PLAIN or EXTERNAL
|
130
131
|
# @option optz [String] :locale ("PLAIN") Locale RabbitMQ should use
|
132
|
+
# @option optz [String] :connection_name (nil) Client-provided connection name, if any. Note that the value returned does not uniquely identify a connection and cannot be used as a connection identifier in HTTP API requests.
|
131
133
|
#
|
132
134
|
# @see http://rubybunny.info/articles/connecting.html Connecting to RabbitMQ guide
|
133
135
|
# @see http://rubybunny.info/articles/tls.html TLS/SSL guide
|
@@ -198,7 +200,9 @@ module Bunny
|
|
198
200
|
@client_heartbeat = self.heartbeat_from(opts)
|
199
201
|
|
200
202
|
client_props = opts[:properties] || opts[:client_properties] || {}
|
203
|
+
@connection_name = client_props[:connection_name] || opts[:connection_name]
|
201
204
|
@client_properties = DEFAULT_CLIENT_PROPERTIES.merge(client_props)
|
205
|
+
.merge(connection_name: connection_name)
|
202
206
|
@mechanism = normalize_auth_mechanism(opts.fetch(:auth_mechanism, "PLAIN"))
|
203
207
|
@credentials_encoder = credentials_encoder_for(@mechanism)
|
204
208
|
@locale = @opts.fetch(:locale, DEFAULT_LOCALE)
|
data/lib/bunny/version.rb
CHANGED
@@ -560,4 +560,30 @@ describe Bunny::Session do
|
|
560
560
|
described_class.new(logger: logger)
|
561
561
|
end
|
562
562
|
end
|
563
|
+
|
564
|
+
context "initialized with a custom connection name" do
|
565
|
+
it "uses provided connection name with default connection string" do
|
566
|
+
conn = Bunny.new(connection_name: 'test_name')
|
567
|
+
|
568
|
+
expect(conn.connection_name).to eq 'test_name'
|
569
|
+
end
|
570
|
+
|
571
|
+
it "uses provided connection name from client property hash" do
|
572
|
+
conn = Bunny.new(client_properties: {connection_name: 'cp/test_name'})
|
573
|
+
|
574
|
+
expect(conn.connection_name).to eq 'cp/test_name'
|
575
|
+
end
|
576
|
+
|
577
|
+
it "uses provided connection name with custom connection string" do
|
578
|
+
conn = Bunny.new('amqp://guest:guest@rabbitmq:5672', connection_name: 'test_name3')
|
579
|
+
|
580
|
+
expect(conn.connection_name).to eq 'test_name3'
|
581
|
+
end
|
582
|
+
|
583
|
+
it "uses provided connection name with hash options" do
|
584
|
+
conn = Bunny.new(user: 'user', password: 'p455w0rd', connection_name: 'test_name4')
|
585
|
+
|
586
|
+
expect(conn.connection_name).to eq 'test_name4'
|
587
|
+
end
|
588
|
+
end
|
563
589
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bunny
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.17.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris Duncan
|
@@ -12,7 +12,7 @@ authors:
|
|
12
12
|
autorequire:
|
13
13
|
bindir: bin
|
14
14
|
cert_chain: []
|
15
|
-
date: 2020-
|
15
|
+
date: 2020-09-11 00:00:00.000000000 Z
|
16
16
|
dependencies:
|
17
17
|
- !ruby/object:Gem::Dependency
|
18
18
|
name: amq-protocol
|