celluloid 0.17.2 → 0.18.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/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
|