celluloid 0.17.4 → 0.18.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGES.md +300 -81
- data/CONDUCT.md +13 -0
- data/CONTRIBUTING.md +39 -0
- data/README.md +54 -155
- 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/actor/system.rb +13 -29
- data/lib/celluloid/actor.rb +27 -17
- 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 -12
- 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/pool.rb +1 -3
- data/lib/celluloid/group/spawner.rb +2 -6
- data/lib/celluloid/group.rb +12 -8
- 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/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/stack.rb +74 -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/evented.rb +13 -5
- data/lib/celluloid/mailbox.rb +22 -9
- 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 +9 -9
- data/lib/celluloid/proxy/async.rb +1 -1
- data/lib/celluloid/proxy/block.rb +2 -2
- data/lib/celluloid/proxy/cell.rb +1 -1
- data/lib/celluloid/proxy/future.rb +2 -4
- data/lib/celluloid/proxy/sync.rb +1 -3
- data/lib/celluloid/rspec.rb +22 -33
- data/lib/celluloid/supervision/configuration/injections.rb +8 -0
- data/lib/celluloid/supervision/configuration/instance.rb +113 -0
- data/lib/celluloid/supervision/configuration.rb +169 -0
- data/lib/celluloid/supervision/constants.rb +123 -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/behavior.rb +89 -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/container.rb +144 -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/supervision.rb +17 -0
- data/lib/celluloid/system_events.rb +11 -6
- data/lib/celluloid/task/fibered.rb +6 -2
- data/lib/celluloid/task/threaded.rb +3 -3
- data/lib/celluloid/task.rb +25 -12
- data/lib/celluloid/test.rb +5 -2
- data/lib/celluloid/thread.rb +0 -2
- data/lib/celluloid/version.rb +1 -1
- data/lib/celluloid.rb +74 -64
- 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 +11 -22
- 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 +30 -30
- 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 +58 -33
- 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 +2 -3
- 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 -16
- data/spec/support/reset_class_variables.rb +5 -1
- data/spec/support/stubbing.rb +1 -1
- metadata +91 -289
- 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/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
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
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,12 +1,155 @@
|
|
1
|
-
0.
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
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
|
+
|
10
153
|
* [#701](https://github.com/celluloid/celluloid/pull/701)
|
11
154
|
Conditions in loose threads loop does not take into account the difference between
|
12
155
|
backtraces from ruby 2.0.0 and greater than. Fixes celluloid/celluloid-io#165.
|
@@ -40,31 +183,41 @@
|
|
40
183
|
* [#666](https://github.com/celluloid/celluloid/pull/666)
|
41
184
|
Don't catch IOError.
|
42
185
|
|
43
|
-
0.17.2 (2015-09-30)
|
44
|
-
|
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
|
+
|
45
190
|
* Revamped test suite, using shared RSpec configuration layer provided by Celluloid itself.
|
46
191
|
* Updated gem dependencies provided by Celluloid::Sync... extraneous gems removed, or marked as development dependencies.
|
47
192
|
* Clean up deprecation notes.
|
48
193
|
|
49
|
-
0.17.1.2 (2015-08-21)
|
50
|
-
|
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
|
+
|
51
198
|
* Fixes to posted markdown content.
|
52
199
|
* Pull in new gem dependencies.
|
53
200
|
|
54
|
-
0.17.1.1 (2015-08-07)
|
55
|
-
|
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
|
204
|
+
|
56
205
|
* Revert "no task to suspend" code from #232.
|
57
206
|
|
58
|
-
0.17.1 (2015-08-06)
|
59
|
-
|
207
|
+
## [0.17.1] (2015-08-06)
|
208
|
+
|
209
|
+
[0.17.1]: https://github.com/celluloid/celluloid/compare/v0.17.0...v0.17.1
|
210
|
+
|
60
211
|
* `Celluloid::ActorSystem` moved to `Celluloid::Actor::System`, and from `celluloid/actor_system.rb` to `celluloid/actor/system.rb`
|
61
212
|
* Added extensible API for defining new SystemEvents, and having them handled... without everyone changing `Actor#handle_system_event`.
|
62
213
|
* Deprecated Task::TerminatedError & Task::TimeoutError... Consolidated in exceptions.rb, inherited from Exceptions vs. StandardError.
|
63
214
|
* General round-up of all "errors" emitted throughout Celluloid, to either be derived from `Celluloid::Error` or `Celluloid::Interruption`.
|
64
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.
|
65
216
|
|
66
|
-
0.17.0 (2015-07-04)
|
67
|
-
|
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
|
+
|
68
221
|
* Fix $CELLULOID_TEST warnings
|
69
222
|
* Massive overhaul of test suite, end-to-end.
|
70
223
|
* Make "Terminating task" log messages debug-level events
|
@@ -94,8 +247,10 @@
|
|
94
247
|
* Implement `Group::Manager` as base for future `Group::Unlocker` and other such systems traversing `ActorSystem#group` regularly.
|
95
248
|
* Reduce number of supervisors instantiated by `ActorSystem` by consolidating them down to `Service::Root` container instances.
|
96
249
|
|
97
|
-
0.16.0 (2014-09-04)
|
98
|
-
|
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
|
+
|
99
254
|
* Factor apart Celluloid::Cell (concurrent objects) from Celluloid::Actor
|
100
255
|
* Introduce Celluloid::ActorSystem as an abstraction around the backend
|
101
256
|
actor implementation (idea borrowed from Akka)
|
@@ -113,16 +268,22 @@
|
|
113
268
|
* Better thread names on JRuby for easier debugging
|
114
269
|
* Thread safety fixes to internal thread pool
|
115
270
|
|
116
|
-
0.15.2 (2013-10-06)
|
117
|
-
|
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
|
+
|
118
275
|
* require 'celluloid/test' for at_exit-free testing
|
119
276
|
|
120
|
-
0.15.1 (2013-09-06)
|
121
|
-
|
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
|
+
|
122
281
|
* Only raise on nested tasks if $CELLULOID_DEBUG is set
|
123
282
|
|
124
|
-
0.15.0 (2013-09-04)
|
125
|
-
|
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
|
+
|
126
287
|
* Remove legacy support for "bang"-method based async invocation
|
127
288
|
* Generic timeout support with Celluloid#timeout
|
128
289
|
* Implement recursion detection for #inspect, avoiding infinite loop bugs
|
@@ -137,8 +298,10 @@
|
|
137
298
|
* Reimplement signal system on top of Conditions
|
138
299
|
* Add metadata like the current method to Celluloid::StackDumps
|
139
300
|
|
140
|
-
0.14.0 (2013-05-07)
|
141
|
-
|
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
|
+
|
142
305
|
* Use a Thread-subclass for Celluloid
|
143
306
|
* Implement actor-local variables
|
144
307
|
* Add helper methods to the class
|
@@ -152,8 +315,10 @@
|
|
152
315
|
* Execute blocks on the sender by default
|
153
316
|
* Fix CPU counter on windows
|
154
317
|
|
155
|
-
0.13.0
|
156
|
-
|
318
|
+
## [0.13.0]
|
319
|
+
|
320
|
+
[0.13.0]: https://github.com/celluloid/celluloid/compare/v0.12.4...v0.13.0
|
321
|
+
|
157
322
|
* API change: Require Celluloid with: require 'celluloid/autostart' to
|
158
323
|
automatically start support actors and configure at_exit handler which
|
159
324
|
automatically terminates all actors.
|
@@ -167,8 +332,10 @@
|
|
167
332
|
* Celluloid#call_chain_id provides UUIDs for calls across actors
|
168
333
|
* Give all thread locals a :celluloid_* prefix
|
169
334
|
|
170
|
-
0.12.4
|
171
|
-
|
335
|
+
## [0.12.4]
|
336
|
+
|
337
|
+
[0.12.4]: https://github.com/celluloid/celluloid/compare/v0.12.3...v0.12.4
|
338
|
+
|
172
339
|
* Bugfix: Clear dead/crashed actors out of links
|
173
340
|
* Bugfix: Exclusive mode was broken
|
174
341
|
* Bugfix: Celluloid::SupervisionGroup#run was broken
|
@@ -178,17 +345,24 @@
|
|
178
345
|
* Use #public_send to dispatch Celluloid methods
|
179
346
|
* #idle_size and #busy_size for Celluloid::PoolManager
|
180
347
|
|
181
|
-
0.12.3
|
182
|
-
|
348
|
+
## [0.12.3]
|
349
|
+
|
350
|
+
[0.12.3]: https://github.com/celluloid/celluloid/compare/v0.12.2...v0.12.3
|
351
|
+
|
352
|
+
|
183
353
|
* Bugfix: Ensure exclusive mode works correctly for per-method case
|
184
354
|
* Bugfix: Exit handlers were not being inherited correctly
|
185
355
|
|
186
|
-
0.12.2
|
187
|
-
|
356
|
+
## [0.12.2]
|
357
|
+
|
358
|
+
[0.12.2]: https://github.com/celluloid/celluloid/compare/v0.12.1...v0.12.2
|
359
|
+
|
188
360
|
* Disable IncidentReporter by default
|
189
361
|
|
190
|
-
0.12.1
|
191
|
-
|
362
|
+
## [0.12.1]
|
363
|
+
|
364
|
+
[0.12.1]: https://github.com/celluloid/celluloid/compare/v0.12.0...v0.12.1
|
365
|
+
|
192
366
|
* Fix bug in unsetting of exclusive mode
|
193
367
|
* New incident report system for providing better debugging reports
|
194
368
|
* Revert BasicObject proxies for now... they are causing problems
|
@@ -198,8 +372,10 @@
|
|
198
372
|
* Remove Celluloid#alive? as it cannot be called in any manner that will ever
|
199
373
|
return anything but true, rendering it useless
|
200
374
|
|
201
|
-
0.12.0
|
202
|
-
|
375
|
+
## [0.12.0]
|
376
|
+
|
377
|
+
[0.12.0]: https://github.com/celluloid/celluloid/compare/v0.11.1...v0.12.0
|
378
|
+
|
203
379
|
* Alternative async syntax: actor.async.method in lieu of actor.method!
|
204
380
|
Original syntax still available but will be removed in Celluloid 1.0
|
205
381
|
* Alternative future syntax: actor.future.method in lieu of future(:method)
|
@@ -222,8 +398,10 @@
|
|
222
398
|
defined by use_mailbox. This is now fixed.
|
223
399
|
* `exclusive` class method without arguments makes the whole actor exclusive
|
224
400
|
|
225
|
-
0.11.1
|
226
|
-
|
401
|
+
## [0.11.1]
|
402
|
+
|
403
|
+
[0.11.1]: https://github.com/celluloid/celluloid/compare/v0.11.0...v0.11.1
|
404
|
+
|
227
405
|
* 'exclusive' class method marks methods as always exclusive and runs them
|
228
406
|
outside of a Fiber (useful if you need more stack than Fibers provide)
|
229
407
|
* Celluloid::PoolManager returns its own class when #class is called, instead
|
@@ -232,8 +410,10 @@
|
|
232
410
|
* Celluloid::Timers extracted into the timers gem, which Celluloid now
|
233
411
|
uses for its own timers
|
234
412
|
|
235
|
-
0.11.0
|
236
|
-
|
413
|
+
## [0.11.0]
|
414
|
+
|
415
|
+
[0.11.0]: https://github.com/celluloid/celluloid/compare/v0.10.0...v0.11.0
|
416
|
+
|
237
417
|
* Celluloid::Application constant permanently removed
|
238
418
|
* Celluloid::Pool removed in favor of Celluloid.pool
|
239
419
|
* Celluloid::Group renamed to Celluloid::SupervisionGroup, old name is
|
@@ -247,22 +427,28 @@
|
|
247
427
|
* abort can now accept a string instead of an exception object and will raise
|
248
428
|
RuntimeError in the caller's context
|
249
429
|
|
250
|
-
0.10.0
|
251
|
-
|
430
|
+
## [0.10.0]
|
431
|
+
|
432
|
+
[0.10.0]: https://github.com/celluloid/celluloid/compare/v0.9.1...v0.10.0
|
433
|
+
|
252
434
|
* Celluloid::Actor.current is now the de facto way to obtain the current actor
|
253
435
|
* #terminate now uses system messages, making termination take priority over
|
254
436
|
other pending methods
|
255
437
|
* #terminate! provides asynchronous termination
|
256
438
|
|
257
|
-
0.9.1
|
258
|
-
|
439
|
+
## [0.9.1]
|
440
|
+
|
441
|
+
[0.9.1]: https://github.com/celluloid/celluloid/compare/v0.9.0...v0.9.1
|
442
|
+
|
259
443
|
* Recurring timers with Celluloid#every(n) { ... }
|
260
444
|
* Obtain UUIDs with Celluloid.uuid
|
261
445
|
* Obtain the number of CPU cores available with Celluloid.cores
|
262
446
|
* Celluloid::Pool defaults to one actor per CPU core max by default
|
263
447
|
|
264
|
-
0.9.0
|
265
|
-
|
448
|
+
## [0.9.0]
|
449
|
+
|
450
|
+
[0.9.0]: https://github.com/celluloid/celluloid/compare/v0.8.0...v0.9.0
|
451
|
+
|
266
452
|
* Celluloid::Pool supervises pools of actors
|
267
453
|
* Graceful shutdown which calls #terminate on all actors
|
268
454
|
* Celluloid::Actor.all returns all running actors
|
@@ -271,8 +457,10 @@
|
|
271
457
|
* Celluloid.exception_handler { |ex| ... } defines a callback for notifying
|
272
458
|
exceptions (for use with Airbrake, exception_notifier, etc.)
|
273
459
|
|
274
|
-
0.8.0
|
275
|
-
|
460
|
+
## [0.8.0]
|
461
|
+
|
462
|
+
[0.8.0]: https://github.com/celluloid/celluloid/compare/v0.7.2...v0.8.0
|
463
|
+
|
276
464
|
* Celluloid::Application is now Celluloid::Group
|
277
465
|
* Futures no longer use a thread unless created with a block
|
278
466
|
* No more future thread-leaks! Future threads auto-terminate now
|
@@ -283,20 +471,26 @@
|
|
283
471
|
* Celluloid::FSMs are no longer actors themselves
|
284
472
|
* Benchmarks using benchmark_suite
|
285
473
|
|
286
|
-
0.7.2
|
287
|
-
|
474
|
+
## [0.7.2]
|
475
|
+
|
476
|
+
[0.7.2]: https://github.com/celluloid/celluloid/compare/v0.7.1...v0.7.2
|
477
|
+
|
288
478
|
* Workaround fiber problems on JRuby 1.6.5.1 in addition to 1.6.5
|
289
479
|
* Fix class displayed when inspecting dead actors
|
290
480
|
|
291
|
-
0.7.1
|
292
|
-
|
481
|
+
## [0.7.1]
|
482
|
+
|
483
|
+
[0.7.1]: https://github.com/celluloid/celluloid/compare/v0.7.0...v0.7.1
|
484
|
+
|
293
485
|
* More examples!
|
294
486
|
* Cancel all pending tasks when actors crash
|
295
487
|
* Log all errors that occur during signaling failures
|
296
488
|
* Work around thread-local issues on rbx (see 52325ecd)
|
297
489
|
|
298
|
-
0.7.0
|
299
|
-
|
490
|
+
## [0.7.0]
|
491
|
+
|
492
|
+
[0.7.0]: https://github.com/celluloid/celluloid/compare/v0.6.2...v0.7.0
|
493
|
+
|
300
494
|
* Celluloid::Task abstraction replaces Celluloid::Fiber
|
301
495
|
* Celluloid#tasks API to introspect on running tasks
|
302
496
|
* Move Celluloid::IO into its own gem, celluloid-io
|
@@ -310,22 +504,28 @@
|
|
310
504
|
* Celluloid.receive and Celluloid#receive now accept an optional timeout
|
311
505
|
* Celluloid::Mailbox#receive now accepts an optional timeout
|
312
506
|
|
313
|
-
0.6.2
|
314
|
-
|
507
|
+
## [0.6.2]
|
508
|
+
|
509
|
+
[0.6.2]: https://github.com/celluloid/celluloid/compare/v0.6.1...v0.6.2
|
510
|
+
|
315
511
|
* List all registered actors with Celluloid::Actor.registered
|
316
512
|
* All logging now handled through Celluloid::Logger
|
317
513
|
* Rescue DeadActorError in Celluloid::ActorProxy#inspect
|
318
514
|
|
319
|
-
0.6.1
|
320
|
-
|
515
|
+
## [0.6.1]
|
516
|
+
|
517
|
+
[0.6.1]: https://github.com/celluloid/celluloid/compare/v0.6.0...v0.6.1
|
518
|
+
|
321
519
|
* Celluloid#links obtains Celluloid::Links for a given actor
|
322
520
|
* The #class method is now proxied to actors
|
323
521
|
* Celluloid::Fiber replaces the Celluloid.fiber and Celluloid.resume_fiber API
|
324
522
|
* Use Thread.mailbox instead of Thread.current.mailbox to obtain the mailbox
|
325
523
|
for the current thread
|
326
524
|
|
327
|
-
0.6.0
|
328
|
-
|
525
|
+
## [0.6.0]
|
526
|
+
|
527
|
+
[0.6.0]: https://github.com/celluloid/celluloid/compare/v0.5.0...v0.6.0
|
528
|
+
|
329
529
|
* Celluloid::Application classes for describing the structure of applications
|
330
530
|
built with Celluloid
|
331
531
|
* Methods of actors can now participate in the actor protocol directly via
|
@@ -338,8 +538,10 @@
|
|
338
538
|
* Add Celluloid.fiber and Celluloid.resume_fiber to allow extension APIs to
|
339
539
|
participate in the Celluloid fiber protocol
|
340
540
|
|
341
|
-
0.5.0
|
342
|
-
|
541
|
+
## [0.5.0]
|
542
|
+
|
543
|
+
[0.5.0]: https://github.com/celluloid/celluloid/compare/v0.4.0...v0.5.0
|
544
|
+
|
343
545
|
* "include Celluloid::Actor" no longer supported. Use "include Celluloid"
|
344
546
|
* New Celluloid::IO module for actors that multiplex IO operations
|
345
547
|
* Major overhaul of Celluloid::Actor internals (see 25e22cc1)
|
@@ -354,8 +556,21 @@
|
|
354
556
|
* Magically skip ahead a few version numbers to impart the magnitude of this
|
355
557
|
release. It's my versioning scheme and I can do what I wanna.
|
356
558
|
|
357
|
-
0.
|
358
|
-
|
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
|
359
574
|
|
360
575
|
* AbortErrors now reraise in caller scope and get a caller-focused backtrace
|
361
576
|
* Log failed async calls instead of just letting them fail silently
|
@@ -363,14 +578,15 @@
|
|
363
578
|
* Actors can now make async calls to themselves
|
364
579
|
* Resolve crashes that occur when sending responses to exited/dead callers
|
365
580
|
|
366
|
-
0.2.1
|
367
|
-
|
581
|
+
## [0.2.1]
|
582
|
+
|
583
|
+
[0.2.1]: https://github.com/celluloid/celluloid/compare/v0.2.0...v0.2.1
|
368
584
|
|
369
585
|
* Hack around a bug of an indeterminate cause (2baba3d2)
|
370
|
-
* COLON!#@!
|
371
586
|
|
372
|
-
0.2.0
|
373
|
-
|
587
|
+
## [0.2.0]
|
588
|
+
|
589
|
+
[0.2.0]: https://github.com/celluloid/celluloid/compare/v0.1.0...v0.2.0
|
374
590
|
|
375
591
|
* Support for future method calls with MyActor#future
|
376
592
|
* Initial signaling support via MyActor#signal and MyActor#wait
|
@@ -379,8 +595,10 @@
|
|
379
595
|
* Add an underscore prefix to all of Celluloid's instance variables so they don't
|
380
596
|
clash with user-defined ones.
|
381
597
|
|
382
|
-
0.1.0
|
383
|
-
|
598
|
+
## [0.1.0]
|
599
|
+
|
600
|
+
[0.1.0]: https://github.com/celluloid/celluloid/compare/v0.0.3...v0.1.0
|
601
|
+
|
384
602
|
* Fiber-based reentrant actors. Requires Ruby 1.9
|
385
603
|
* MyActor.new (where MyActor includes Celluloid::Actor) is now identical to .spawn
|
386
604
|
* Terminate actors with MyActor#terminate
|
@@ -389,14 +607,15 @@
|
|
389
607
|
* Synchronization now based on ConditionVariables instead of Celluloid::Waker
|
390
608
|
* Determine if you're in actor scope with Celluloid.actor?
|
391
609
|
|
392
|
-
0.0.3
|
393
|
-
|
610
|
+
## [0.0.3]
|
611
|
+
|
612
|
+
[0.0.3]: https://github.com/celluloid/celluloid/compare/v0.0.1...v0.0.3
|
613
|
+
|
394
614
|
* Remove self-referential dependency in gemspec
|
395
615
|
|
396
|
-
0.0.1
|
397
|
-
|
616
|
+
## 0.0.1
|
617
|
+
|
398
618
|
* Initial release
|
399
619
|
|
400
|
-
[@digitalextremist]: https://github.com/digitalextremist
|
401
620
|
[@ioquatix]: https://github.com/ioquatix
|
402
621
|
[@TiagoCardoso1983]: https://github.com/TiagoCardoso1983
|
data/CONDUCT.md
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
# Contributor Code of Conduct
|
2
|
+
|
3
|
+
As contributors and maintainers of this project, we pledge to respect all people who contribute through reporting issues, posting feature requests, updating documentation, submitting pull requests or patches, and other activities.
|
4
|
+
|
5
|
+
We are committed to making participation in this project a harassment-free experience for everyone, regardless of level of experience, gender, gender identity and expression, sexual orientation, disability, personal appearance, body size, race, age, or religion.
|
6
|
+
|
7
|
+
Examples of unacceptable behavior by participants include the use of sexual language or imagery, derogatory comments or personal attacks, trolling, public or private harassment, insults, or other unprofessional conduct.
|
8
|
+
|
9
|
+
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct. Project maintainers who do not follow the Code of Conduct may be removed from the project team.
|
10
|
+
|
11
|
+
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by opening an issue or contacting one or more of the project maintainers.
|
12
|
+
|
13
|
+
This Code of Conduct is adapted from the [Contributor Covenant](http:contributor-covenant.org), version 1.0.0, available at [http://contributor-covenant.org/version/1/0/0/](http://contributor-covenant.org/version/1/0/0/)
|
data/CONTRIBUTING.md
ADDED
@@ -0,0 +1,39 @@
|
|
1
|
+
# Contribution Guidelines
|
2
|
+
|
3
|
+
If you are seeking support, or for discussions about Celluloid, you can use [the mailing list](http://groups.google.com/group/celluloid-ruby) or the IRC channel, #celluloid on freenode.
|
4
|
+
|
5
|
+
If you encounter an issue with Celluloid itself, you should go through the following checklist:
|
6
|
+
|
7
|
+
* Is this a known bug or are you falling into a common trap? Check the [Gotchas wiki page](https://github.com/celluloid/celluloid/wiki/Gotchas).
|
8
|
+
* Is there already an issue filed which looks like your issue? Check the [issue tracker](https://github.com/celluloid/celluloid/issues).
|
9
|
+
* Is the problem present in the latest released version of Celluloid? Upgrade and check!
|
10
|
+
* Is the problem present on the master branch of Celluloid? [Run pre-release](#running-pre-release-celluloid) from source control and check!
|
11
|
+
|
12
|
+
If you don't get anywhere with this checklist, please feel free to [file a bug report](#filing-a-bug-report).
|
13
|
+
|
14
|
+
## Running pre-release Celluloid
|
15
|
+
|
16
|
+
If you encounter a bug, it's entirely possible that it has already been fixed but not yet included in a released version. You can establish this by trying to run your application with a pre-release version of Celluloid direct from source control. You can do this by modifying your application's Gemfile as follows:
|
17
|
+
|
18
|
+
```ruby
|
19
|
+
gem 'celluloid', github: 'celluloid', submodules: true
|
20
|
+
```
|
21
|
+
|
22
|
+
If it is suggested to you that you try a different branch, add `branch: 'somebranch'`.
|
23
|
+
|
24
|
+
If the problem is resolved, feel free to voice your desire for a new release of Celluloid on IRC (`irc.freenode.net/#celluloid`).
|
25
|
+
|
26
|
+
If it persists, you should consider [filing a bug report](#filing-a-bug-report).
|
27
|
+
|
28
|
+
## Filing a bug report
|
29
|
+
|
30
|
+
* Bug reports should be filed on the [GitHub issue tracker](https://github.com/celluloid/celluloid/issues). Bug reports should contain the following things:
|
31
|
+
* A sensible subject that helps quickly identify the issue.
|
32
|
+
* Full steps to reproduce the issue, including minimal reproduction code. A minimal reproduction means only what is necessary to display the problem and nothing more. This is perhaps the most important thing, don't skip it!
|
33
|
+
* Output from a reproduction.
|
34
|
+
* Full references for version numbers (of Celluloid, dependencies, Ruby, Operating System, etc). One easy way to do this is to post your Gemfile.lock, though you will still need to tell us what version of Ruby is in use.
|
35
|
+
* See: [Triage Process](https://github.com/celluloid/celluloid/wiki/Triage-Process)
|
36
|
+
* Some more guidelines on filing good bug reports:
|
37
|
+
* http://www.chiark.greenend.org.uk/~sgtatham/bugs.html
|
38
|
+
* http://itscommonsensestupid.blogspot.com/2008/07/tips-to-write-good-bug-report.html
|
39
|
+
* http://timheuer.com/blog/archive/2011/10/12/anatomy-of-a-good-bug-report.aspx
|