celluloid 0.17.2 → 0.18.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (174) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGES.md +340 -75
  3. data/CONDUCT.md +13 -0
  4. data/CONTRIBUTING.md +39 -0
  5. data/LICENSE.txt +1 -1
  6. data/README.md +54 -150
  7. data/REFACTOR.md +1 -0
  8. data/architecture.md +120 -0
  9. data/examples/basic_usage.rb +1 -1
  10. data/examples/configurations.rb +78 -0
  11. data/examples/futures.rb +1 -1
  12. data/examples/ring.rb +5 -4
  13. data/examples/simple_pmap.rb +1 -1
  14. data/examples/stack.rb +2 -2
  15. data/examples/supervisors_and_registry.rb +82 -0
  16. data/examples/timers.rb +2 -2
  17. data/lib/celluloid.rb +78 -65
  18. data/lib/celluloid/actor.rb +27 -17
  19. data/lib/celluloid/actor/system.rb +13 -29
  20. data/lib/celluloid/autostart.rb +6 -1
  21. data/lib/celluloid/call/async.rb +2 -0
  22. data/lib/celluloid/call/sync.rb +10 -3
  23. data/lib/celluloid/calls.rb +13 -13
  24. data/lib/celluloid/cell.rb +5 -9
  25. data/lib/celluloid/condition.rb +3 -3
  26. data/lib/celluloid/core_ext.rb +0 -2
  27. data/lib/celluloid/debug.rb +3 -0
  28. data/lib/celluloid/exceptions.rb +2 -2
  29. data/lib/celluloid/future.rb +8 -10
  30. data/lib/celluloid/group.rb +16 -6
  31. data/lib/celluloid/group/pool.rb +1 -3
  32. data/lib/celluloid/group/spawner.rb +2 -6
  33. data/lib/celluloid/internals/call_chain.rb +15 -0
  34. data/lib/celluloid/internals/cpu_counter.rb +62 -0
  35. data/lib/celluloid/internals/handlers.rb +42 -0
  36. data/lib/celluloid/internals/links.rb +38 -0
  37. data/lib/celluloid/internals/logger.rb +104 -0
  38. data/lib/celluloid/internals/method.rb +34 -0
  39. data/lib/celluloid/internals/properties.rb +32 -0
  40. data/lib/celluloid/internals/receivers.rb +64 -0
  41. data/lib/celluloid/internals/registry.rb +102 -0
  42. data/lib/celluloid/internals/responses.rb +46 -0
  43. data/lib/celluloid/internals/signals.rb +24 -0
  44. data/lib/celluloid/internals/stack.rb +74 -0
  45. data/lib/celluloid/internals/stack/dump.rb +12 -0
  46. data/lib/celluloid/internals/stack/states.rb +72 -0
  47. data/lib/celluloid/internals/stack/summary.rb +12 -0
  48. data/lib/celluloid/internals/task_set.rb +51 -0
  49. data/lib/celluloid/internals/thread_handle.rb +52 -0
  50. data/lib/celluloid/internals/uuid.rb +40 -0
  51. data/lib/celluloid/logging/incident.rb +21 -0
  52. data/lib/celluloid/logging/incident_logger.rb +147 -0
  53. data/lib/celluloid/logging/incident_reporter.rb +49 -0
  54. data/lib/celluloid/logging/log_event.rb +20 -0
  55. data/lib/celluloid/logging/ring_buffer.rb +64 -0
  56. data/lib/celluloid/mailbox.rb +22 -9
  57. data/lib/celluloid/mailbox/evented.rb +13 -7
  58. data/lib/celluloid/notifications.rb +95 -0
  59. data/lib/celluloid/pool.rb +6 -0
  60. data/lib/celluloid/probe.rb +81 -0
  61. data/lib/celluloid/proxy/abstract.rb +38 -7
  62. data/lib/celluloid/proxy/actor.rb +0 -5
  63. data/lib/celluloid/proxy/async.rb +2 -18
  64. data/lib/celluloid/proxy/block.rb +2 -1
  65. data/lib/celluloid/proxy/cell.rb +1 -7
  66. data/lib/celluloid/proxy/future.rb +3 -21
  67. data/lib/celluloid/proxy/sync.rb +2 -20
  68. data/lib/celluloid/rspec.rb +22 -34
  69. data/lib/celluloid/supervision.rb +17 -0
  70. data/lib/celluloid/supervision/configuration.rb +169 -0
  71. data/lib/celluloid/supervision/configuration/injections.rb +8 -0
  72. data/lib/celluloid/supervision/configuration/instance.rb +113 -0
  73. data/lib/celluloid/supervision/constants.rb +123 -0
  74. data/lib/celluloid/supervision/container.rb +144 -0
  75. data/lib/celluloid/supervision/container/behavior.rb +89 -0
  76. data/lib/celluloid/supervision/container/behavior/pool.rb +71 -0
  77. data/lib/celluloid/supervision/container/behavior/tree.rb +23 -0
  78. data/lib/celluloid/supervision/container/injections.rb +8 -0
  79. data/lib/celluloid/supervision/container/instance.rb +116 -0
  80. data/lib/celluloid/supervision/container/pool.rb +210 -0
  81. data/lib/celluloid/supervision/service.rb +27 -0
  82. data/lib/celluloid/supervision/supervise.rb +34 -0
  83. data/lib/celluloid/supervision/validation.rb +40 -0
  84. data/lib/celluloid/supervision/version.rb +5 -0
  85. data/lib/celluloid/system_events.rb +10 -3
  86. data/lib/celluloid/task.rb +25 -12
  87. data/lib/celluloid/task/fibered.rb +6 -2
  88. data/lib/celluloid/task/threaded.rb +3 -3
  89. data/lib/celluloid/test.rb +5 -2
  90. data/lib/celluloid/thread.rb +0 -2
  91. data/lib/celluloid/version.rb +1 -1
  92. data/spec/celluloid/block_spec.rb +29 -32
  93. data/spec/celluloid/calls_spec.rb +5 -15
  94. data/spec/celluloid/future_spec.rb +7 -1
  95. data/spec/celluloid/internals/cpu_counter_spec.rb +129 -0
  96. data/spec/celluloid/internals/links_spec.rb +43 -0
  97. data/spec/celluloid/internals/properties_spec.rb +40 -0
  98. data/spec/celluloid/internals/registry_spec.rb +62 -0
  99. data/spec/celluloid/internals/stack/dump_spec.rb +4 -0
  100. data/spec/celluloid/internals/stack/summary_spec.rb +4 -0
  101. data/spec/celluloid/internals/thread_handle_spec.rb +60 -0
  102. data/spec/celluloid/internals/uuid_spec.rb +9 -0
  103. data/spec/celluloid/logging/ring_buffer_spec.rb +36 -0
  104. data/spec/celluloid/mailbox/evented_spec.rb +21 -19
  105. data/spec/celluloid/misc/leak_spec.rb +3 -4
  106. data/spec/celluloid/notifications_spec.rb +140 -0
  107. data/spec/celluloid/probe_spec.rb +102 -0
  108. data/spec/celluloid/proxy_spec.rb +33 -0
  109. data/spec/celluloid/supervision/behavior_spec.rb +74 -0
  110. data/spec/celluloid/supervision/configuration_spec.rb +181 -0
  111. data/spec/celluloid/supervision/container_spec.rb +72 -0
  112. data/spec/celluloid/supervision/instance_spec.rb +13 -0
  113. data/spec/celluloid/supervision/root_spec.rb +28 -0
  114. data/spec/celluloid/supervision/supervisor_spec.rb +93 -0
  115. data/spec/celluloid/task/fibered_spec.rb +1 -3
  116. data/spec/celluloid/task/threaded_spec.rb +1 -3
  117. data/spec/shared/actor_examples.rb +65 -29
  118. data/spec/shared/group_examples.rb +2 -2
  119. data/spec/shared/mailbox_examples.rb +1 -1
  120. data/spec/shared/stack_examples.rb +87 -0
  121. data/spec/shared/task_examples.rb +2 -3
  122. data/spec/spec_helper.rb +2 -4
  123. data/spec/support/configure_rspec.rb +3 -4
  124. data/spec/support/coverage.rb +2 -4
  125. data/spec/support/crash_checking.rb +2 -2
  126. data/spec/support/examples/actor_class.rb +3 -8
  127. data/spec/support/examples/call_class.rb +2 -2
  128. data/spec/support/examples/container_class.rb +35 -0
  129. data/spec/support/examples/evented_mailbox_class.rb +1 -2
  130. data/spec/support/examples/stack_classes.rb +58 -0
  131. data/spec/support/examples/stack_methods.rb +23 -0
  132. data/spec/support/examples/subordinate_class.rb +19 -0
  133. data/spec/support/logging.rb +3 -34
  134. data/spec/support/loose_threads.rb +3 -24
  135. data/spec/support/reset_class_variables.rb +5 -1
  136. data/spec/support/stubbing.rb +1 -1
  137. metadata +93 -291
  138. data/culture/CONDUCT.md +0 -28
  139. data/culture/Gemfile +0 -9
  140. data/culture/LICENSE.txt +0 -22
  141. data/culture/README.md +0 -22
  142. data/culture/Rakefile +0 -5
  143. data/culture/SYNC.md +0 -70
  144. data/culture/celluloid-culture.gemspec +0 -18
  145. data/culture/gems/README.md +0 -39
  146. data/culture/gems/dependencies.yml +0 -85
  147. data/culture/gems/loader.rb +0 -101
  148. data/culture/rubocop/README.md +0 -38
  149. data/culture/rubocop/lint.yml +0 -8
  150. data/culture/rubocop/metrics.yml +0 -15
  151. data/culture/rubocop/perf.yml +0 -0
  152. data/culture/rubocop/rubocop.yml +0 -5
  153. data/culture/rubocop/style.yml +0 -57
  154. data/culture/spec/gems_spec.rb +0 -2
  155. data/culture/spec/spec_helper.rb +0 -0
  156. data/culture/spec/sync_spec.rb +0 -2
  157. data/culture/sync.rb +0 -56
  158. data/culture/tasks/rspec.rake +0 -5
  159. data/culture/tasks/rubocop.rake +0 -2
  160. data/lib/celluloid/actor/manager.rb +0 -7
  161. data/lib/celluloid/backported.rb +0 -2
  162. data/lib/celluloid/current.rb +0 -2
  163. data/lib/celluloid/deprecate.rb +0 -21
  164. data/lib/celluloid/fiber.rb +0 -32
  165. data/lib/celluloid/managed.rb +0 -3
  166. data/lib/celluloid/notices.rb +0 -15
  167. data/spec/celluloid/actor/manager_spec.rb +0 -0
  168. data/spec/deprecate/actor_system_spec.rb +0 -72
  169. data/spec/deprecate/block_spec.rb +0 -52
  170. data/spec/deprecate/calls_spec.rb +0 -39
  171. data/spec/deprecate/evented_mailbox_spec.rb +0 -34
  172. data/spec/deprecate/future_spec.rb +0 -32
  173. data/spec/deprecate/internal_pool_spec.rb +0 -4
  174. data/spec/support/env.rb +0 -21
