bunny 2.7.4 → 2.22.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/README.md +61 -35
- data/lib/bunny/channel.rb +186 -50
- data/lib/bunny/channel_id_allocator.rb +3 -1
- data/lib/bunny/consumer.rb +2 -2
- data/lib/bunny/consumer_work_pool.rb +2 -1
- data/lib/bunny/cruby/socket.rb +3 -0
- data/lib/bunny/cruby/ssl_socket.rb +6 -1
- data/lib/bunny/delivery_info.rb +1 -1
- data/lib/bunny/heartbeat_sender.rb +2 -1
- data/lib/bunny/jruby/ssl_socket.rb +5 -0
- data/lib/bunny/queue.rb +36 -8
- data/lib/bunny/reader_loop.rb +22 -10
- data/lib/bunny/session.rb +152 -65
- data/lib/bunny/test_kit.rb +14 -0
- data/lib/bunny/transport.rb +132 -49
- data/lib/bunny/version.rb +1 -1
- data/lib/bunny.rb +45 -4
- metadata +37 -225
- data/.github/ISSUE_TEMPLATE.md +0 -18
- data/.gitignore +0 -28
- data/.rspec +0 -1
- data/.travis.yml +0 -20
- data/.yardopts +0 -8
- data/CONTRIBUTING.md +0 -111
- data/ChangeLog.md +0 -1831
- data/Gemfile +0 -53
- data/LICENSE +0 -21
- data/Rakefile +0 -46
- data/benchmarks/basic_publish/with_128K_messages.rb +0 -35
- data/benchmarks/basic_publish/with_1k_messages.rb +0 -35
- data/benchmarks/basic_publish/with_4K_messages.rb +0 -35
- data/benchmarks/basic_publish/with_64K_messages.rb +0 -35
- data/benchmarks/channel_open.rb +0 -28
- data/benchmarks/mutex_and_monitor.rb +0 -42
- data/benchmarks/queue_declare.rb +0 -29
- data/benchmarks/queue_declare_and_bind.rb +0 -29
- data/benchmarks/queue_declare_bind_and_delete.rb +0 -29
- data/benchmarks/synchronized_sorted_set.rb +0 -53
- data/benchmarks/write_vs_write_nonblock.rb +0 -49
- data/bin/ci/before_build +0 -46
- data/bunny.gemspec +0 -35
- data/docker/Dockerfile +0 -16
- data/docker/docker-entrypoint.sh +0 -37
- data/docker-compose.yml +0 -18
- data/examples/connection/authentication_failure.rb +0 -16
- data/examples/connection/automatic_recovery_with_basic_get.rb +0 -40
- data/examples/connection/automatic_recovery_with_client_named_queues.rb +0 -36
- data/examples/connection/automatic_recovery_with_multiple_consumers.rb +0 -46
- data/examples/connection/automatic_recovery_with_republishing.rb +0 -109
- data/examples/connection/automatic_recovery_with_server_named_queues.rb +0 -35
- data/examples/connection/channel_level_exception.rb +0 -27
- data/examples/connection/disabled_automatic_recovery.rb +0 -34
- data/examples/connection/heartbeat.rb +0 -17
- data/examples/connection/manually_reconnecting_consumer.rb +0 -23
- data/examples/connection/manually_reconnecting_publisher.rb +0 -28
- data/examples/connection/unknown_host.rb +0 -16
- data/examples/consumers/high_and_low_priority.rb +0 -50
- data/examples/guides/exchanges/direct_exchange_routing.rb +0 -36
- data/examples/guides/exchanges/fanout_exchange_routing.rb +0 -28
- data/examples/guides/exchanges/headers_exchange_routing.rb +0 -31
- data/examples/guides/exchanges/mandatory_messages.rb +0 -30
- data/examples/guides/extensions/alternate_exchange.rb +0 -30
- data/examples/guides/extensions/basic_nack.rb +0 -33
- data/examples/guides/extensions/connection_blocked.rb +0 -35
- data/examples/guides/extensions/consumer_cancellation_notification.rb +0 -39
- data/examples/guides/extensions/dead_letter_exchange.rb +0 -32
- data/examples/guides/extensions/exchange_to_exchange_bindings.rb +0 -29
- data/examples/guides/extensions/per_message_ttl.rb +0 -36
- data/examples/guides/extensions/per_queue_message_ttl.rb +0 -36
- data/examples/guides/extensions/publisher_confirms.rb +0 -28
- data/examples/guides/extensions/queue_lease.rb +0 -26
- data/examples/guides/extensions/sender_selected_distribution.rb +0 -32
- data/examples/guides/getting_started/blabbr.rb +0 -27
- data/examples/guides/getting_started/hello_world.rb +0 -22
- data/examples/guides/getting_started/weathr.rb +0 -49
- data/examples/guides/queues/one_off_consumer.rb +0 -25
- data/examples/guides/queues/redeliveries.rb +0 -81
- data/profiling/basic_publish/with_4K_messages.rb +0 -33
- data/repl +0 -3
- data/spec/config/enabled_plugins +0 -1
- data/spec/config/rabbitmq.config +0 -19
- data/spec/higher_level_api/integration/basic_ack_spec.rb +0 -230
- data/spec/higher_level_api/integration/basic_cancel_spec.rb +0 -142
- data/spec/higher_level_api/integration/basic_consume_spec.rb +0 -349
- data/spec/higher_level_api/integration/basic_consume_with_objects_spec.rb +0 -54
- data/spec/higher_level_api/integration/basic_get_spec.rb +0 -80
- data/spec/higher_level_api/integration/basic_nack_spec.rb +0 -82
- data/spec/higher_level_api/integration/basic_publish_spec.rb +0 -74
- data/spec/higher_level_api/integration/basic_qos_spec.rb +0 -57
- data/spec/higher_level_api/integration/basic_reject_spec.rb +0 -152
- data/spec/higher_level_api/integration/basic_return_spec.rb +0 -33
- data/spec/higher_level_api/integration/channel_close_spec.rb +0 -25
- data/spec/higher_level_api/integration/channel_open_spec.rb +0 -57
- data/spec/higher_level_api/integration/connection_recovery_spec.rb +0 -471
- data/spec/higher_level_api/integration/connection_spec.rb +0 -559
- data/spec/higher_level_api/integration/connection_stop_spec.rb +0 -83
- data/spec/higher_level_api/integration/consumer_cancellation_notification_spec.rb +0 -128
- data/spec/higher_level_api/integration/dead_lettering_spec.rb +0 -75
- data/spec/higher_level_api/integration/exchange_bind_spec.rb +0 -31
- data/spec/higher_level_api/integration/exchange_declare_spec.rb +0 -237
- data/spec/higher_level_api/integration/exchange_delete_spec.rb +0 -105
- data/spec/higher_level_api/integration/exchange_unbind_spec.rb +0 -40
- data/spec/higher_level_api/integration/exclusive_queue_spec.rb +0 -28
- data/spec/higher_level_api/integration/heartbeat_spec.rb +0 -49
- data/spec/higher_level_api/integration/merry_go_round_spec.rb +0 -85
- data/spec/higher_level_api/integration/message_properties_access_spec.rb +0 -95
- data/spec/higher_level_api/integration/predeclared_exchanges_spec.rb +0 -24
- data/spec/higher_level_api/integration/publisher_confirms_spec.rb +0 -191
- data/spec/higher_level_api/integration/publishing_edge_cases_spec.rb +0 -87
- data/spec/higher_level_api/integration/queue_bind_spec.rb +0 -109
- data/spec/higher_level_api/integration/queue_declare_spec.rb +0 -221
- data/spec/higher_level_api/integration/queue_delete_spec.rb +0 -41
- data/spec/higher_level_api/integration/queue_purge_spec.rb +0 -30
- data/spec/higher_level_api/integration/queue_unbind_spec.rb +0 -54
- data/spec/higher_level_api/integration/read_only_consumer_spec.rb +0 -60
- data/spec/higher_level_api/integration/sender_selected_distribution_spec.rb +0 -36
- data/spec/higher_level_api/integration/tls_connection_spec.rb +0 -222
- data/spec/higher_level_api/integration/tx_commit_spec.rb +0 -21
- data/spec/higher_level_api/integration/tx_rollback_spec.rb +0 -21
- data/spec/higher_level_api/integration/with_channel_spec.rb +0 -25
- data/spec/issues/issue100_spec.rb +0 -42
- data/spec/issues/issue141_spec.rb +0 -43
- data/spec/issues/issue202_spec.rb +0 -15
- data/spec/issues/issue224_spec.rb +0 -40
- data/spec/issues/issue465_spec.rb +0 -32
- data/spec/issues/issue78_spec.rb +0 -72
- data/spec/issues/issue83_spec.rb +0 -30
- data/spec/issues/issue97_attachment.json +0 -1
- data/spec/issues/issue97_spec.rb +0 -175
- data/spec/lower_level_api/integration/basic_cancel_spec.rb +0 -83
- data/spec/lower_level_api/integration/basic_consume_spec.rb +0 -99
- data/spec/spec_helper.rb +0 -51
- data/spec/stress/channel_close_stress_spec.rb +0 -64
- data/spec/stress/channel_open_stress_spec.rb +0 -84
- data/spec/stress/channel_open_stress_with_single_threaded_connection_spec.rb +0 -28
- data/spec/stress/concurrent_consumers_stress_spec.rb +0 -71
- data/spec/stress/concurrent_publishers_stress_spec.rb +0 -54
- data/spec/stress/connection_open_close_spec.rb +0 -52
- data/spec/stress/long_running_consumer_spec.rb +0 -84
- data/spec/tls/ca_certificate.pem +0 -29
- data/spec/tls/ca_key.pem +0 -52
- data/spec/tls/client_certificate.pem +0 -29
- data/spec/tls/client_key.pem +0 -51
- data/spec/tls/generate-server-cert.sh +0 -8
- data/spec/tls/server-openssl.cnf +0 -10
- data/spec/tls/server.csr +0 -16
- data/spec/tls/server_certificate.pem +0 -29
- data/spec/tls/server_key.pem +0 -51
- data/spec/unit/bunny_spec.rb +0 -15
- data/spec/unit/concurrent/atomic_fixnum_spec.rb +0 -35
- data/spec/unit/concurrent/condition_spec.rb +0 -82
- data/spec/unit/concurrent/linked_continuation_queue_spec.rb +0 -35
- data/spec/unit/concurrent/synchronized_sorted_set_spec.rb +0 -73
- data/spec/unit/exchange_recovery_spec.rb +0 -39
- data/spec/unit/version_delivery_tag_spec.rb +0 -28
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.22.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris Duncan
|
@@ -9,10 +9,10 @@ authors:
|
|
9
9
|
- Jakub Stastny aka botanicus
|
10
10
|
- Michael S. Klishin
|
11
11
|
- Stefan Kaes
|
12
|
-
autorequire:
|
12
|
+
autorequire:
|
13
13
|
bindir: bin
|
14
14
|
cert_chain: []
|
15
|
-
date:
|
15
|
+
date: 2023-06-12 00:00:00.000000000 Z
|
16
16
|
dependencies:
|
17
17
|
- !ruby/object:Gem::Dependency
|
18
18
|
name: amq-protocol
|
@@ -20,15 +20,41 @@ dependencies:
|
|
20
20
|
requirements:
|
21
21
|
- - "~>"
|
22
22
|
- !ruby/object:Gem::Version
|
23
|
-
version: 2.
|
23
|
+
version: '2.3'
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 2.3.1
|
24
27
|
type: :runtime
|
25
28
|
prerelease: false
|
26
29
|
version_requirements: !ruby/object:Gem::Requirement
|
27
30
|
requirements:
|
28
31
|
- - "~>"
|
29
32
|
- !ruby/object:Gem::Version
|
30
|
-
version: 2.
|
31
|
-
|
33
|
+
version: '2.3'
|
34
|
+
- - ">="
|
35
|
+
- !ruby/object:Gem::Version
|
36
|
+
version: 2.3.1
|
37
|
+
- !ruby/object:Gem::Dependency
|
38
|
+
name: sorted_set
|
39
|
+
requirement: !ruby/object:Gem::Requirement
|
40
|
+
requirements:
|
41
|
+
- - "~>"
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: '1'
|
44
|
+
- - ">="
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: 1.0.2
|
47
|
+
type: :runtime
|
48
|
+
prerelease: false
|
49
|
+
version_requirements: !ruby/object:Gem::Requirement
|
50
|
+
requirements:
|
51
|
+
- - "~>"
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '1'
|
54
|
+
- - ">="
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: 1.0.2
|
57
|
+
description: Easy to use, feature complete Ruby client for RabbitMQ 3.9 and later
|
32
58
|
versions.
|
33
59
|
email:
|
34
60
|
- michael.s.klishin@gmail.com
|
@@ -37,66 +63,7 @@ extensions: []
|
|
37
63
|
extra_rdoc_files:
|
38
64
|
- README.md
|
39
65
|
files:
|
40
|
-
- ".github/ISSUE_TEMPLATE.md"
|
41
|
-
- ".gitignore"
|
42
|
-
- ".rspec"
|
43
|
-
- ".travis.yml"
|
44
|
-
- ".yardopts"
|
45
|
-
- CONTRIBUTING.md
|
46
|
-
- ChangeLog.md
|
47
|
-
- Gemfile
|
48
|
-
- LICENSE
|
49
66
|
- README.md
|
50
|
-
- Rakefile
|
51
|
-
- benchmarks/basic_publish/with_128K_messages.rb
|
52
|
-
- benchmarks/basic_publish/with_1k_messages.rb
|
53
|
-
- benchmarks/basic_publish/with_4K_messages.rb
|
54
|
-
- benchmarks/basic_publish/with_64K_messages.rb
|
55
|
-
- benchmarks/channel_open.rb
|
56
|
-
- benchmarks/mutex_and_monitor.rb
|
57
|
-
- benchmarks/queue_declare.rb
|
58
|
-
- benchmarks/queue_declare_and_bind.rb
|
59
|
-
- benchmarks/queue_declare_bind_and_delete.rb
|
60
|
-
- benchmarks/synchronized_sorted_set.rb
|
61
|
-
- benchmarks/write_vs_write_nonblock.rb
|
62
|
-
- bin/ci/before_build
|
63
|
-
- bunny.gemspec
|
64
|
-
- docker-compose.yml
|
65
|
-
- docker/Dockerfile
|
66
|
-
- docker/docker-entrypoint.sh
|
67
|
-
- examples/connection/authentication_failure.rb
|
68
|
-
- examples/connection/automatic_recovery_with_basic_get.rb
|
69
|
-
- examples/connection/automatic_recovery_with_client_named_queues.rb
|
70
|
-
- examples/connection/automatic_recovery_with_multiple_consumers.rb
|
71
|
-
- examples/connection/automatic_recovery_with_republishing.rb
|
72
|
-
- examples/connection/automatic_recovery_with_server_named_queues.rb
|
73
|
-
- examples/connection/channel_level_exception.rb
|
74
|
-
- examples/connection/disabled_automatic_recovery.rb
|
75
|
-
- examples/connection/heartbeat.rb
|
76
|
-
- examples/connection/manually_reconnecting_consumer.rb
|
77
|
-
- examples/connection/manually_reconnecting_publisher.rb
|
78
|
-
- examples/connection/unknown_host.rb
|
79
|
-
- examples/consumers/high_and_low_priority.rb
|
80
|
-
- examples/guides/exchanges/direct_exchange_routing.rb
|
81
|
-
- examples/guides/exchanges/fanout_exchange_routing.rb
|
82
|
-
- examples/guides/exchanges/headers_exchange_routing.rb
|
83
|
-
- examples/guides/exchanges/mandatory_messages.rb
|
84
|
-
- examples/guides/extensions/alternate_exchange.rb
|
85
|
-
- examples/guides/extensions/basic_nack.rb
|
86
|
-
- examples/guides/extensions/connection_blocked.rb
|
87
|
-
- examples/guides/extensions/consumer_cancellation_notification.rb
|
88
|
-
- examples/guides/extensions/dead_letter_exchange.rb
|
89
|
-
- examples/guides/extensions/exchange_to_exchange_bindings.rb
|
90
|
-
- examples/guides/extensions/per_message_ttl.rb
|
91
|
-
- examples/guides/extensions/per_queue_message_ttl.rb
|
92
|
-
- examples/guides/extensions/publisher_confirms.rb
|
93
|
-
- examples/guides/extensions/queue_lease.rb
|
94
|
-
- examples/guides/extensions/sender_selected_distribution.rb
|
95
|
-
- examples/guides/getting_started/blabbr.rb
|
96
|
-
- examples/guides/getting_started/hello_world.rb
|
97
|
-
- examples/guides/getting_started/weathr.rb
|
98
|
-
- examples/guides/queues/one_off_consumer.rb
|
99
|
-
- examples/guides/queues/redeliveries.rb
|
100
67
|
- lib/amq/protocol/extensions.rb
|
101
68
|
- lib/bunny.rb
|
102
69
|
- lib/bunny/authentication/credentials_encoder.rb
|
@@ -134,89 +101,11 @@ files:
|
|
134
101
|
- lib/bunny/transport.rb
|
135
102
|
- lib/bunny/version.rb
|
136
103
|
- lib/bunny/versioned_delivery_tag.rb
|
137
|
-
- profiling/basic_publish/with_4K_messages.rb
|
138
|
-
- repl
|
139
|
-
- spec/config/enabled_plugins
|
140
|
-
- spec/config/rabbitmq.config
|
141
|
-
- spec/higher_level_api/integration/basic_ack_spec.rb
|
142
|
-
- spec/higher_level_api/integration/basic_cancel_spec.rb
|
143
|
-
- spec/higher_level_api/integration/basic_consume_spec.rb
|
144
|
-
- spec/higher_level_api/integration/basic_consume_with_objects_spec.rb
|
145
|
-
- spec/higher_level_api/integration/basic_get_spec.rb
|
146
|
-
- spec/higher_level_api/integration/basic_nack_spec.rb
|
147
|
-
- spec/higher_level_api/integration/basic_publish_spec.rb
|
148
|
-
- spec/higher_level_api/integration/basic_qos_spec.rb
|
149
|
-
- spec/higher_level_api/integration/basic_reject_spec.rb
|
150
|
-
- spec/higher_level_api/integration/basic_return_spec.rb
|
151
|
-
- spec/higher_level_api/integration/channel_close_spec.rb
|
152
|
-
- spec/higher_level_api/integration/channel_open_spec.rb
|
153
|
-
- spec/higher_level_api/integration/connection_recovery_spec.rb
|
154
|
-
- spec/higher_level_api/integration/connection_spec.rb
|
155
|
-
- spec/higher_level_api/integration/connection_stop_spec.rb
|
156
|
-
- spec/higher_level_api/integration/consumer_cancellation_notification_spec.rb
|
157
|
-
- spec/higher_level_api/integration/dead_lettering_spec.rb
|
158
|
-
- spec/higher_level_api/integration/exchange_bind_spec.rb
|
159
|
-
- spec/higher_level_api/integration/exchange_declare_spec.rb
|
160
|
-
- spec/higher_level_api/integration/exchange_delete_spec.rb
|
161
|
-
- spec/higher_level_api/integration/exchange_unbind_spec.rb
|
162
|
-
- spec/higher_level_api/integration/exclusive_queue_spec.rb
|
163
|
-
- spec/higher_level_api/integration/heartbeat_spec.rb
|
164
|
-
- spec/higher_level_api/integration/merry_go_round_spec.rb
|
165
|
-
- spec/higher_level_api/integration/message_properties_access_spec.rb
|
166
|
-
- spec/higher_level_api/integration/predeclared_exchanges_spec.rb
|
167
|
-
- spec/higher_level_api/integration/publisher_confirms_spec.rb
|
168
|
-
- spec/higher_level_api/integration/publishing_edge_cases_spec.rb
|
169
|
-
- spec/higher_level_api/integration/queue_bind_spec.rb
|
170
|
-
- spec/higher_level_api/integration/queue_declare_spec.rb
|
171
|
-
- spec/higher_level_api/integration/queue_delete_spec.rb
|
172
|
-
- spec/higher_level_api/integration/queue_purge_spec.rb
|
173
|
-
- spec/higher_level_api/integration/queue_unbind_spec.rb
|
174
|
-
- spec/higher_level_api/integration/read_only_consumer_spec.rb
|
175
|
-
- spec/higher_level_api/integration/sender_selected_distribution_spec.rb
|
176
|
-
- spec/higher_level_api/integration/tls_connection_spec.rb
|
177
|
-
- spec/higher_level_api/integration/tx_commit_spec.rb
|
178
|
-
- spec/higher_level_api/integration/tx_rollback_spec.rb
|
179
|
-
- spec/higher_level_api/integration/with_channel_spec.rb
|
180
|
-
- spec/issues/issue100_spec.rb
|
181
|
-
- spec/issues/issue141_spec.rb
|
182
|
-
- spec/issues/issue202_spec.rb
|
183
|
-
- spec/issues/issue224_spec.rb
|
184
|
-
- spec/issues/issue465_spec.rb
|
185
|
-
- spec/issues/issue78_spec.rb
|
186
|
-
- spec/issues/issue83_spec.rb
|
187
|
-
- spec/issues/issue97_attachment.json
|
188
|
-
- spec/issues/issue97_spec.rb
|
189
|
-
- spec/lower_level_api/integration/basic_cancel_spec.rb
|
190
|
-
- spec/lower_level_api/integration/basic_consume_spec.rb
|
191
|
-
- spec/spec_helper.rb
|
192
|
-
- spec/stress/channel_close_stress_spec.rb
|
193
|
-
- spec/stress/channel_open_stress_spec.rb
|
194
|
-
- spec/stress/channel_open_stress_with_single_threaded_connection_spec.rb
|
195
|
-
- spec/stress/concurrent_consumers_stress_spec.rb
|
196
|
-
- spec/stress/concurrent_publishers_stress_spec.rb
|
197
|
-
- spec/stress/connection_open_close_spec.rb
|
198
|
-
- spec/stress/long_running_consumer_spec.rb
|
199
|
-
- spec/tls/ca_certificate.pem
|
200
|
-
- spec/tls/ca_key.pem
|
201
|
-
- spec/tls/client_certificate.pem
|
202
|
-
- spec/tls/client_key.pem
|
203
|
-
- spec/tls/generate-server-cert.sh
|
204
|
-
- spec/tls/server-openssl.cnf
|
205
|
-
- spec/tls/server.csr
|
206
|
-
- spec/tls/server_certificate.pem
|
207
|
-
- spec/tls/server_key.pem
|
208
|
-
- spec/unit/bunny_spec.rb
|
209
|
-
- spec/unit/concurrent/atomic_fixnum_spec.rb
|
210
|
-
- spec/unit/concurrent/condition_spec.rb
|
211
|
-
- spec/unit/concurrent/linked_continuation_queue_spec.rb
|
212
|
-
- spec/unit/concurrent/synchronized_sorted_set_spec.rb
|
213
|
-
- spec/unit/exchange_recovery_spec.rb
|
214
|
-
- spec/unit/version_delivery_tag_spec.rb
|
215
104
|
homepage: http://rubybunny.info
|
216
105
|
licenses:
|
217
106
|
- MIT
|
218
107
|
metadata: {}
|
219
|
-
post_install_message:
|
108
|
+
post_install_message:
|
220
109
|
rdoc_options: []
|
221
110
|
require_paths:
|
222
111
|
- lib
|
@@ -224,92 +113,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
224
113
|
requirements:
|
225
114
|
- - ">="
|
226
115
|
- !ruby/object:Gem::Version
|
227
|
-
version: '2.
|
116
|
+
version: '2.5'
|
228
117
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
229
118
|
requirements:
|
230
119
|
- - ">="
|
231
120
|
- !ruby/object:Gem::Version
|
232
121
|
version: '0'
|
233
122
|
requirements: []
|
234
|
-
|
235
|
-
|
236
|
-
signing_key:
|
123
|
+
rubygems_version: 3.5.0.dev
|
124
|
+
signing_key:
|
237
125
|
specification_version: 4
|
238
126
|
summary: Popular easy to use Ruby client for RabbitMQ
|
239
|
-
test_files:
|
240
|
-
- spec/config/enabled_plugins
|
241
|
-
- spec/config/rabbitmq.config
|
242
|
-
- spec/higher_level_api/integration/basic_ack_spec.rb
|
243
|
-
- spec/higher_level_api/integration/basic_cancel_spec.rb
|
244
|
-
- spec/higher_level_api/integration/basic_consume_spec.rb
|
245
|
-
- spec/higher_level_api/integration/basic_consume_with_objects_spec.rb
|
246
|
-
- spec/higher_level_api/integration/basic_get_spec.rb
|
247
|
-
- spec/higher_level_api/integration/basic_nack_spec.rb
|
248
|
-
- spec/higher_level_api/integration/basic_publish_spec.rb
|
249
|
-
- spec/higher_level_api/integration/basic_qos_spec.rb
|
250
|
-
- spec/higher_level_api/integration/basic_reject_spec.rb
|
251
|
-
- spec/higher_level_api/integration/basic_return_spec.rb
|
252
|
-
- spec/higher_level_api/integration/channel_close_spec.rb
|
253
|
-
- spec/higher_level_api/integration/channel_open_spec.rb
|
254
|
-
- spec/higher_level_api/integration/connection_recovery_spec.rb
|
255
|
-
- spec/higher_level_api/integration/connection_spec.rb
|
256
|
-
- spec/higher_level_api/integration/connection_stop_spec.rb
|
257
|
-
- spec/higher_level_api/integration/consumer_cancellation_notification_spec.rb
|
258
|
-
- spec/higher_level_api/integration/dead_lettering_spec.rb
|
259
|
-
- spec/higher_level_api/integration/exchange_bind_spec.rb
|
260
|
-
- spec/higher_level_api/integration/exchange_declare_spec.rb
|
261
|
-
- spec/higher_level_api/integration/exchange_delete_spec.rb
|
262
|
-
- spec/higher_level_api/integration/exchange_unbind_spec.rb
|
263
|
-
- spec/higher_level_api/integration/exclusive_queue_spec.rb
|
264
|
-
- spec/higher_level_api/integration/heartbeat_spec.rb
|
265
|
-
- spec/higher_level_api/integration/merry_go_round_spec.rb
|
266
|
-
- spec/higher_level_api/integration/message_properties_access_spec.rb
|
267
|
-
- spec/higher_level_api/integration/predeclared_exchanges_spec.rb
|
268
|
-
- spec/higher_level_api/integration/publisher_confirms_spec.rb
|
269
|
-
- spec/higher_level_api/integration/publishing_edge_cases_spec.rb
|
270
|
-
- spec/higher_level_api/integration/queue_bind_spec.rb
|
271
|
-
- spec/higher_level_api/integration/queue_declare_spec.rb
|
272
|
-
- spec/higher_level_api/integration/queue_delete_spec.rb
|
273
|
-
- spec/higher_level_api/integration/queue_purge_spec.rb
|
274
|
-
- spec/higher_level_api/integration/queue_unbind_spec.rb
|
275
|
-
- spec/higher_level_api/integration/read_only_consumer_spec.rb
|
276
|
-
- spec/higher_level_api/integration/sender_selected_distribution_spec.rb
|
277
|
-
- spec/higher_level_api/integration/tls_connection_spec.rb
|
278
|
-
- spec/higher_level_api/integration/tx_commit_spec.rb
|
279
|
-
- spec/higher_level_api/integration/tx_rollback_spec.rb
|
280
|
-
- spec/higher_level_api/integration/with_channel_spec.rb
|
281
|
-
- spec/issues/issue100_spec.rb
|
282
|
-
- spec/issues/issue141_spec.rb
|
283
|
-
- spec/issues/issue202_spec.rb
|
284
|
-
- spec/issues/issue224_spec.rb
|
285
|
-
- spec/issues/issue465_spec.rb
|
286
|
-
- spec/issues/issue78_spec.rb
|
287
|
-
- spec/issues/issue83_spec.rb
|
288
|
-
- spec/issues/issue97_attachment.json
|
289
|
-
- spec/issues/issue97_spec.rb
|
290
|
-
- spec/lower_level_api/integration/basic_cancel_spec.rb
|
291
|
-
- spec/lower_level_api/integration/basic_consume_spec.rb
|
292
|
-
- spec/spec_helper.rb
|
293
|
-
- spec/stress/channel_close_stress_spec.rb
|
294
|
-
- spec/stress/channel_open_stress_spec.rb
|
295
|
-
- spec/stress/channel_open_stress_with_single_threaded_connection_spec.rb
|
296
|
-
- spec/stress/concurrent_consumers_stress_spec.rb
|
297
|
-
- spec/stress/concurrent_publishers_stress_spec.rb
|
298
|
-
- spec/stress/connection_open_close_spec.rb
|
299
|
-
- spec/stress/long_running_consumer_spec.rb
|
300
|
-
- spec/tls/ca_certificate.pem
|
301
|
-
- spec/tls/ca_key.pem
|
302
|
-
- spec/tls/client_certificate.pem
|
303
|
-
- spec/tls/client_key.pem
|
304
|
-
- spec/tls/generate-server-cert.sh
|
305
|
-
- spec/tls/server-openssl.cnf
|
306
|
-
- spec/tls/server.csr
|
307
|
-
- spec/tls/server_certificate.pem
|
308
|
-
- spec/tls/server_key.pem
|
309
|
-
- spec/unit/bunny_spec.rb
|
310
|
-
- spec/unit/concurrent/atomic_fixnum_spec.rb
|
311
|
-
- spec/unit/concurrent/condition_spec.rb
|
312
|
-
- spec/unit/concurrent/linked_continuation_queue_spec.rb
|
313
|
-
- spec/unit/concurrent/synchronized_sorted_set_spec.rb
|
314
|
-
- spec/unit/exchange_recovery_spec.rb
|
315
|
-
- spec/unit/version_delivery_tag_spec.rb
|
127
|
+
test_files: []
|
data/.github/ISSUE_TEMPLATE.md
DELETED
@@ -1,18 +0,0 @@
|
|
1
|
-
## Does This Really Belong to GitHub issues?
|
2
|
-
|
3
|
-
If you find a bug you understand well, poor default, incorrect or unclear piece of documentation,
|
4
|
-
or missing feature, please [file an
|
5
|
-
issue](http://github.com/ruby-amqp/bunny/issues) on GitHub.
|
6
|
-
|
7
|
-
Please use [Bunny's mailing list](http://groups.google.com/group/ruby-amqp) for questions,
|
8
|
-
investigations, and discussions. GitHub issues should be used for specific, well understood, actionable
|
9
|
-
maintainers and contributors can work on.
|
10
|
-
|
11
|
-
When filing an issue, please specify
|
12
|
-
|
13
|
-
* Which Bunny and RabbitMQ versions are used
|
14
|
-
* Recent RabbitMQ log file contents
|
15
|
-
* Full exception stack traces
|
16
|
-
* Steps to reproduce or a failing test case
|
17
|
-
|
18
|
-
This would greatly help the maintainers help you.
|
data/.gitignore
DELETED
@@ -1,28 +0,0 @@
|
|
1
|
-
.DS_Store
|
2
|
-
.*.swp
|
3
|
-
*.class
|
4
|
-
*.rbc
|
5
|
-
*.gem
|
6
|
-
/doc/
|
7
|
-
.yardoc
|
8
|
-
.rvmrc
|
9
|
-
Gemfile.lock
|
10
|
-
.rbx/*
|
11
|
-
.tags
|
12
|
-
.tags_sorted_by_file
|
13
|
-
.Apple*
|
14
|
-
bin/*
|
15
|
-
.bundle/*
|
16
|
-
vendor/*
|
17
|
-
playground/*
|
18
|
-
*.org
|
19
|
-
repl-*
|
20
|
-
debug/*
|
21
|
-
*.dump
|
22
|
-
deploy.docs.sh
|
23
|
-
.ruby-version
|
24
|
-
.idea
|
25
|
-
*.srl
|
26
|
-
spec/tls/*.pem
|
27
|
-
spec/tls/*.pem~
|
28
|
-
spec/tls/*.p12
|
data/.rspec
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
-c -fp
|
data/.travis.yml
DELETED
@@ -1,20 +0,0 @@
|
|
1
|
-
language: ruby
|
2
|
-
bundler_args: --without development
|
3
|
-
cache: bundler
|
4
|
-
before_script: "./bin/ci/before_build"
|
5
|
-
script: "bundle exec rake integration_without_recovery"
|
6
|
-
rvm:
|
7
|
-
- ruby-head
|
8
|
-
- "2.4.1"
|
9
|
-
- "2.3.4"
|
10
|
-
- "2.2.7"
|
11
|
-
notifications:
|
12
|
-
email: michael@rabbitmq.com
|
13
|
-
services:
|
14
|
-
- rabbitmq
|
15
|
-
branches:
|
16
|
-
only:
|
17
|
-
- master
|
18
|
-
- 2.6.x-stable
|
19
|
-
env:
|
20
|
-
- CI=true
|
data/.yardopts
DELETED
data/CONTRIBUTING.md
DELETED
@@ -1,111 +0,0 @@
|
|
1
|
-
## Overview
|
2
|
-
|
3
|
-
This project **does not** use GitHub issues for questions, investigations, discussions, and so on.
|
4
|
-
Issues are appropriate for something specific enough for a maintainer or contributor to work on:
|
5
|
-
|
6
|
-
* There should be enough information to reproduce the behavior observed in a reasonable amount of time
|
7
|
-
* It should be reasonably clear why the behavior should be changed and why this cannot or should not be addressed
|
8
|
-
in application code, a separate library and so on
|
9
|
-
|
10
|
-
All issues that do not satisfy the above properties belong to the [Ruby RabbitMQ clients mailing list](http://groups.google.com/forum/#!forum/ruby-amqp). Pull request that do not satisfy them have a high chance
|
11
|
-
of being closed.
|
12
|
-
|
13
|
-
## Submitting a Pull Request
|
14
|
-
|
15
|
-
Please read the sections below to get an idea about how to run Bunny test suites first. Successfully
|
16
|
-
running all tests, at least with `CI` environment variable exported to `true`, is an important
|
17
|
-
first step for any contributor.
|
18
|
-
|
19
|
-
Once you have a passing test suite, create a branch and make your changes on it.
|
20
|
-
When you are done with your changes and all
|
21
|
-
tests pass, write a [good, detailed commit message](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html) submit a pull request on GitHub.
|
22
|
-
|
23
|
-
## Pre-requisites
|
24
|
-
|
25
|
-
The project uses Bundler for dependency management and requires RabbitMQ `3.5+` to be running
|
26
|
-
locally with the `rabbitmq-management` and `rabbitmq_consistent_hash_exchange` plugins enabled.
|
27
|
-
|
28
|
-
### Running the Specs
|
29
|
-
|
30
|
-
The specs require RabbitMQ to be running locally with a specific set of vhosts
|
31
|
-
and users. RabbitMQ can be provisioned and started any way that's convenient to you
|
32
|
-
as long as it has a suitable TLS keys configuration and management plugin enabled.
|
33
|
-
Make sure you have a recent version of RabbitMQ (> `3.5.3`).
|
34
|
-
|
35
|
-
You can also start a clean RabbitMQ server
|
36
|
-
node on your machine specifically for the bunny specs.
|
37
|
-
This can be done either by using a locally installed RabbitMQ server or by
|
38
|
-
running a RabbitMQ server in a Docker container.
|
39
|
-
|
40
|
-
#### Using a locally installed RabbitMQ server
|
41
|
-
|
42
|
-
Run the following command from the base directory of the gem:
|
43
|
-
|
44
|
-
```
|
45
|
-
RABBITMQ_NODENAME=bunny RABBITMQ_CONFIG_FILE=./spec/config/rabbitmq RABBITMQ_ENABLED_PLUGINS_FILE=./spec/config/enabled_plugins rabbitmq-server
|
46
|
-
```
|
47
|
-
|
48
|
-
The specs use the RabbitMQ management plugin and require a TLS port to
|
49
|
-
be available. The config files in the spec/config directory enable
|
50
|
-
these. TLS (x509 PEM) certificates include a hostname-specific fields,
|
51
|
-
the tests allow for expecting hostname overriding using the `BUNNY_RABBITMQ_HOSTNAME`
|
52
|
-
environment variables (default value is `127.0.0.1`).
|
53
|
-
|
54
|
-
Server, CA and client certificates can be found under `spec/tls`.
|
55
|
-
The location can be overridden via the `BUNNY_CERTIFICATE_DIR` environment variable.
|
56
|
-
It is supposed to target [tls-gen](https://github.com/michaelklishin/tls-gen)'s basic profile
|
57
|
-
output (result) directory on the host where specs are to be executed.
|
58
|
-
|
59
|
-
Next up you'll need to prepare your node for the specs (just once):
|
60
|
-
|
61
|
-
```
|
62
|
-
RABBITMQ_NODENAME=bunny ./bin/ci/before_build
|
63
|
-
```
|
64
|
-
|
65
|
-
The script uses `rabbitmqctl` and `rabbitmq-plugins`
|
66
|
-
to set up RabbitMQ in a way that Bunny test suites expect. Two environment variables,
|
67
|
-
`RABBITMQCTL` and `RABBITMQ_PLUGINS`, are available to control what `rabbitmqctl` and
|
68
|
-
`rabbitmq-plugins` commands will be used. By default they are taken from `PATH`
|
69
|
-
and prefixed with `sudo`.
|
70
|
-
|
71
|
-
And then run the core integration suite:
|
72
|
-
|
73
|
-
```
|
74
|
-
RABBITMQ_NODENAME=bunny CI=true rspec
|
75
|
-
```
|
76
|
-
|
77
|
-
#### Running a RabbitMQ server in a Docker container
|
78
|
-
|
79
|
-
First off you have to [install Docker Compose](https://docker.github.io/compose/install/) (and by proxy Docker).
|
80
|
-
Version >= 1.6.0+ is required for compose version 2 syntax.
|
81
|
-
|
82
|
-
After those have been installed (and the `docker-compose` command is available on your command line path), run
|
83
|
-
|
84
|
-
```
|
85
|
-
docker-compose up
|
86
|
-
```
|
87
|
-
|
88
|
-
The first time you do this, it will take some time, since it has to download everything it needs
|
89
|
-
to build the Docker image.
|
90
|
-
|
91
|
-
The RabbitMQ server will run in the foreground in the terminal where you started it. You can stop
|
92
|
-
it by pressing CTRL+C. If you want to run it in the background, run `docker-compose up -d`.
|
93
|
-
|
94
|
-
### Running Test Suites
|
95
|
-
|
96
|
-
Prior to running the tests, configure the RabbitMQ permissions by running `./bin/ci/before_build`
|
97
|
-
if you have RabbitMQ locally installed, if you are running RabbitMQ via Docker as above this step
|
98
|
-
is not required as the setup is baked in.
|
99
|
-
|
100
|
-
Make sure you have those two installed and then run integration tests:
|
101
|
-
|
102
|
-
bundle install
|
103
|
-
rake integration
|
104
|
-
|
105
|
-
It is possible to run all tests:
|
106
|
-
|
107
|
-
bundle exec rspec -c
|
108
|
-
|
109
|
-
It is possible to run only integration and regression tests but exclude unit and stress tests:
|
110
|
-
|
111
|
-
CI=true bundle exec rspec -c spec/higher_level_api/ spec/lower_level_api spec/issues && bundle exec rspec -c spec/higher_level_api/integration/connection_recovery_spec.rb
|