celluloid 0.17.2 → 0.18.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/CHANGES.md +340 -75
- data/CONDUCT.md +13 -0
- data/CONTRIBUTING.md +39 -0
- data/LICENSE.txt +1 -1
- data/README.md +54 -150
- data/REFACTOR.md +1 -0
- data/architecture.md +120 -0
- data/examples/basic_usage.rb +1 -1
- data/examples/configurations.rb +78 -0
- data/examples/futures.rb +1 -1
- data/examples/ring.rb +5 -4
- data/examples/simple_pmap.rb +1 -1
- data/examples/stack.rb +2 -2
- data/examples/supervisors_and_registry.rb +82 -0
- data/examples/timers.rb +2 -2
- data/lib/celluloid.rb +78 -65
- data/lib/celluloid/actor.rb +27 -17
- data/lib/celluloid/actor/system.rb +13 -29
- data/lib/celluloid/autostart.rb +6 -1
- data/lib/celluloid/call/async.rb +2 -0
- data/lib/celluloid/call/sync.rb +10 -3
- data/lib/celluloid/calls.rb +13 -13
- data/lib/celluloid/cell.rb +5 -9
- data/lib/celluloid/condition.rb +3 -3
- data/lib/celluloid/core_ext.rb +0 -2
- data/lib/celluloid/debug.rb +3 -0
- data/lib/celluloid/exceptions.rb +2 -2
- data/lib/celluloid/future.rb +8 -10
- data/lib/celluloid/group.rb +16 -6
- data/lib/celluloid/group/pool.rb +1 -3
- data/lib/celluloid/group/spawner.rb +2 -6
- data/lib/celluloid/internals/call_chain.rb +15 -0
- data/lib/celluloid/internals/cpu_counter.rb +62 -0
- data/lib/celluloid/internals/handlers.rb +42 -0
- data/lib/celluloid/internals/links.rb +38 -0
- data/lib/celluloid/internals/logger.rb +104 -0
- data/lib/celluloid/internals/method.rb +34 -0
- data/lib/celluloid/internals/properties.rb +32 -0
- data/lib/celluloid/internals/receivers.rb +64 -0
- data/lib/celluloid/internals/registry.rb +102 -0
- data/lib/celluloid/internals/responses.rb +46 -0
- data/lib/celluloid/internals/signals.rb +24 -0
- data/lib/celluloid/internals/stack.rb +74 -0
- data/lib/celluloid/internals/stack/dump.rb +12 -0
- data/lib/celluloid/internals/stack/states.rb +72 -0
- data/lib/celluloid/internals/stack/summary.rb +12 -0
- data/lib/celluloid/internals/task_set.rb +51 -0
- data/lib/celluloid/internals/thread_handle.rb +52 -0
- data/lib/celluloid/internals/uuid.rb +40 -0
- data/lib/celluloid/logging/incident.rb +21 -0
- data/lib/celluloid/logging/incident_logger.rb +147 -0
- data/lib/celluloid/logging/incident_reporter.rb +49 -0
- data/lib/celluloid/logging/log_event.rb +20 -0
- data/lib/celluloid/logging/ring_buffer.rb +64 -0
- data/lib/celluloid/mailbox.rb +22 -9
- data/lib/celluloid/mailbox/evented.rb +13 -7
- data/lib/celluloid/notifications.rb +95 -0
- data/lib/celluloid/pool.rb +6 -0
- data/lib/celluloid/probe.rb +81 -0
- data/lib/celluloid/proxy/abstract.rb +38 -7
- data/lib/celluloid/proxy/actor.rb +0 -5
- data/lib/celluloid/proxy/async.rb +2 -18
- data/lib/celluloid/proxy/block.rb +2 -1
- data/lib/celluloid/proxy/cell.rb +1 -7
- data/lib/celluloid/proxy/future.rb +3 -21
- data/lib/celluloid/proxy/sync.rb +2 -20
- data/lib/celluloid/rspec.rb +22 -34
- data/lib/celluloid/supervision.rb +17 -0
- data/lib/celluloid/supervision/configuration.rb +169 -0
- data/lib/celluloid/supervision/configuration/injections.rb +8 -0
- data/lib/celluloid/supervision/configuration/instance.rb +113 -0
- data/lib/celluloid/supervision/constants.rb +123 -0
- data/lib/celluloid/supervision/container.rb +144 -0
- data/lib/celluloid/supervision/container/behavior.rb +89 -0
- data/lib/celluloid/supervision/container/behavior/pool.rb +71 -0
- data/lib/celluloid/supervision/container/behavior/tree.rb +23 -0
- data/lib/celluloid/supervision/container/injections.rb +8 -0
- data/lib/celluloid/supervision/container/instance.rb +116 -0
- data/lib/celluloid/supervision/container/pool.rb +210 -0
- data/lib/celluloid/supervision/service.rb +27 -0
- data/lib/celluloid/supervision/supervise.rb +34 -0
- data/lib/celluloid/supervision/validation.rb +40 -0
- data/lib/celluloid/supervision/version.rb +5 -0
- data/lib/celluloid/system_events.rb +10 -3
- data/lib/celluloid/task.rb +25 -12
- data/lib/celluloid/task/fibered.rb +6 -2
- data/lib/celluloid/task/threaded.rb +3 -3
- data/lib/celluloid/test.rb +5 -2
- data/lib/celluloid/thread.rb +0 -2
- data/lib/celluloid/version.rb +1 -1
- data/spec/celluloid/block_spec.rb +29 -32
- data/spec/celluloid/calls_spec.rb +5 -15
- data/spec/celluloid/future_spec.rb +7 -1
- data/spec/celluloid/internals/cpu_counter_spec.rb +129 -0
- data/spec/celluloid/internals/links_spec.rb +43 -0
- data/spec/celluloid/internals/properties_spec.rb +40 -0
- data/spec/celluloid/internals/registry_spec.rb +62 -0
- data/spec/celluloid/internals/stack/dump_spec.rb +4 -0
- data/spec/celluloid/internals/stack/summary_spec.rb +4 -0
- data/spec/celluloid/internals/thread_handle_spec.rb +60 -0
- data/spec/celluloid/internals/uuid_spec.rb +9 -0
- data/spec/celluloid/logging/ring_buffer_spec.rb +36 -0
- data/spec/celluloid/mailbox/evented_spec.rb +21 -19
- data/spec/celluloid/misc/leak_spec.rb +3 -4
- data/spec/celluloid/notifications_spec.rb +140 -0
- data/spec/celluloid/probe_spec.rb +102 -0
- data/spec/celluloid/proxy_spec.rb +33 -0
- data/spec/celluloid/supervision/behavior_spec.rb +74 -0
- data/spec/celluloid/supervision/configuration_spec.rb +181 -0
- data/spec/celluloid/supervision/container_spec.rb +72 -0
- data/spec/celluloid/supervision/instance_spec.rb +13 -0
- data/spec/celluloid/supervision/root_spec.rb +28 -0
- data/spec/celluloid/supervision/supervisor_spec.rb +93 -0
- data/spec/celluloid/task/fibered_spec.rb +1 -3
- data/spec/celluloid/task/threaded_spec.rb +1 -3
- data/spec/shared/actor_examples.rb +65 -29
- data/spec/shared/group_examples.rb +2 -2
- data/spec/shared/mailbox_examples.rb +1 -1
- data/spec/shared/stack_examples.rb +87 -0
- data/spec/shared/task_examples.rb +2 -3
- data/spec/spec_helper.rb +2 -4
- data/spec/support/configure_rspec.rb +3 -4
- data/spec/support/coverage.rb +2 -4
- data/spec/support/crash_checking.rb +2 -2
- data/spec/support/examples/actor_class.rb +3 -8
- data/spec/support/examples/call_class.rb +2 -2
- data/spec/support/examples/container_class.rb +35 -0
- data/spec/support/examples/evented_mailbox_class.rb +1 -2
- data/spec/support/examples/stack_classes.rb +58 -0
- data/spec/support/examples/stack_methods.rb +23 -0
- data/spec/support/examples/subordinate_class.rb +19 -0
- data/spec/support/logging.rb +3 -34
- data/spec/support/loose_threads.rb +3 -24
- data/spec/support/reset_class_variables.rb +5 -1
- data/spec/support/stubbing.rb +1 -1
- metadata +93 -291
- data/culture/CONDUCT.md +0 -28
- data/culture/Gemfile +0 -9
- data/culture/LICENSE.txt +0 -22
- data/culture/README.md +0 -22
- data/culture/Rakefile +0 -5
- data/culture/SYNC.md +0 -70
- data/culture/celluloid-culture.gemspec +0 -18
- data/culture/gems/README.md +0 -39
- data/culture/gems/dependencies.yml +0 -85
- data/culture/gems/loader.rb +0 -101
- data/culture/rubocop/README.md +0 -38
- data/culture/rubocop/lint.yml +0 -8
- data/culture/rubocop/metrics.yml +0 -15
- data/culture/rubocop/perf.yml +0 -0
- data/culture/rubocop/rubocop.yml +0 -5
- data/culture/rubocop/style.yml +0 -57
- data/culture/spec/gems_spec.rb +0 -2
- data/culture/spec/spec_helper.rb +0 -0
- data/culture/spec/sync_spec.rb +0 -2
- data/culture/sync.rb +0 -56
- data/culture/tasks/rspec.rake +0 -5
- data/culture/tasks/rubocop.rake +0 -2
- data/lib/celluloid/actor/manager.rb +0 -7
- data/lib/celluloid/backported.rb +0 -2
- data/lib/celluloid/current.rb +0 -2
- data/lib/celluloid/deprecate.rb +0 -21
- data/lib/celluloid/fiber.rb +0 -32
- data/lib/celluloid/managed.rb +0 -3
- data/lib/celluloid/notices.rb +0 -15
- data/spec/celluloid/actor/manager_spec.rb +0 -0
- data/spec/deprecate/actor_system_spec.rb +0 -72
- data/spec/deprecate/block_spec.rb +0 -52
- data/spec/deprecate/calls_spec.rb +0 -39
- data/spec/deprecate/evented_mailbox_spec.rb +0 -34
- data/spec/deprecate/future_spec.rb +0 -32
- data/spec/deprecate/internal_pool_spec.rb +0 -4
- data/spec/support/env.rb +0 -21
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: fede4c9c3907c29a0dc303e711077a7b3196fc2acaf3b099ee98b197076c3fdc
|
4
|
+
data.tar.gz: f8bd8ffc37cddd24000d66e56d1bafc03796e309101fa4b6f5e02ab5e11f9aac
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: dc813a35e9f74a49a0f875d290e41fe6445dfd7f6778b46bd3e19b741446c590e1b05be2bc697e6d8641548165baee2494a49960fa7e3782f71b50a13cb50ee1
|
7
|
+
data.tar.gz: 9a47f043d4929f833b05187c88a487351e4f26da10038b1045497ed3c7e0fdf980e4b5fe753d7cc4ae1f2db70d0d5fe5966520e2bdff5f08a558c62d82c12fee
|
data/CHANGES.md
CHANGED
@@ -1,28 +1,223 @@
|
|
1
|
-
0.
|
2
|
-
|
1
|
+
## 0.18.0 (2020-12-05)
|
2
|
+
|
3
|
+
[0.18.0]: https://github.com/celluloid/celluloid/compare/v0.17.3...v0.18.0
|
4
|
+
|
5
|
+
* [#804](https://github.com/celluloid/celluloid/pull/804)
|
6
|
+
Remove deprecation warnings
|
7
|
+
|
8
|
+
* [#802](https://github.com/celluloid/celluloid/pull/802)
|
9
|
+
Remove lattice link itself.
|
10
|
+
|
11
|
+
* [#797](https://github.com/celluloid/celluloid/pull/797)
|
12
|
+
Update Ruby versions in CI script
|
13
|
+
|
14
|
+
* [#801](https://github.com/celluloid/celluloid/pull/801)
|
15
|
+
Associate Open Collective sponsorship option
|
16
|
+
|
17
|
+
* [#800](https://github.com/celluloid/celluloid/pull/800)
|
18
|
+
Streamline README
|
19
|
+
|
20
|
+
* [#799](https://github.com/celluloid/celluloid/pull/799)
|
21
|
+
Update links, add diagram preview.
|
22
|
+
|
23
|
+
* [#796](https://github.com/celluloid/celluloid/pull/796)
|
24
|
+
Create Class Diagram in Draw.io
|
25
|
+
|
26
|
+
* [#798](https://github.com/celluloid/celluloid/pull/798)
|
27
|
+
Pertinent Newsflash
|
28
|
+
|
29
|
+
* [#792](https://github.com/celluloid/celluloid/pull/792)
|
30
|
+
CI: 2.5.5, 2.6.2
|
31
|
+
|
32
|
+
* [#788](https://github.com/celluloid/celluloid/pull/788)
|
33
|
+
Travis: Include Ruby 2.5, 2.6
|
34
|
+
|
35
|
+
* [#787](https://github.com/celluloid/celluloid/pull/787)
|
36
|
+
Travis config: drop old configuration sudo: false
|
37
|
+
|
38
|
+
* [#786](https://github.com/celluloid/celluloid/pull/786)
|
39
|
+
Travis: use jruby-9.2.5.0
|
40
|
+
|
41
|
+
* [#783](https://github.com/celluloid/celluloid/pull/783)
|
42
|
+
v0.18.0.pre2
|
43
|
+
|
44
|
+
* [#782](https://github.com/celluloid/celluloid/pull/782)
|
45
|
+
Merge 'celluloid-supervision' back into the tree
|
46
|
+
|
47
|
+
* [#781](https://github.com/celluloid/celluloid/pull/781)
|
48
|
+
.gitmodules: No longer used
|
49
|
+
|
50
|
+
* [#780](https://github.com/celluloid/celluloid/pull/780)
|
51
|
+
README.md: Link to unmaintained issue
|
52
|
+
|
53
|
+
* [#778](https://github.com/celluloid/celluloid/pull/778)
|
54
|
+
README.md: Add "maintained: no! (as of 2016)" badge
|
55
|
+
|
56
|
+
* [#777](https://github.com/celluloid/celluloid/pull/777)
|
57
|
+
gemspec: Metadata with supported links
|
58
|
+
|
59
|
+
* [#776](https://github.com/celluloid/celluloid/pull/776)
|
60
|
+
Travis: use jruby-9.2.0.0
|
61
|
+
|
62
|
+
* [#775](https://github.com/celluloid/celluloid/pull/775)
|
63
|
+
Travis: jruby-9.1.17.0
|
64
|
+
|
65
|
+
* [#769](https://github.com/celluloid/celluloid/pull/769)
|
66
|
+
Travis: jruby-9.1.15.0
|
67
|
+
|
68
|
+
* [#768](https://github.com/celluloid/celluloid/pull/768)
|
69
|
+
Travis: use latest JRuby
|
70
|
+
|
71
|
+
* [#767](https://github.com/celluloid/celluloid/pull/767)
|
72
|
+
CHANGES: Add GitHub compare link on each heading
|
73
|
+
|
74
|
+
* [#766](https://github.com/celluloid/celluloid/pull/766)
|
75
|
+
Fix celluloid/celluloid#758
|
76
|
+
|
77
|
+
* [#765](https://github.com/celluloid/celluloid/pull/765)
|
78
|
+
Travis: jruby-9.1.13.0
|
79
|
+
|
80
|
+
* [#761](https://github.com/celluloid/celluloid/pull/761)
|
81
|
+
Travis: jruby-9.1.12.0
|
82
|
+
|
83
|
+
* [#760](https://github.com/celluloid/celluloid/pull/760)
|
84
|
+
Travis: jruby-9.1.10.0
|
85
|
+
|
86
|
+
* [#759](https://github.com/celluloid/celluloid/pull/759)
|
87
|
+
Travis: jruby-9.1.9.0
|
88
|
+
|
89
|
+
* [#757](https://github.com/celluloid/celluloid/pull/757)
|
90
|
+
parameterize error message so old and new Rubies match text
|
91
|
+
|
92
|
+
* [#756](https://github.com/celluloid/celluloid/pull/756)
|
93
|
+
Travis: latest stable rubies
|
94
|
+
|
95
|
+
* [#754](https://github.com/celluloid/celluloid/pull/754)
|
96
|
+
README: Fix badge rendering in Markdown
|
97
|
+
|
98
|
+
* [#753](https://github.com/celluloid/celluloid/pull/753)
|
99
|
+
Travis: use jruby-9.1.8.0
|
100
|
+
|
101
|
+
* [#752](https://github.com/celluloid/celluloid/pull/752)
|
102
|
+
Misspellings
|
103
|
+
|
104
|
+
* [#749](https://github.com/celluloid/celluloid/pull/749)
|
105
|
+
Return false from Celluloid.running? if Celluloid.boot hasn't been called
|
106
|
+
|
107
|
+
* [#751](https://github.com/celluloid/celluloid/pull/751)
|
108
|
+
Travis: Use JRuby 9.1.7.0
|
109
|
+
|
110
|
+
* [#740](https://github.com/celluloid/celluloid/pull/740)
|
111
|
+
Global variables: stop the bleeding
|
112
|
+
|
113
|
+
* [#739](https://github.com/celluloid/celluloid/pull/739)
|
114
|
+
Remove hacks around old MRIs, JRuby, and rbx
|
115
|
+
|
116
|
+
* [#738](https://github.com/celluloid/celluloid/pull/738)
|
117
|
+
Update to RuboCop 0.45.0 (with new rubocop.yml policy)
|
118
|
+
|
119
|
+
* [#737](https://github.com/celluloid/celluloid/pull/737)
|
120
|
+
Simplify dependencies: merge 'essentials' and 'culture' repos
|
121
|
+
|
122
|
+
* [#736](https://github.com/celluloid/celluloid/pull/736)
|
123
|
+
Remove $CELLULOID_BACKPORTED and $CELLULOID_MANAGED
|
124
|
+
|
125
|
+
* [#735](https://github.com/celluloid/celluloid/pull/735)
|
126
|
+
Require Ruby 2.2.6+
|
127
|
+
|
128
|
+
* [#729](https://github.com/celluloid/celluloid/pull/729)
|
129
|
+
Remove mysterious Fiber.yield
|
130
|
+
|
131
|
+
* [#721](https://github.com/celluloid/celluloid/pull/721)
|
132
|
+
Instruction for cloning Celluloid via github
|
133
|
+
|
134
|
+
* [#715](https://github.com/celluloid/celluloid/pull/715)
|
135
|
+
fix error response reference in Future#cancel
|
136
|
+
|
137
|
+
* [#712](https://github.com/celluloid/celluloid/pull/712)
|
138
|
+
Add RBX-3 to the build
|
139
|
+
|
140
|
+
* [#711](https://github.com/celluloid/celluloid/pull/711)
|
141
|
+
Added bundler cache
|
142
|
+
|
143
|
+
* [#709](https://github.com/celluloid/celluloid/pull/709)
|
144
|
+
Fix autostart. Fixes https://github.com/celluloid/celluloid/issues/698
|
145
|
+
|
146
|
+
* [#705](https://github.com/celluloid/celluloid/pull/705)
|
147
|
+
Adding method source code path to backtrace
|
148
|
+
|
149
|
+
## [0.17.3] (2016-01-18)
|
150
|
+
|
151
|
+
[0.17.3]: https://github.com/celluloid/celluloid/compare/v0.17.2...v0.17.3
|
152
|
+
|
153
|
+
* [#701](https://github.com/celluloid/celluloid/pull/701)
|
154
|
+
Conditions in loose threads loop does not take into account the difference between
|
155
|
+
backtraces from ruby 2.0.0 and greater than. Fixes celluloid/celluloid-io#165.
|
156
|
+
([@TiagoCardoso1983])
|
157
|
+
|
158
|
+
* [#700](https://github.com/celluloid/celluloid/pull/700)
|
159
|
+
Set celluloid logger level to info by default unless debug is enabled. Fixes #667.
|
160
|
+
([@ioquatix])
|
161
|
+
|
162
|
+
* [#695](https://github.com/celluloid/celluloid/pull/695)
|
163
|
+
Extending the condition event handler with the block; this solves a bug
|
164
|
+
introduced in jruby >9.0.0.0, which breaks with an ArgumentError exception,
|
165
|
+
apparently due to the way to_proc procs are passed arguments. Fixes #694.
|
166
|
+
([@TiagoCardoso1983])
|
167
|
+
|
168
|
+
* [#689](https://github.com/celluloid/celluloid/pull/689)
|
169
|
+
Simplified sync, async and future proxies by providing specific AbstractCall base.
|
170
|
+
([@ioquatix])
|
171
|
+
|
172
|
+
* [#688](https://github.com/celluloid/celluloid/pull/688)
|
173
|
+
Fix failure to remove dead actors from sets, e.g. celluloid-supervision.
|
174
|
+
([@ioquatix])
|
175
|
+
|
176
|
+
* [#686](https://github.com/celluloid/celluloid/pull/686)
|
177
|
+
Print out method name to help debugging method call which caused dead actor error.
|
178
|
+
([@ioquatix])
|
179
|
+
|
180
|
+
* [#682](https://github.com/celluloid/celluloid/pull/682)
|
181
|
+
Remove excess call/block require.
|
182
|
+
|
183
|
+
* [#666](https://github.com/celluloid/celluloid/pull/666)
|
184
|
+
Don't catch IOError.
|
185
|
+
|
186
|
+
## [0.17.2] (2015-09-30)
|
187
|
+
|
188
|
+
[0.17.2]: https://github.com/celluloid/celluloid/compare/v0.17.1.2...v0.17.2
|
189
|
+
|
3
190
|
* Revamped test suite, using shared RSpec configuration layer provided by Celluloid itself.
|
4
191
|
* Updated gem dependencies provided by Celluloid::Sync... extraneous gems removed, or marked as development dependencies.
|
5
|
-
|
192
|
+
* Clean up deprecation notes.
|
193
|
+
|
194
|
+
## [0.17.1.2] (2015-08-21)
|
195
|
+
|
196
|
+
[0.17.1.2]: https://github.com/celluloid/celluloid/compare/v0.17.1.1...v0.17.1.2
|
197
|
+
|
198
|
+
* Fixes to posted markdown content.
|
199
|
+
* Pull in new gem dependencies.
|
200
|
+
|
201
|
+
## [0.17.1.1] (2015-08-07)
|
202
|
+
|
203
|
+
[0.17.1.1]: https://github.com/celluloid/celluloid/compare/v0.17.1...v0.17.1.1
|
6
204
|
|
7
|
-
|
8
|
-
-----
|
9
|
-
- Fixes to posted markdown content.
|
10
|
-
- Pull in new gem dependencies.
|
205
|
+
* Revert "no task to suspend" code from #232.
|
11
206
|
|
12
|
-
0.17.1
|
13
|
-
|
14
|
-
|
207
|
+
## [0.17.1] (2015-08-06)
|
208
|
+
|
209
|
+
[0.17.1]: https://github.com/celluloid/celluloid/compare/v0.17.0...v0.17.1
|
15
210
|
|
16
|
-
0.17.1 (2015-08-06)
|
17
|
-
-----
|
18
211
|
* `Celluloid::ActorSystem` moved to `Celluloid::Actor::System`, and from `celluloid/actor_system.rb` to `celluloid/actor/system.rb`
|
19
212
|
* Added extensible API for defining new SystemEvents, and having them handled... without everyone changing `Actor#handle_system_event`.
|
20
213
|
* Deprecated Task::TerminatedError & Task::TimeoutError... Consolidated in exceptions.rb, inherited from Exceptions vs. StandardError.
|
21
214
|
* General round-up of all "errors" emitted throughout Celluloid, to either be derived from `Celluloid::Error` or `Celluloid::Interruption`.
|
22
215
|
* Added ability to pass a block to `Condition#wait` which runs a `{ |value| ... }` type block if present, once the value is obtained by waiting.
|
23
216
|
|
24
|
-
0.17.0 (2015-07-04)
|
25
|
-
|
217
|
+
## [0.17.0] (2015-07-04)
|
218
|
+
|
219
|
+
[0.17.0]: https://github.com/celluloid/celluloid/compare/v0.16.0...v0.17.0
|
220
|
+
|
26
221
|
* Fix $CELLULOID_TEST warnings
|
27
222
|
* Massive overhaul of test suite, end-to-end.
|
28
223
|
* Make "Terminating task" log messages debug-level events
|
@@ -52,8 +247,10 @@
|
|
52
247
|
* Implement `Group::Manager` as base for future `Group::Unlocker` and other such systems traversing `ActorSystem#group` regularly.
|
53
248
|
* Reduce number of supervisors instantiated by `ActorSystem` by consolidating them down to `Service::Root` container instances.
|
54
249
|
|
55
|
-
0.16.0 (2014-09-04)
|
56
|
-
|
250
|
+
## [0.16.0] (2014-09-04)
|
251
|
+
|
252
|
+
[0.16.0]: https://github.com/celluloid/celluloid/compare/v0.15.2...v0.16.0
|
253
|
+
|
57
254
|
* Factor apart Celluloid::Cell (concurrent objects) from Celluloid::Actor
|
58
255
|
* Introduce Celluloid::ActorSystem as an abstraction around the backend
|
59
256
|
actor implementation (idea borrowed from Akka)
|
@@ -71,16 +268,22 @@
|
|
71
268
|
* Better thread names on JRuby for easier debugging
|
72
269
|
* Thread safety fixes to internal thread pool
|
73
270
|
|
74
|
-
0.15.2 (2013-10-06)
|
75
|
-
|
271
|
+
## [0.15.2] (2013-10-06)
|
272
|
+
|
273
|
+
[0.15.2]: https://github.com/celluloid/celluloid/compare/v0.15.1...v0.15.2
|
274
|
+
|
76
275
|
* require 'celluloid/test' for at_exit-free testing
|
77
276
|
|
78
|
-
0.15.1 (2013-09-06)
|
79
|
-
|
277
|
+
## [0.15.1] (2013-09-06)
|
278
|
+
|
279
|
+
[0.15.1]: https://github.com/celluloid/celluloid/compare/v0.15.0...v0.15.1
|
280
|
+
|
80
281
|
* Only raise on nested tasks if $CELLULOID_DEBUG is set
|
81
282
|
|
82
|
-
0.15.0 (2013-09-04)
|
83
|
-
|
283
|
+
## [0.15.0] (2013-09-04)
|
284
|
+
|
285
|
+
[0.15.0]: https://github.com/celluloid/celluloid/compare/v0.14.0...v0.15.0
|
286
|
+
|
84
287
|
* Remove legacy support for "bang"-method based async invocation
|
85
288
|
* Generic timeout support with Celluloid#timeout
|
86
289
|
* Implement recursion detection for #inspect, avoiding infinite loop bugs
|
@@ -95,8 +298,10 @@
|
|
95
298
|
* Reimplement signal system on top of Conditions
|
96
299
|
* Add metadata like the current method to Celluloid::StackDumps
|
97
300
|
|
98
|
-
0.14.0 (2013-05-07)
|
99
|
-
|
301
|
+
## [0.14.0] (2013-05-07)
|
302
|
+
|
303
|
+
[0.14.0]: https://github.com/celluloid/celluloid/compare/v0.13.0...v0.14.0
|
304
|
+
|
100
305
|
* Use a Thread-subclass for Celluloid
|
101
306
|
* Implement actor-local variables
|
102
307
|
* Add helper methods to the class
|
@@ -110,8 +315,10 @@
|
|
110
315
|
* Execute blocks on the sender by default
|
111
316
|
* Fix CPU counter on windows
|
112
317
|
|
113
|
-
0.13.0
|
114
|
-
|
318
|
+
## [0.13.0]
|
319
|
+
|
320
|
+
[0.13.0]: https://github.com/celluloid/celluloid/compare/v0.12.4...v0.13.0
|
321
|
+
|
115
322
|
* API change: Require Celluloid with: require 'celluloid/autostart' to
|
116
323
|
automatically start support actors and configure at_exit handler which
|
117
324
|
automatically terminates all actors.
|
@@ -125,8 +332,10 @@
|
|
125
332
|
* Celluloid#call_chain_id provides UUIDs for calls across actors
|
126
333
|
* Give all thread locals a :celluloid_* prefix
|
127
334
|
|
128
|
-
0.12.4
|
129
|
-
|
335
|
+
## [0.12.4]
|
336
|
+
|
337
|
+
[0.12.4]: https://github.com/celluloid/celluloid/compare/v0.12.3...v0.12.4
|
338
|
+
|
130
339
|
* Bugfix: Clear dead/crashed actors out of links
|
131
340
|
* Bugfix: Exclusive mode was broken
|
132
341
|
* Bugfix: Celluloid::SupervisionGroup#run was broken
|
@@ -136,17 +345,24 @@
|
|
136
345
|
* Use #public_send to dispatch Celluloid methods
|
137
346
|
* #idle_size and #busy_size for Celluloid::PoolManager
|
138
347
|
|
139
|
-
0.12.3
|
140
|
-
|
348
|
+
## [0.12.3]
|
349
|
+
|
350
|
+
[0.12.3]: https://github.com/celluloid/celluloid/compare/v0.12.2...v0.12.3
|
351
|
+
|
352
|
+
|
141
353
|
* Bugfix: Ensure exclusive mode works correctly for per-method case
|
142
354
|
* Bugfix: Exit handlers were not being inherited correctly
|
143
355
|
|
144
|
-
0.12.2
|
145
|
-
|
356
|
+
## [0.12.2]
|
357
|
+
|
358
|
+
[0.12.2]: https://github.com/celluloid/celluloid/compare/v0.12.1...v0.12.2
|
359
|
+
|
146
360
|
* Disable IncidentReporter by default
|
147
361
|
|
148
|
-
0.12.1
|
149
|
-
|
362
|
+
## [0.12.1]
|
363
|
+
|
364
|
+
[0.12.1]: https://github.com/celluloid/celluloid/compare/v0.12.0...v0.12.1
|
365
|
+
|
150
366
|
* Fix bug in unsetting of exclusive mode
|
151
367
|
* New incident report system for providing better debugging reports
|
152
368
|
* Revert BasicObject proxies for now... they are causing problems
|
@@ -156,8 +372,10 @@
|
|
156
372
|
* Remove Celluloid#alive? as it cannot be called in any manner that will ever
|
157
373
|
return anything but true, rendering it useless
|
158
374
|
|
159
|
-
0.12.0
|
160
|
-
|
375
|
+
## [0.12.0]
|
376
|
+
|
377
|
+
[0.12.0]: https://github.com/celluloid/celluloid/compare/v0.11.1...v0.12.0
|
378
|
+
|
161
379
|
* Alternative async syntax: actor.async.method in lieu of actor.method!
|
162
380
|
Original syntax still available but will be removed in Celluloid 1.0
|
163
381
|
* Alternative future syntax: actor.future.method in lieu of future(:method)
|
@@ -180,8 +398,10 @@
|
|
180
398
|
defined by use_mailbox. This is now fixed.
|
181
399
|
* `exclusive` class method without arguments makes the whole actor exclusive
|
182
400
|
|
183
|
-
0.11.1
|
184
|
-
|
401
|
+
## [0.11.1]
|
402
|
+
|
403
|
+
[0.11.1]: https://github.com/celluloid/celluloid/compare/v0.11.0...v0.11.1
|
404
|
+
|
185
405
|
* 'exclusive' class method marks methods as always exclusive and runs them
|
186
406
|
outside of a Fiber (useful if you need more stack than Fibers provide)
|
187
407
|
* Celluloid::PoolManager returns its own class when #class is called, instead
|
@@ -190,8 +410,10 @@
|
|
190
410
|
* Celluloid::Timers extracted into the timers gem, which Celluloid now
|
191
411
|
uses for its own timers
|
192
412
|
|
193
|
-
0.11.0
|
194
|
-
|
413
|
+
## [0.11.0]
|
414
|
+
|
415
|
+
[0.11.0]: https://github.com/celluloid/celluloid/compare/v0.10.0...v0.11.0
|
416
|
+
|
195
417
|
* Celluloid::Application constant permanently removed
|
196
418
|
* Celluloid::Pool removed in favor of Celluloid.pool
|
197
419
|
* Celluloid::Group renamed to Celluloid::SupervisionGroup, old name is
|
@@ -205,22 +427,28 @@
|
|
205
427
|
* abort can now accept a string instead of an exception object and will raise
|
206
428
|
RuntimeError in the caller's context
|
207
429
|
|
208
|
-
0.10.0
|
209
|
-
|
430
|
+
## [0.10.0]
|
431
|
+
|
432
|
+
[0.10.0]: https://github.com/celluloid/celluloid/compare/v0.9.1...v0.10.0
|
433
|
+
|
210
434
|
* Celluloid::Actor.current is now the de facto way to obtain the current actor
|
211
435
|
* #terminate now uses system messages, making termination take priority over
|
212
436
|
other pending methods
|
213
437
|
* #terminate! provides asynchronous termination
|
214
438
|
|
215
|
-
0.9.1
|
216
|
-
|
439
|
+
## [0.9.1]
|
440
|
+
|
441
|
+
[0.9.1]: https://github.com/celluloid/celluloid/compare/v0.9.0...v0.9.1
|
442
|
+
|
217
443
|
* Recurring timers with Celluloid#every(n) { ... }
|
218
444
|
* Obtain UUIDs with Celluloid.uuid
|
219
445
|
* Obtain the number of CPU cores available with Celluloid.cores
|
220
446
|
* Celluloid::Pool defaults to one actor per CPU core max by default
|
221
447
|
|
222
|
-
0.9.0
|
223
|
-
|
448
|
+
## [0.9.0]
|
449
|
+
|
450
|
+
[0.9.0]: https://github.com/celluloid/celluloid/compare/v0.8.0...v0.9.0
|
451
|
+
|
224
452
|
* Celluloid::Pool supervises pools of actors
|
225
453
|
* Graceful shutdown which calls #terminate on all actors
|
226
454
|
* Celluloid::Actor.all returns all running actors
|
@@ -229,8 +457,10 @@
|
|
229
457
|
* Celluloid.exception_handler { |ex| ... } defines a callback for notifying
|
230
458
|
exceptions (for use with Airbrake, exception_notifier, etc.)
|
231
459
|
|
232
|
-
0.8.0
|
233
|
-
|
460
|
+
## [0.8.0]
|
461
|
+
|
462
|
+
[0.8.0]: https://github.com/celluloid/celluloid/compare/v0.7.2...v0.8.0
|
463
|
+
|
234
464
|
* Celluloid::Application is now Celluloid::Group
|
235
465
|
* Futures no longer use a thread unless created with a block
|
236
466
|
* No more future thread-leaks! Future threads auto-terminate now
|
@@ -241,20 +471,26 @@
|
|
241
471
|
* Celluloid::FSMs are no longer actors themselves
|
242
472
|
* Benchmarks using benchmark_suite
|
243
473
|
|
244
|
-
0.7.2
|
245
|
-
|
474
|
+
## [0.7.2]
|
475
|
+
|
476
|
+
[0.7.2]: https://github.com/celluloid/celluloid/compare/v0.7.1...v0.7.2
|
477
|
+
|
246
478
|
* Workaround fiber problems on JRuby 1.6.5.1 in addition to 1.6.5
|
247
479
|
* Fix class displayed when inspecting dead actors
|
248
480
|
|
249
|
-
0.7.1
|
250
|
-
|
481
|
+
## [0.7.1]
|
482
|
+
|
483
|
+
[0.7.1]: https://github.com/celluloid/celluloid/compare/v0.7.0...v0.7.1
|
484
|
+
|
251
485
|
* More examples!
|
252
486
|
* Cancel all pending tasks when actors crash
|
253
487
|
* Log all errors that occur during signaling failures
|
254
488
|
* Work around thread-local issues on rbx (see 52325ecd)
|
255
489
|
|
256
|
-
0.7.0
|
257
|
-
|
490
|
+
## [0.7.0]
|
491
|
+
|
492
|
+
[0.7.0]: https://github.com/celluloid/celluloid/compare/v0.6.2...v0.7.0
|
493
|
+
|
258
494
|
* Celluloid::Task abstraction replaces Celluloid::Fiber
|
259
495
|
* Celluloid#tasks API to introspect on running tasks
|
260
496
|
* Move Celluloid::IO into its own gem, celluloid-io
|
@@ -268,22 +504,28 @@
|
|
268
504
|
* Celluloid.receive and Celluloid#receive now accept an optional timeout
|
269
505
|
* Celluloid::Mailbox#receive now accepts an optional timeout
|
270
506
|
|
271
|
-
0.6.2
|
272
|
-
|
507
|
+
## [0.6.2]
|
508
|
+
|
509
|
+
[0.6.2]: https://github.com/celluloid/celluloid/compare/v0.6.1...v0.6.2
|
510
|
+
|
273
511
|
* List all registered actors with Celluloid::Actor.registered
|
274
512
|
* All logging now handled through Celluloid::Logger
|
275
513
|
* Rescue DeadActorError in Celluloid::ActorProxy#inspect
|
276
514
|
|
277
|
-
0.6.1
|
278
|
-
|
515
|
+
## [0.6.1]
|
516
|
+
|
517
|
+
[0.6.1]: https://github.com/celluloid/celluloid/compare/v0.6.0...v0.6.1
|
518
|
+
|
279
519
|
* Celluloid#links obtains Celluloid::Links for a given actor
|
280
520
|
* The #class method is now proxied to actors
|
281
521
|
* Celluloid::Fiber replaces the Celluloid.fiber and Celluloid.resume_fiber API
|
282
522
|
* Use Thread.mailbox instead of Thread.current.mailbox to obtain the mailbox
|
283
523
|
for the current thread
|
284
524
|
|
285
|
-
0.6.0
|
286
|
-
|
525
|
+
## [0.6.0]
|
526
|
+
|
527
|
+
[0.6.0]: https://github.com/celluloid/celluloid/compare/v0.5.0...v0.6.0
|
528
|
+
|
287
529
|
* Celluloid::Application classes for describing the structure of applications
|
288
530
|
built with Celluloid
|
289
531
|
* Methods of actors can now participate in the actor protocol directly via
|
@@ -296,8 +538,10 @@
|
|
296
538
|
* Add Celluloid.fiber and Celluloid.resume_fiber to allow extension APIs to
|
297
539
|
participate in the Celluloid fiber protocol
|
298
540
|
|
299
|
-
0.5.0
|
300
|
-
|
541
|
+
## [0.5.0]
|
542
|
+
|
543
|
+
[0.5.0]: https://github.com/celluloid/celluloid/compare/v0.4.0...v0.5.0
|
544
|
+
|
301
545
|
* "include Celluloid::Actor" no longer supported. Use "include Celluloid"
|
302
546
|
* New Celluloid::IO module for actors that multiplex IO operations
|
303
547
|
* Major overhaul of Celluloid::Actor internals (see 25e22cc1)
|
@@ -312,8 +556,21 @@
|
|
312
556
|
* Magically skip ahead a few version numbers to impart the magnitude of this
|
313
557
|
release. It's my versioning scheme and I can do what I wanna.
|
314
558
|
|
315
|
-
0.
|
316
|
-
|
559
|
+
## [0.4.0]
|
560
|
+
|
561
|
+
[0.4.0]: https://github.com/celluloid/celluloid/compare/v0.3.0...v0.4.0
|
562
|
+
|
563
|
+
* This version was mysteriously lost to the sands of time
|
564
|
+
|
565
|
+
## [0.3.0]
|
566
|
+
|
567
|
+
[0.3.0]: https://github.com/celluloid/celluloid/compare/v0.2.2...v0.3.0
|
568
|
+
|
569
|
+
* This version was also mysteriously lost to the sands of time
|
570
|
+
|
571
|
+
## [0.2.2]
|
572
|
+
|
573
|
+
[0.2.2]: https://github.com/celluloid/celluloid/compare/v0.2.1...v0.2.2
|
317
574
|
|
318
575
|
* AbortErrors now reraise in caller scope and get a caller-focused backtrace
|
319
576
|
* Log failed async calls instead of just letting them fail silently
|
@@ -321,14 +578,15 @@
|
|
321
578
|
* Actors can now make async calls to themselves
|
322
579
|
* Resolve crashes that occur when sending responses to exited/dead callers
|
323
580
|
|
324
|
-
0.2.1
|
325
|
-
|
581
|
+
## [0.2.1]
|
582
|
+
|
583
|
+
[0.2.1]: https://github.com/celluloid/celluloid/compare/v0.2.0...v0.2.1
|
326
584
|
|
327
585
|
* Hack around a bug of an indeterminate cause (2baba3d2)
|
328
|
-
* COLON!#@!
|
329
586
|
|
330
|
-
0.2.0
|
331
|
-
|
587
|
+
## [0.2.0]
|
588
|
+
|
589
|
+
[0.2.0]: https://github.com/celluloid/celluloid/compare/v0.1.0...v0.2.0
|
332
590
|
|
333
591
|
* Support for future method calls with MyActor#future
|
334
592
|
* Initial signaling support via MyActor#signal and MyActor#wait
|
@@ -337,8 +595,10 @@
|
|
337
595
|
* Add an underscore prefix to all of Celluloid's instance variables so they don't
|
338
596
|
clash with user-defined ones.
|
339
597
|
|
340
|
-
0.1.0
|
341
|
-
|
598
|
+
## [0.1.0]
|
599
|
+
|
600
|
+
[0.1.0]: https://github.com/celluloid/celluloid/compare/v0.0.3...v0.1.0
|
601
|
+
|
342
602
|
* Fiber-based reentrant actors. Requires Ruby 1.9
|
343
603
|
* MyActor.new (where MyActor includes Celluloid::Actor) is now identical to .spawn
|
344
604
|
* Terminate actors with MyActor#terminate
|
@@ -347,10 +607,15 @@
|
|
347
607
|
* Synchronization now based on ConditionVariables instead of Celluloid::Waker
|
348
608
|
* Determine if you're in actor scope with Celluloid.actor?
|
349
609
|
|
350
|
-
0.0.3
|
351
|
-
|
610
|
+
## [0.0.3]
|
611
|
+
|
612
|
+
[0.0.3]: https://github.com/celluloid/celluloid/compare/v0.0.1...v0.0.3
|
613
|
+
|
352
614
|
* Remove self-referential dependency in gemspec
|
353
615
|
|
354
|
-
0.0.1
|
355
|
-
|
616
|
+
## 0.0.1
|
617
|
+
|
356
618
|
* Initial release
|
619
|
+
|
620
|
+
[@ioquatix]: https://github.com/ioquatix
|
621
|
+
[@TiagoCardoso1983]: https://github.com/TiagoCardoso1983
|