@@ -5,10 +5,6 @@ module Specs
5
5
  next unless thread
6
6
  next if thread == Thread.current
7
7
 
8
- # TODO: Remove Specs::ALLOW_SLOW_MAILBOXES hax.
9
- # Allows slow shutdown of mailboxes.
10
- # Find more graceful way to do shutdown.
11
-
12
8
  if RUBY_PLATFORM == "java"
13
9
  # Avoid disrupting jRuby's "fiber" threads.
14
10
  name = thread.to_java.getNativeThread.get_name
@@ -17,29 +13,12 @@ module Specs
17
13
  backtrace = thread.backtrace # avoid race maybe
18
14
  next unless backtrace
19
15
  next if backtrace.empty? # possibly a timer thread
20
- end
21
-
22
- if RUBY_ENGINE == "rbx"
23
- # Avoid disrupting Rubinious thread
24
- next if thread.backtrace.first =~ %r{rubysl/timeout/timeout\.rb}
25
-
26
- if Specs::ALLOW_SLOW_MAILBOXES
27
- if thread.backtrace.first =~ /wait/
28
- next if thread.backtrace[1] =~ /mailbox\.rb/ && thread.backtrace[1] =~ /check/
29
- end
30
- end
31
- end
32
-
33
- if RUBY_ENGINE == "ruby"
16
+ else
34
17
  # Sometimes stays
