zk 1.4.2 → 1.5.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.
Files changed (49) hide show
  1. data/.dotfiles/ctags_paths +1 -0
  2. data/.dotfiles/rspec-logging +2 -2
  3. data/.gitignore +1 -0
  4. data/Gemfile +9 -3
  5. data/Guardfile +36 -0
  6. data/README.markdown +21 -18
  7. data/RELEASES.markdown +10 -0
  8. data/Rakefile +1 -1
  9. data/lib/zk.rb +28 -21
  10. data/lib/zk/client/threaded.rb +107 -17
  11. data/lib/zk/client/unixisms.rb +1 -41
  12. data/lib/zk/core_ext.rb +28 -0
  13. data/lib/zk/election.rb +14 -3
  14. data/lib/zk/event_handler.rb +36 -37
  15. data/lib/zk/event_handler_subscription/actor.rb +37 -2
  16. data/lib/zk/event_handler_subscription/base.rb +9 -0
  17. data/lib/zk/exceptions.rb +5 -0
  18. data/lib/zk/fork_hook.rb +112 -0
  19. data/lib/zk/install_fork_hooks.rb +37 -0
  20. data/lib/zk/locker/exclusive_locker.rb +14 -10
  21. data/lib/zk/locker/locker_base.rb +43 -26
  22. data/lib/zk/locker/shared_locker.rb +9 -5
  23. data/lib/zk/logging.rb +29 -7
  24. data/lib/zk/node_deletion_watcher.rb +167 -0
  25. data/lib/zk/pool.rb +14 -4
  26. data/lib/zk/subscription.rb +15 -34
  27. data/lib/zk/threaded_callback.rb +113 -29
  28. data/lib/zk/threadpool.rb +136 -40
  29. data/lib/zk/version.rb +1 -1
  30. data/spec/logging_progress_bar_formatter.rb +12 -0
  31. data/spec/shared/client_contexts.rb +13 -1
  32. data/spec/shared/client_examples.rb +3 -1
  33. data/spec/spec_helper.rb +28 -3
  34. data/spec/support/client_forker.rb +49 -8
  35. data/spec/support/latch.rb +1 -19
  36. data/spec/support/logging.rb +26 -10
  37. data/spec/support/wait_watchers.rb +2 -2
  38. data/spec/zk/00_forked_client_integration_spec.rb +1 -1
  39. data/spec/zk/client_spec.rb +11 -2
  40. data/spec/zk/election_spec.rb +21 -7
  41. data/spec/zk/locker_spec.rb +42 -22
  42. data/spec/zk/node_deletion_watcher_spec.rb +69 -0
  43. data/spec/zk/pool_spec.rb +32 -18
  44. data/spec/zk/threaded_callback_spec.rb +78 -0
  45. data/spec/zk/threadpool_spec.rb +52 -0
  46. data/spec/zk/watch_spec.rb +4 -0
  47. data/zk.gemspec +2 -1
  48. metadata +36 -10
  49. data/spec/support/logging_progress_bar_formatter.rb +0 -14
@@ -365,6 +365,10 @@ describe ZK do
365
365
  end
366
366
  end
367
367
 
368
+ after do
369
+ @zk.close! if @zk and not @zk.closed?
370
+ end
371
+
368
372
  it %[should fire the registered callback] do
369
373
  wait_while { @event.nil? }
370
374
  @event.should_not be_nil
data/zk.gemspec CHANGED
@@ -12,8 +12,9 @@ Gem::Specification.new do |s|
12
12
  s.summary = %q{A high-level wrapper around the zookeeper driver}
13
13
  s.description = s.summary + "\n"
14
14
 
15
- s.add_runtime_dependency 'zookeeper', '~> 1.1.1'
15
+ s.add_runtime_dependency 'zookeeper', '~> 1.2.2'
16
16
  s.add_runtime_dependency 'backports', '~> 2.5.1'
17
+ s.add_runtime_dependency 'logging', '~> 1.7.2'
17
18
 
18
19
  s.files = `git ls-files`.split("\n")
19
20
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
metadata CHANGED
@@ -5,9 +5,9 @@ version: !ruby/object:Gem::Version
5
5
  prerelease:
6
6
  segments:
7
7
  - 1
8
- - 4
9
- - 2
10
- version: 1.4.2
8
+ - 5
9
+ - 0
10
+ version: 1.5.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Jonathan D. Simms
@@ -16,7 +16,7 @@ autorequire:
16
16
  bindir: bin
17
17
  cert_chain: []
18
18
 
19
- date: 2012-05-17 00:00:00 Z
19
+ date: 2012-05-22 00:00:00 Z
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
22
  name: zookeeper
@@ -26,12 +26,12 @@ dependencies:
26
26
  requirements:
27
27
  - - ~>
28
28
  - !ruby/object:Gem::Version
29
- hash: 17
29
+ hash: 27
30
30
  segments:
31
31
  - 1
32
- - 1
33
- - 1
34
- version: 1.1.1
32
+ - 2
33
+ - 2
34
+ version: 1.2.2
35
35
  type: :runtime
36
36
  version_requirements: *id001
37
37
  - !ruby/object:Gem::Dependency
@@ -50,6 +50,22 @@ dependencies:
50
50
  version: 2.5.1
51
51
  type: :runtime
52
52
  version_requirements: *id002
