bunny 2.7.4 → 2.22.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 +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
|