35
18
  next if thread.backtrace.nil?
36
19
  next unless thread.backtrace.is_a?(Array)
37
20
  next if thread.backtrace.empty?
38
21
  next if thread.backtrace.first =~ /timeout\.rb/
39
-
40
- if Specs::ALLOW_SLOW_MAILBOXES
41
- next if thread.backtrace[1] =~ /mailbox\.rb/ && thread.backtrace[1] =~ /sleep/
42
- end
43
22
  end
44
23
 
45
24
  thread
@@ -47,7 +26,7 @@ module Specs
47
26
  end
48
27
 
49
28
  def thread_name(thread)
50
- (RUBY_PLATFORM == "java") ? thread.to_java.getNativeThread.get_name : ""
29
+ RUBY_PLATFORM == "java" ? thread.to_java.getNativeThread.get_name : ""
51
30
  end
52
31
 
53
32
  def assert_no_loose_threads!(location)
@@ -69,7 +48,7 @@ module Specs
69
48
  sleep
70
49
  end
71
50
 
72
- fail Celluloid::ThreadLeak, "Aborted due to runaway threads (#{location})\n"\
51
+ raise Celluloid::ThreadLeak, "Aborted due to runaway threads (#{location})\n"\
73
52
  "List: (#{loose.map(&:inspect)})\n:#{backtraces.join("\n")}"