53
+ - !ruby/object:Gem::Dependency
54
+ name: logging
55
+ prerelease: false
56
+ requirement: &id003 !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ hash: 15
62
+ segments:
63
+ - 1
64
+ - 7
65
+ - 2
66
+ version: 1.7.2
67
+ type: :runtime
68
+ version_requirements: *id003
53
69
  description: |
54
70
  A high-level wrapper around the zookeeper driver
55
71
 
@@ -63,6 +79,7 @@ extensions: []
63
79
  extra_rdoc_files: []
64
80
 
65
81
  files:
82
+ - .dotfiles/ctags_paths
66
83
  - .dotfiles/rspec-logging
67
84
  - .dotfiles/rvmrc
68
85
  - .gitignore
@@ -70,6 +87,7 @@ files:
70
87
  - .travis.yml
71
88
  - .yardopts
72
89
  - Gemfile
90
+ - Guardfile
73
91
  - LICENSE
74
92
  - README.markdown
75
93
  - RELEASES.markdown
@@ -94,6 +112,8 @@ files:
94
112
  - lib/zk/exceptions.rb
95
113
  - lib/zk/extensions.rb
96
114
  - lib/zk/find.rb
115
+ - lib/zk/fork_hook.rb
116
+ - lib/zk/install_fork_hooks.rb
97
117
  - lib/zk/locker.rb
98
118
  - lib/zk/locker/exclusive_locker.rb
99
119
  - lib/zk/locker/locker_base.rb
@@ -101,6 +121,7 @@ files:
101
121
  - lib/zk/logging.rb
102
122
  - lib/zk/message_queue.rb
103
123
  - lib/zk/mongoid.rb
124
+ - lib/zk/node_deletion_watcher.rb
104
125
  - lib/zk/pool.rb
105
126
  - lib/zk/stat.rb
106
127
  - lib/zk/subscription.rb
@@ -114,6 +135,7 @@ files:
114
135
  - spec/informal/lock_with_dead_session.rb
115
136
  - spec/informal/what-the-fork.rb
116
137
  - spec/log4j.properties
138
+ - spec/logging_progress_bar_formatter.rb
117
139
  - spec/message_queue_spec.rb
118
140
  - spec/shared/client_contexts.rb
119
141
  - spec/shared/client_examples.rb
@@ -125,7 +147,6 @@ files:
125
147
  - spec/support/exist_matcher.rb
126
148
  - spec/support/latch.rb
127
149
  - spec/support/logging.rb
128
- - spec/support/logging_progress_bar_formatter.rb
129
150
  - spec/support/pendings.rb
130
151
  - spec/support/queuey_thread.rb
131
152
  - spec/support/special_happy_funtime_error.rb
@@ -139,7 +160,9 @@ files:
139
160
  - spec/zk/locker_spec.rb
140
161
  - spec/zk/module_spec.rb
141
162
  - spec/zk/mongoid_spec.rb
163
+ - spec/zk/node_deletion_watcher_spec.rb
142
164
  - spec/zk/pool_spec.rb
165
+ - spec/zk/threaded_callback_spec.rb
143
166
  - spec/zk/threadpool_spec.rb
144
167
  - spec/zk/watch_spec.rb
145
168
  - spec/zk/zookeeper_spec.rb
@@ -183,6 +206,7 @@ test_files:
183
206
  - spec/informal/lock_with_dead_session.rb
184
207
  - spec/informal/what-the-fork.rb
185
208
  - spec/log4j.properties
209
+ - spec/logging_progress_bar_formatter.rb
186
210
  - spec/message_queue_spec.rb
187
211
  - spec/shared/client_contexts.rb
188
212
  - spec/shared/client_examples.rb
@@ -194,7 +218,6 @@ test_files:
194
218
  - spec/support/exist_matcher.rb
195
219
  - spec/support/latch.rb
196
220
  - spec/support/logging.rb
197
- - spec/support/logging_progress_bar_formatter.rb
198
221
  - spec/support/pendings.rb
199
222
  - spec/support/queuey_thread.rb
200
223
  - spec/support/special_happy_funtime_error.rb
@@ -208,7 +231,10 @@ test_files:
208
231
  - spec/zk/locker_spec.rb
209
232
  - spec/zk/module_spec.rb
210
233
  - spec/zk/mongoid_spec.rb
234
+ - spec/zk/node_deletion_watcher_spec.rb
211
235
  - spec/zk/pool_spec.rb
236
+ - spec/zk/threaded_callback_spec.rb
212
237
  - spec/zk/threadpool_spec.rb
213
238
  - spec/zk/watch_spec.rb
214
239
  - spec/zk/zookeeper_spec.rb
240
+ has_rdoc:
@@ -1,14 +0,0 @@
1
- require 'rspec/core/formatters/progress_formatter'
2
-
3
- module Motionbox
4
- # essentially a monkey-patch to the ProgressBarFormatter, outputs
5
- # '== #{example_proxy.description} ==' in the logs before each test. makes it
6
- # easier to match up tests with the SQL they produce
7
- class LoggingProgressBarFormatter < RSpec::Core::Formatters::ProgressFormatter
8
- def example_started(example)
9
- ZK.logger.info(yellow("\n=====<([ #{example.full_description} ])>=====\n"))
10
- super
11
- end
12
- end
13
- end
14
-