74
53
  end
75
54
  end
@@ -2,7 +2,7 @@ module Specs
2
2
  class << self
3
3
  def reset_class_variables(description)
4
4
  # build uuid from example ending (most unique)
5
- uuid_prefix = description[-([description.size, 20].min)..-1]
5
+ uuid_prefix = description[-[description.size, 20].min..-1]
6
6
  reset_uuid(uuid_prefix)
7
7
 
8
8
  reset_probe(Queue.new)
@@ -11,7 +11,11 @@ module Specs
11
11
  end
12
12
 
13
13
  def reset_probe(value)
14
+ # !!! DO NOT INTRODUCE ADDITIONAL GLOBAL VARIABLES !!!
15
+ # rubocop:disable Style/GlobalVars
14
16
  $CELLULOID_MONITORING = !value.nil?
17
+ # rubocop:enable Style/GlobalVars
18
+
15
19
  replace_const(Celluloid::Probe, :EVENTS_BUFFER, value)
16
20
  end
17
21
 
@@ -3,7 +3,7 @@ module Specs
3
3
  meta = (class << mod; self; end)
4
4
  original_meth = "original_#{meth}".to_sym
5
5
 
6
- fail "ALREADY TRACED: #{mod}.#{meth}" if mod.respond_to?(original_meth)
6
+ raise "ALREADY TRACED: #{mod}.#{meth}" if mod.respond_to?(original_meth)
7
7
 
8
8
  meta.send(:alias_method, original_meth, meth)
9
9
  meta.send(:define_method, meth) do |*args, &block|
metadata CHANGED
@@ -1,314 +1,58 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: celluloid
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.17.2
4
+ version: 0.18.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tony Arcieri
8
8
  - Donovan Keme
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-09-30 00:00:00.000000000 Z
12
+ date: 2020-12-06 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
- name: bundler
16
- version_requirements: !ruby/object:Gem::Requirement
17
- requirements:
18
- - - ">="
19
- - !ruby/object:Gem::Version
20
- version: '0'
21
- type: :development
22
- prerelease: false
23
- requirement: !ruby/object:Gem::Requirement
24
- requirements:
25
- - - ">="
26
- - !ruby/object:Gem::Version
27
- version: '0'
28
- - !ruby/object:Gem::Dependency
29
- name: nenv
30
- version_requirements: !ruby/object:Gem::Requirement
31
- requirements:
32
- - - ">="
33
- - !ruby/object:Gem::Version
34
- version: '0'
35
- type: :development
36
- prerelease: false
37
- requirement: !ruby/object:Gem::Requirement
38
- requirements:
39
- - - ">="
40
- - !ruby/object:Gem::Version
41
- version: '0'
42
- - !ruby/object:Gem::Dependency
43
- name: dotenv
44
- version_requirements: !ruby/object:Gem::Requirement
45
- requirements:
46
- - - ">="
47
- - !ruby/object:Gem::Version
48
- version: '0'
49
- type: :development
50
- prerelease: false
51
- requirement: !ruby/object:Gem::Requirement
52
- requirements:
53
- - - ">="
54
- - !ruby/object:Gem::Version
55
- version: '0'
56
- - !ruby/object:Gem::Dependency
57
- name: benchmark_suite
58
- version_requirements: !ruby/object:Gem::Requirement
59
- requirements:
60
- - - ">="
61
- - !ruby/object:Gem::Version
62
- version: '0'
63
- type: :development
64
- prerelease: false
65
- requirement: !ruby/object:Gem::Requirement
66
- requirements:
67
- - - ">="
68
- - !ruby/object:Gem::Version
69
- version: '0'
70
- - !ruby/object:Gem::Dependency
71
- name: rubocop
72
- version_requirements: !ruby/object:Gem::Requirement
73
- requirements:
74
- - - ">="
75
- - !ruby/object:Gem::Version
76
- version: '0'
77
- type: :development
78
- prerelease: false
79
- requirement: !ruby/object:Gem::Requirement
80
- requirements:
81
- - - ">="
82
- - !ruby/object:Gem::Version
83
- version: '0'
84
- - !ruby/object:Gem::Dependency
85
- name: transpec
86
- version_requirements: !ruby/object:Gem::Requirement
87
- requirements:
88
- - - ">="
89
- - !ruby/object:Gem::Version
90
- version: '0'
91
- type: :development
92
- prerelease: false
93
- requirement: !ruby/object:Gem::Requirement
94
- requirements:
95
- - - ">="
96
- - !ruby/object:Gem::Version
97
- version: '0'
98
- - !ruby/object:Gem::Dependency
99
- name: pry
100
- version_requirements: !ruby/object:Gem::Requirement
101
- requirements:
102
- - - ">="
103
- - !ruby/object:Gem::Version
104
- version: '0'
105
- type: :development
106
- prerelease: false
107
- requirement: !ruby/object:Gem::Requirement
108
- requirements:
109
- - - ">="
110
- - !ruby/object:Gem::Version
111
- version: '0'
112
- - !ruby/object:Gem::Dependency
113
- name: rake
114
- version_requirements: !ruby/object:Gem::Requirement
115
- requirements:
116
- - - ">="
117
- - !ruby/object:Gem::Version
118
- version: '0'
119
- type: :development
120
- prerelease: false
121
- requirement: !ruby/object:Gem::Requirement
122
- requirements:
123
- - - ">="
124
- - !ruby/object:Gem::Version
125
- version: '0'
126
- - !ruby/object:Gem::Dependency
127
- name: rspec
128
- version_requirements: !ruby/object:Gem::Requirement
129
- requirements:
130
- - - ">="
131
- - !ruby/object:Gem::Version
132
- version: '0'
133
- type: :development
134
- prerelease: false
135
- requirement: !ruby/object:Gem::Requirement
136
- requirements:
137
- - - ">="
138
- - !ruby/object:Gem::Version
139
- version: '0'
140
- - !ruby/object:Gem::Dependency
141
- name: guard-rspec
142
- version_requirements: !ruby/object:Gem::Requirement
143
- requirements:
144
- - - ">="
145
- - !ruby/object:Gem::Version
146
- version: '0'
147
- type: :development
148
- prerelease: false
149
- requirement: !ruby/object:Gem::Requirement
150
- requirements:
151
- - - ">="
152
- - !ruby/object:Gem::Version
153
- version: '0'
154
- - !ruby/object:Gem::Dependency
155
- name: rspec-retry
156
- version_requirements: !ruby/object:Gem::Requirement
157
- requirements:
158
- - - ">="
159
- - !ruby/object:Gem::Version
160
- version: '0'
161
- type: :development
162
- prerelease: false
163
- requirement: !ruby/object:Gem::Requirement
164
- requirements:
165
- - - ">="
166
- - !ruby/object:Gem::Version
167
- version: '0'
168
- - !ruby/object:Gem::Dependency
169
- name: coveralls
170
- version_requirements: !ruby/object:Gem::Requirement
171
- requirements:
172
- - - ">="
173
- - !ruby/object:Gem::Version
174
- version: '0'
175
- type: :development
176
- prerelease: false
177
- requirement: !ruby/object:Gem::Requirement
178
- requirements:
179
- - - ">="
180
- - !ruby/object:Gem::Version
181
- version: '0'
182
- - !ruby/object:Gem::Dependency
183
- name: celluloid-essentials
184
- version_requirements: !ruby/object:Gem::Requirement
185
- requirements:
186
- - - ">="
187
- - !ruby/object:Gem::Version
188
- version: '0'
189
- type: :runtime
190
- prerelease: false
191
- requirement: !ruby/object:Gem::Requirement
192
- requirements:
193
- - - ">="
194
- - !ruby/object:Gem::Version
195
- version: '0'
196
- - !ruby/object:Gem::Dependency
197
- name: celluloid-supervision
198
- version_requirements: !ruby/object:Gem::Requirement
199
- requirements:
200
- - - ">="
201
- - !ruby/object:Gem::Version
202
- version: '0'
203
- type: :runtime
204
- prerelease: false
205
- requirement: !ruby/object:Gem::Requirement
206
- requirements:
207
- - - ">="
208
- - !ruby/object:Gem::Version
209
- version: '0'
210
- - !ruby/object:Gem::Dependency
211
- name: celluloid-pool
212
- version_requirements: !ruby/object:Gem::Requirement
213
- requirements:
214
- - - ">="
215
- - !ruby/object:Gem::Version
216
- version: '0'
217
- type: :runtime
218
- prerelease: false
219
- requirement: !ruby/object:Gem::Requirement
220
- requirements:
221
- - - ">="
222
- - !ruby/object:Gem::Version
223
- version: '0'
224
- - !ruby/object:Gem::Dependency
225
- name: celluloid-fsm
226
- version_requirements: !ruby/object:Gem::Requirement
227
- requirements:
228
- - - ">="
229
- - !ruby/object:Gem::Version
230
- version: '0'
231
- type: :runtime
232
- prerelease: false
15
+ name: timers
233
16
  requirement: !ruby/object:Gem::Requirement
234
17
  requirements:
235
- - - ">="
18
+ - - "~>"
236
19
  - !ruby/object:Gem::Version
237
- version: '0'
238
- - !ruby/object:Gem::Dependency
239
- name: celluloid-extras
240
- version_requirements: !ruby/object:Gem::Requirement
241
- requirements:
242
- - - ">="
243
- - !ruby/object:Gem::Version
244
- version: '0'
20
+ version: '4'
245
21
  type: :runtime
246
22
  prerelease: false
247
- requirement: !ruby/object:Gem::Requirement
248
- requirements:
249
- - - ">="
250
- - !ruby/object:Gem::Version
251
- version: '0'
252
- - !ruby/object:Gem::Dependency
253
- name: timers
254
23
  version_requirements: !ruby/object:Gem::Requirement
255
24
  requirements:
256
- - - ">="
257
- - !ruby/object:Gem::Version
258
- version: 4.1.1
259
- type: :runtime
260
- prerelease: false
261
- requirement: !ruby/object:Gem::Requirement
262
- requirements:
263
- - - ">="
25
+ - - "~>"
264
26
  - !ruby/object:Gem::Version
265
- version: 4.1.1
27
+ version: '4'
266
28
  description: Celluloid enables people to build concurrent programs out of concurrent
267
29
  objects just as easily as they build sequential programs out of sequential objects
268
30
  email:
269
- - tony.arcieri@gmail.com
31
+ - bascule@gmail.com
270
32
  - code@extremist.digital
271
33
  executables: []
272
34
  extensions: []
273
35
  extra_rdoc_files: []
274
36
  files:
275
37
  - CHANGES.md
38
+ - CONDUCT.md
39
+ - CONTRIBUTING.md
276
40
  - LICENSE.txt
277
41
  - README.md
278
- - culture/CONDUCT.md
279
- - culture/Gemfile
280
- - culture/LICENSE.txt
281
- - culture/README.md
282
- - culture/Rakefile
283
- - culture/SYNC.md
284
- - culture/celluloid-culture.gemspec
285
- - culture/gems/README.md
286
- - culture/gems/dependencies.yml
287
- - culture/gems/loader.rb
288
- - culture/rubocop/README.md
289
- - culture/rubocop/lint.yml
290
- - culture/rubocop/metrics.yml
291
- - culture/rubocop/perf.yml
292
- - culture/rubocop/rubocop.yml
293
- - culture/rubocop/style.yml
294
- - culture/spec/gems_spec.rb
295
- - culture/spec/spec_helper.rb
296
- - culture/spec/sync_spec.rb
297
- - culture/sync.rb
298
- - culture/tasks/rspec.rake
299
- - culture/tasks/rubocop.rake
42
+ - REFACTOR.md
43
+ - architecture.md
300
44
  - examples/basic_usage.rb
45
+ - examples/configurations.rb
301
46
  - examples/futures.rb
302
47
  - examples/ring.rb
303
48
  - examples/simple_pmap.rb
304
49
  - examples/stack.rb
50
+ - examples/supervisors_and_registry.rb
305
51
  - examples/timers.rb
306
52
  - lib/celluloid.rb
307
53
  - lib/celluloid/actor.rb
308
- - lib/celluloid/actor/manager.rb
309
54
  - lib/celluloid/actor/system.rb
310
55
  - lib/celluloid/autostart.rb
311
- - lib/celluloid/backported.rb
312
56
  - lib/celluloid/call/async.rb
313
57
  - lib/celluloid/call/block.rb
314
58
  - lib/celluloid/call/sync.rb
@@ -316,20 +60,41 @@ files:
316
60
  - lib/celluloid/cell.rb
317
61
  - lib/celluloid/condition.rb
318
62
  - lib/celluloid/core_ext.rb
319
- - lib/celluloid/current.rb
320
63
  - lib/celluloid/debug.rb
321
- - lib/celluloid/deprecate.rb
322
64
  - lib/celluloid/exceptions.rb
323
- - lib/celluloid/fiber.rb
324
65
  - lib/celluloid/future.rb
325
66
  - lib/celluloid/group.rb
326
67
  - lib/celluloid/group/pool.rb
327
68
  - lib/celluloid/group/spawner.rb
69
+ - lib/celluloid/internals/call_chain.rb
70
+ - lib/celluloid/internals/cpu_counter.rb
71
+ - lib/celluloid/internals/handlers.rb
72
+ - lib/celluloid/internals/links.rb
73
+ - lib/celluloid/internals/logger.rb
74
+ - lib/celluloid/internals/method.rb
75
+ - lib/celluloid/internals/properties.rb
76
+ - lib/celluloid/internals/receivers.rb
77
+ - lib/celluloid/internals/registry.rb
78
+ - lib/celluloid/internals/responses.rb
79
+ - lib/celluloid/internals/signals.rb
80
+ - lib/celluloid/internals/stack.rb
81
+ - lib/celluloid/internals/stack/dump.rb
82
+ - lib/celluloid/internals/stack/states.rb
83
+ - lib/celluloid/internals/stack/summary.rb
84
+ - lib/celluloid/internals/task_set.rb
85
+ - lib/celluloid/internals/thread_handle.rb
86
+ - lib/celluloid/internals/uuid.rb
328
87
  - lib/celluloid/logging.rb
88
+ - lib/celluloid/logging/incident.rb
89
+ - lib/celluloid/logging/incident_logger.rb
90
+ - lib/celluloid/logging/incident_reporter.rb
91
+ - lib/celluloid/logging/log_event.rb
92
+ - lib/celluloid/logging/ring_buffer.rb
329
93
  - lib/celluloid/mailbox.rb
330
94
  - lib/celluloid/mailbox/evented.rb
331
- - lib/celluloid/managed.rb
332
- - lib/celluloid/notices.rb
95
+ - lib/celluloid/notifications.rb
96
+ - lib/celluloid/pool.rb
97
+ - lib/celluloid/probe.rb
333
98
  - lib/celluloid/proxies.rb
334
99
  - lib/celluloid/proxy/abstract.rb
335
100
  - lib/celluloid/proxy/actor.rb
@@ -339,6 +104,22 @@ files:
339
104
  - lib/celluloid/proxy/future.rb
340
105
  - lib/celluloid/proxy/sync.rb
341
106
  - lib/celluloid/rspec.rb
107
+ - lib/celluloid/supervision.rb
108
+ - lib/celluloid/supervision/configuration.rb
109
+ - lib/celluloid/supervision/configuration/injections.rb
110
+ - lib/celluloid/supervision/configuration/instance.rb
111
+ - lib/celluloid/supervision/constants.rb
112
+ - lib/celluloid/supervision/container.rb
113
+ - lib/celluloid/supervision/container/behavior.rb
114
+ - lib/celluloid/supervision/container/behavior/pool.rb
115
+ - lib/celluloid/supervision/container/behavior/tree.rb
116
+ - lib/celluloid/supervision/container/injections.rb
117
+ - lib/celluloid/supervision/container/instance.rb
118
+ - lib/celluloid/supervision/container/pool.rb
119
+ - lib/celluloid/supervision/service.rb
120
+ - lib/celluloid/supervision/supervise.rb
121
+ - lib/celluloid/supervision/validation.rb
122
+ - lib/celluloid/supervision/version.rb
342
123
  - lib/celluloid/system_events.rb
343
124
  - lib/celluloid/task.rb
344
125
  - lib/celluloid/task/fibered.rb
@@ -346,7 +127,6 @@ files:
346
127
  - lib/celluloid/test.rb
347
128
  - lib/celluloid/thread.rb
348
129
  - lib/celluloid/version.rb
349
- - spec/celluloid/actor/manager_spec.rb
350
130
  - spec/celluloid/actor/system_spec.rb
351
131
  - spec/celluloid/actor_spec.rb
352
132
  - spec/celluloid/block_spec.rb
@@ -357,31 +137,47 @@ files:
357
137
  - spec/celluloid/group/elastic_spec.rb
358
138
  - spec/celluloid/group/pool_spec.rb
359
139
  - spec/celluloid/group/spawner_spec.rb
140
+ - spec/celluloid/internals/cpu_counter_spec.rb
141
+ - spec/celluloid/internals/links_spec.rb
142
+ - spec/celluloid/internals/properties_spec.rb
143
+ - spec/celluloid/internals/registry_spec.rb
144
+ - spec/celluloid/internals/stack/dump_spec.rb
145
+ - spec/celluloid/internals/stack/summary_spec.rb
146
+ - spec/celluloid/internals/thread_handle_spec.rb
147
+ - spec/celluloid/internals/uuid_spec.rb
148
+ - spec/celluloid/logging/ring_buffer_spec.rb
360
149
  - spec/celluloid/mailbox/evented_spec.rb
361
150
  - spec/celluloid/mailbox_spec.rb
362
151
  - spec/celluloid/misc/leak_spec.rb
152
+ - spec/celluloid/notifications_spec.rb
153
+ - spec/celluloid/probe_spec.rb
154
+ - spec/celluloid/proxy_spec.rb
155
+ - spec/celluloid/supervision/behavior_spec.rb
156
+ - spec/celluloid/supervision/configuration_spec.rb
157
+ - spec/celluloid/supervision/container_spec.rb
158
+ - spec/celluloid/supervision/instance_spec.rb
159
+ - spec/celluloid/supervision/root_spec.rb
160
+ - spec/celluloid/supervision/supervisor_spec.rb
363
161
  - spec/celluloid/task/fibered_spec.rb
364
162
  - spec/celluloid/task/threaded_spec.rb
365
163
  - spec/celluloid/timer_spec.rb
366
- - spec/deprecate/actor_system_spec.rb
367
- - spec/deprecate/block_spec.rb
368
- - spec/deprecate/calls_spec.rb
369
- - spec/deprecate/evented_mailbox_spec.rb
370
- - spec/deprecate/future_spec.rb
371
- - spec/deprecate/internal_pool_spec.rb
372
164
  - spec/shared/actor_examples.rb
373
165
  - spec/shared/group_examples.rb
374
166
  - spec/shared/mailbox_examples.rb
167
+ - spec/shared/stack_examples.rb
375
168
  - spec/shared/task_examples.rb
376
169
  - spec/spec_helper.rb
377
170
  - spec/support/configure_rspec.rb
378
171
  - spec/support/coverage.rb
379
172
  - spec/support/crash_checking.rb
380
173
  - spec/support/debugging.rb
381
- - spec/support/env.rb
382
174
  - spec/support/examples/actor_class.rb
383
175
  - spec/support/examples/call_class.rb
176
+ - spec/support/examples/container_class.rb
384
177
  - spec/support/examples/evented_mailbox_class.rb
178
+ - spec/support/examples/stack_classes.rb
179
+ - spec/support/examples/stack_methods.rb
180
+ - spec/support/examples/subordinate_class.rb
385
181
  - spec/support/includer.rb
386
182
  - spec/support/logging.rb
387
183
  - spec/support/loose_threads.rb
@@ -391,8 +187,15 @@ files:
391
187
  homepage: https://github.com/celluloid/celluloid
392
188
  licenses:
393
189
  - MIT
394
- metadata: {}
395
- post_install_message:
190
+ metadata:
191
+ bug_tracker_uri: https://github.com/celluloid/celluloid/issues
192
+ changelog_uri: https://github.com/celluloid/celluloid/blob/master/CHANGES.md
193
+ documentation_uri: https://www.rubydoc.info/gems/celluloid
194
+ homepage_uri: https://celluloid.io/
195
+ mailing_list_uri: http://groups.google.com/group/celluloid-ruby
196
+ source_code_uri: https://github.com/celluloid/celluloid
197
+ wiki_uri: https://github.com/celluloid/celluloid/wiki
198
+ post_install_message:
396
199
  rdoc_options: []
397
200
  require_paths:
398
201
  - lib
@@ -400,16 +203,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
400
203
  requirements:
401
204
  - - ">="
402
205
  - !ruby/object:Gem::Version
403
- version: 1.9.3
206
+ version: 2.2.6
404
207
  required_rubygems_version: !ruby/object:Gem::Requirement
405
208
  requirements:
406
209
  - - ">="
407
210
  - !ruby/object:Gem::Version
408
- version: 1.3.6
211
+ version: 2.0.0
409
212
  requirements: []
410
- rubyforge_project:
411
- rubygems_version: 2.4.8
412
- signing_key:
213
+ rubygems_version: 3.1.2
214
+ signing_key:
413
215
  specification_version: 4
414
216
  summary: Actor-based concurrent object framework for Ruby
415
217
  test_files: []