celluloid-zmq 0.13.0 → 0.14.0.pre

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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 5aa7a33713e31f7681439f95e04c5acac2a252bd
4
+ data.tar.gz: 2988a4aa5fc2c8742be28ab8387d6894637ae778
5
+ SHA512:
6
+ metadata.gz: c94c66cb85ae6f779dafa3673584dbfe36a722484b2bd8af93a7d6562d6eb9ec7a95c3be92ca84c5b967705ccd829ee61d014ff09dbbc8725ccb711896a0a6ff
7
+ data.tar.gz: c3d693c00a4201b8a0996726df5c7be1a9cbd25209072384c111b6d9574b8018d2bdd848612abc7cdf037b407e8ef4c911e00d1cfab2900d147f3fe41a28bda9
data/Gemfile CHANGED
@@ -1,7 +1,7 @@
1
1
  source 'http://rubygems.org'
2
2
 
3
- #gem 'celluloid', :git => 'git://github.com/celluloid/celluloid'
4
- #gem 'celluloid-io', :git => 'git://github.com/celluloid/celluloid-io'
3
+ gem 'coveralls', require: false
4
+ gem 'celluloid', github: 'celluloid/celluloid', branch: 'master'
5
5
 
6
6
  # Specify your gem's dependencies in celluloid-zmq.gemspec
7
7
  gemspec
data/README.md CHANGED
@@ -2,8 +2,8 @@
2
2
  =================
3
3
  [![Gem Version](https://badge.fury.io/rb/celluloid-zmq.png)](http://rubygems.org/gems/celluloid-zmq)
4
4
  [![Build Status](https://secure.travis-ci.org/celluloid/celluloid-zmq.png?branch=master)](http://travis-ci.org/celluloid/celluloid-zmq)
5
- [![Dependency Status](https://gemnasium.com/celluloid/celluloid-zmq.png)](https://gemnasium.com/celluloid/celluloid-zmq)
6
5
  [![Code Climate](https://codeclimate.com/github/celluloid/celluloid-zmq.png)](https://codeclimate.com/github/celluloid/celluloid-zmq)
6
+ [![Coverage Status](https://coveralls.io/repos/celluloid/celluloid-zmq/badge.png?branch=master)](https://coveralls.io/r/celluloid/celluloid-zmq)
7
7
 
8
8
  Celluloid::ZMQ provides Celluloid actors that can interact with [0MQ sockets][0mq].
9
9
  Underneath, it's built on the [ffi-rzmq][ffi-rzmq] library. Celluloid::ZMQ was
@@ -61,7 +61,7 @@ class Server
61
61
  end
62
62
 
63
63
  def run
64
- loop { handle_message! @socket.read }
64
+ loop { async.handle_message @socket.read }
65
65
  end
66
66
 
67
67
  def handle_message(message)
@@ -95,8 +95,10 @@ addr = 'tcp://127.0.0.1:3435'
95
95
  server = Server.new(addr)
96
96
  client = Client.new(addr)
97
97
 
98
- server.run!
98
+ server.async.run
99
99
  client.write('hi')
100
+
101
+ sleep
100
102
  ```
101
103
 
102
104
  Copyright
@@ -12,7 +12,6 @@ Gem::Specification.new do |gem|
12
12
  gem.version = Celluloid::ZMQ::VERSION
13
13
 
14
14
  gem.add_dependency "celluloid", ">= 0.13.0"
15
- gem.add_dependency "celluloid-io", ">= 0.13.0"
16
15
  gem.add_dependency "ffi"
17
16
  gem.add_dependency "ffi-rzmq"
18
17
 
@@ -0,0 +1,70 @@
1
+ require 'celluloid/zmq'
2
+
3
+ class PublishSubscribe
4
+ include Celluloid::ZMQ
5
+
6
+ def run
7
+ link = "tcp://127.0.0.1:5555"
8
+
9
+ s1 = PubSocket.new
10
+ s2 = SubSocket.new
11
+ s3 = SubSocket.new
12
+ s4 = SubSocket.new
13
+ s5 = SubSocket.new
14
+
15
+ s1.linger = 100
16
+ s2.subscribe('') # receive all
17
+ s3.subscribe('animals') # receive any starting with this string
18
+ s4.subscribe('animals.dog')
19
+ s5.subscribe('animals.cat')
20
+
21
+ s1.bind(link)
22
+ s2.connect(link)
23
+ s3.connect(link)
24
+ s4.connect(link)
25
+ s5.connect(link)
26
+
27
+ sleep 1
28
+
29
+ topic = "animals.dog"
30
+ payload = "Animal crackers!"
31
+
32
+ s1.identity = "publisher-A"
33
+ puts "sending"
34
+ # use the new multi-part messaging support to
35
+ # automatically separate the topic from the body
36
+ s1.write(topic, payload, s1.identity)
37
+
38
+ topic = ''
39
+ s2.read(topic)
40
+
41
+ body = ''
42
+ s2.read(body) if s2.more_parts?
43
+
44
+ identity = ''
45
+ s2.read(identity) if s2.more_parts?
46
+ puts "s2 received topic [#{topic}], body [#{body}], identity [#{identity}]"
47
+
48
+
49
+ topic = ''
50
+ s3.read(topic)
51
+
52
+ body = ''
53
+ s3.read(body) if s3.more_parts?
54
+ puts "s3 received topic [#{topic}], body [#{body}]"
55
+
56
+ topic = ''
57
+ s4.read(topic)
58
+
59
+ body = ''
60
+ s4.read(body) if s4.more_parts?
61
+ puts "s4 received topic [#{topic}], body [#{body}]"
62
+
63
+ s5_string = ''
64
+ s5.read(s5_string)
65
+
66
+ # we will never get here
67
+ end
68
+ end
69
+
70
+ PublishSubscribe.new.run
data/lib/celluloid/zmq.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  require 'ffi-rzmq'
2
2
 
3
- require 'celluloid/io'
3
+ require 'celluloid'
4
4
  require 'celluloid/zmq/mailbox'
5
5
  require 'celluloid/zmq/reactor'
6
6
  require 'celluloid/zmq/sockets'
@@ -31,9 +31,33 @@ module Celluloid
31
31
  end
32
32
  end
33
33
 
34
- extend Forwardable
34
+ # Is this a Celluloid::ZMQ evented actor?
35
+ def self.evented?
36
+ actor = Thread.current[:celluloid_actor]
37
+ actor.mailbox.is_a?(Celluloid::ZMQ::Mailbox)
38
+ end
39
+
40
+ def wait_readable(socket)
41
+ if ZMQ.evented?
42
+ mailbox = Thread.current[:celluloid_mailbox]
43
+ mailbox.reactor.wait_readable(socket)
44
+ else
45
+ raise ArgumentError, "unable to wait for ZMQ sockets outside the event loop"
46
+ end
47
+ nil
48
+ end
49
+ module_function :wait_readable
50
+
51
+ def wait_writable(socket)
52
+ if ZMQ.evented?
53
+ mailbox = Thread.current[:celluloid_mailbox]
54
+ mailbox.reactor.wait_writable(socket)
55
+ else
56
+ raise ArgumentError, "unable to wait for ZMQ sockets outside the event loop"
57
+ end
58
+ nil
59
+ end
60
+ module_function :wait_writable
35
61
 
36
- # Wait for the given IO object to become readable/writeable
37
- def_delegators 'current_actor.mailbox.reactor', :wait_readable, :wait_writeable
38
62
  end
39
63
  end
@@ -1,11 +1,9 @@
1
- require 'celluloid/io'
2
-
3
1
  module Celluloid
4
2
  module ZMQ
5
3
  # Replacement mailbox for Celluloid::ZMQ actors
6
- class Mailbox < Celluloid::IO::Mailbox
4
+ class Mailbox < Celluloid::EventedMailbox
7
5
  def initialize
8
- super Celluloid::ZMQ::Reactor.new
6
+ super(Reactor)
9
7
  end
10
8
  end
11
9
  end
@@ -25,8 +25,8 @@ module Celluloid
25
25
  monitor_zmq socket, @readers, ::ZMQ::POLLIN
26
26
  end
27
27
 
28
- # Wait for the given ZMQ socket to become writeable
29
- def wait_writeable(socket)
28
+ # Wait for the given ZMQ socket to become writable
29
+ def wait_writable(socket)
30
30
  monitor_zmq socket, @writers, ::ZMQ::POLLOUT
31
31
  end
32
32
 
@@ -25,6 +25,14 @@ module Celluloid
25
25
  end
26
26
  end
27
27
 
28
+ def identity=(value)
29
+ @socket.identity = value
30
+ end
31
+
32
+ def identity
33
+ @socket.identity
34
+ end
35
+
28
36
  # Bind to the given 0MQ address
29
37
  # Address should be in the form: tcp://1.2.3.4:5678/
30
38
  def bind(addr)
@@ -38,15 +46,6 @@ module Celluloid
38
46
  @socket.close
39
47
  end
40
48
 
41
- # Does the 0MQ socket support evented operation?
42
- def evented?
43
- actor = Thread.current[:celluloid_actor]
44
- return unless actor
45
-
46
- mailbox = actor.mailbox
47
- mailbox.is_a?(Celluloid::IO::Mailbox) && mailbox.reactor.is_a?(Celluloid::ZMQ::Reactor)
48
- end
49
-
50
49
  # Hide ffi-rzmq internals
51
50
  alias_method :inspect, :to_s
52
51
  end
@@ -68,7 +67,7 @@ module Celluloid
68
67
 
69
68
  # Read a message from the socket
70
69
  def read(buffer = '')
71
- Celluloid.current_actor.wait_readable(@socket) if evented?
70
+ ZMQ.wait_readable(@socket) if ZMQ.evented?
72
71
 
73
72
  unless ::ZMQ::Util.resultcode_ok? @socket.recv_string buffer
74
73
  raise IOError, "error receiving ZMQ string: #{::ZMQ::Util.error_string}"
@@ -1,5 +1,5 @@
1
1
  module Celluloid
2
2
  module ZMQ
3
- VERSION = "0.13.0"
3
+ VERSION = "0.14.0.pre"
4
4
  end
5
5
  end
@@ -0,0 +1,6 @@
1
+ require 'spec_helper'
2
+ require 'celluloid/rspec'
3
+
4
+ describe Celluloid::ZMQ::Mailbox do
5
+ it_behaves_like "a Celluloid Mailbox"
6
+ end
data/spec/spec_helper.rb CHANGED
@@ -1,3 +1,6 @@
1
+ require 'coveralls'
2
+ Coveralls.wear!
3
+
1
4
  require 'bundler/setup'
2
5
  require 'celluloid/zmq'
3
6
 
metadata CHANGED
@@ -1,110 +1,83 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: celluloid-zmq
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.13.0
5
- prerelease:
4
+ version: 0.14.0.pre
6
5
  platform: ruby
7
6
  authors:
8
7
  - Tony Arcieri
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-03-19 00:00:00.000000000 Z
11
+ date: 2013-05-01 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: celluloid
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - '>='
20
18
  - !ruby/object:Gem::Version
21
19
  version: 0.13.0
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
28
- - !ruby/object:Gem::Version
29
- version: 0.13.0
30
- - !ruby/object:Gem::Dependency
31
- name: celluloid-io
32
- requirement: !ruby/object:Gem::Requirement
33
- none: false
34
- requirements:
35
- - - ! '>='
36
- - !ruby/object:Gem::Version
37
- version: 0.13.0
38
- type: :runtime
39
- prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - ! '>='
24
+ - - '>='
44
25
  - !ruby/object:Gem::Version
45
26
  version: 0.13.0
46
27
  - !ruby/object:Gem::Dependency
47
28
  name: ffi
48
29
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
30
  requirements:
51
- - - ! '>='
31
+ - - '>='
52
32
  - !ruby/object:Gem::Version
53
33
  version: '0'
54
34
  type: :runtime
55
35
  prerelease: false
56
36
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
37
  requirements:
59
- - - ! '>='
38
+ - - '>='
60
39
  - !ruby/object:Gem::Version
61
40
  version: '0'
62
41
  - !ruby/object:Gem::Dependency
63
42
  name: ffi-rzmq
64
43
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
44
  requirements:
67
- - - ! '>='
45
+ - - '>='
68
46
  - !ruby/object:Gem::Version
69
47
  version: '0'
70
48
  type: :runtime
71
49
  prerelease: false
72
50
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
51
  requirements:
75
- - - ! '>='
52
+ - - '>='
76
53
  - !ruby/object:Gem::Version
77
54
  version: '0'
78
55
  - !ruby/object:Gem::Dependency
79
56
  name: rake
80
57
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
58
  requirements:
83
- - - ! '>='
59
+ - - '>='
84
60
  - !ruby/object:Gem::Version
85
61
  version: '0'
86
62
  type: :development
87
63
  prerelease: false
88
64
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
65
  requirements:
91
- - - ! '>='
66
+ - - '>='
92
67
  - !ruby/object:Gem::Version
93
68
  version: '0'
94
69
  - !ruby/object:Gem::Dependency
95
70
  name: rspec
96
71
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
72
  requirements:
99
- - - ! '>='
73
+ - - '>='
100
74
  - !ruby/object:Gem::Version
101
75
  version: '0'
102
76
  type: :development
103
77
  prerelease: false
104
78
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
79
  requirements:
107
- - - ! '>='
80
+ - - '>='
108
81
  - !ruby/object:Gem::Version
109
82
  version: '0'
110
83
  description: Celluloid bindings to the ffi-rzmq library
@@ -116,6 +89,7 @@ extra_rdoc_files: []
116
89
  files:
117
90
  - celluloid-zmq.gemspec
118
91
  - CHANGES.md
92
+ - examples/publish_subscribe.rb
119
93
  - Gemfile
120
94
  - lib/celluloid/zmq/mailbox.rb
121
95
  - lib/celluloid/zmq/reactor.rb
@@ -124,41 +98,39 @@ files:
124
98
  - lib/celluloid/zmq/waker.rb
125
99
  - lib/celluloid/zmq.rb
126
100
  - LICENSE.txt
127
- - log/test.log
128
101
  - logo.png
129
- - pkg/celluloid-zmq-0.13.0.pre.gem
130
102
  - Rakefile
131
103
  - README.md
132
104
  - spec/celluloid/zmq/actor_spec.rb
105
+ - spec/celluloid/zmq/mailbox_spec.rb
133
106
  - spec/spec_helper.rb
134
107
  - .gitignore
135
108
  homepage: http://github.com/celluloid/celluloid-zmq
136
109
  licenses: []
110
+ metadata: {}
137
111
  post_install_message:
138
112
  rdoc_options: []
139
113
  require_paths:
140
114
  - lib
141
115
  required_ruby_version: !ruby/object:Gem::Requirement
142
- none: false
143
116
  requirements:
144
- - - ! '>='
117
+ - - '>='
145
118
  - !ruby/object:Gem::Version
146
119
  version: '0'
147
120
  required_rubygems_version: !ruby/object:Gem::Requirement
148
- none: false
149
121
  requirements:
150
- - - ! '>='
122
+ - - '>'
151
123
  - !ruby/object:Gem::Version
152
- version: '0'
124
+ version: 1.3.1
153
125
  requirements: []
154
126
  rubyforge_project:
155
- rubygems_version: 1.8.23
127
+ rubygems_version: 2.0.3
156
128
  signing_key:
157
- specification_version: 3
129
+ specification_version: 4
158
130
  summary: Celluloid::ZMQ provides concurrent Celluloid actors that can listen for 0MQ
159
131
  events
160
132
  test_files:
161
133
  - spec/celluloid/zmq/actor_spec.rb
134
+ - spec/celluloid/zmq/mailbox_spec.rb
162
135
  - spec/spec_helper.rb
163
136
  - .gitignore
164
- has_rdoc:
data/log/test.log DELETED
@@ -1,198 +0,0 @@
1
- E, [2012-12-19T01:01:20.993664 #85808] ERROR -- : #<Class:0x007f9971a06ee8> crashed!
2
- ExampleCrash: the spec purposely crashed me :(
3
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:34:in `crash'
4
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
5
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
6
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
7
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
8
- E, [2012-12-19T01:01:20.998087 #85808] ERROR -- : #<Class:0x007f99719f4dd8> crashed!
9
- ExampleCrash: the spec purposely crashed me :(
10
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:34:in `crash'
11
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
12
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
13
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
14
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
15
- E, [2012-12-19T01:01:21.054224 #85808] ERROR -- : #<Class:0x007f9971aab448> crashed!
16
- TypeError: Exception object/String expected, but Fixnum received
17
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid.rb:314:in `abort'
18
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:44:in `crash_with_abort_raw'
19
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
20
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
21
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
22
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
23
- E, [2012-12-19T01:01:21.122093 #85808] ERROR -- : #<Class:0x007f997194b7d8> crashed!
24
- ExampleCrash: the spec purposely crashed me :(
25
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:34:in `crash'
26
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
27
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
28
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
29
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
30
- E, [2012-12-19T01:01:21.233064 #85808] ERROR -- : #<Class:0x007f9971acf528> crashed!
31
- ExampleCrash: the spec purposely crashed me :(
32
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:34:in `crash'
33
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
34
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
35
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
36
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
37
- E, [2012-12-19T01:01:21.356557 #85808] ERROR -- : #<Class:0x007f9971b96e98> crashed!
38
- ExampleCrash: the spec purposely crashed me :(
39
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:34:in `crash'
40
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
41
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
42
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
43
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
44
- D, [2012-12-19T01:01:25.445824 #85808] DEBUG -- : Terminating 67 actors...
45
- E, [2012-12-19T01:01:25.467635 #85808] ERROR -- : #<Class:0x007f9971b96c18>: CLEANUP CRASHED!
46
- Celluloid::MailboxError: dead recipient
47
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-io-b6acbc2ceaf2/lib/celluloid/io/mailbox.rb:32:in `rescue in <<'
48
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-io-b6acbc2ceaf2/lib/celluloid/io/mailbox.rb:35:in `<<'
49
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/links.rb:32:in `block in send_event'
50
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/links.rb:27:in `block in each'
51
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/links.rb:27:in `each'
52
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/links.rb:27:in `each'
53
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/links.rb:32:in `send_event'
54
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:401:in `cleanup'
55
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:373:in `shutdown'
56
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:207:in `run'
57
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:184:in `block in initialize'
58
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/thread_handle.rb:17:in `block in initialize'
59
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/internal_pool.rb:55:in `call'
60
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/internal_pool.rb:55:in `block in create'
61
- D, [2012-12-19T01:01:25.474351 #85808] DEBUG -- : Shutdown completed cleanly
62
- E, [2012-12-19T01:01:38.130683 #85833] ERROR -- : #<Class:0x007fe449ad5ea0> crashed!
63
- ExampleCrash: the spec purposely crashed me :(
64
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:34:in `crash'
65
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
66
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
67
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
68
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
69
- E, [2012-12-19T01:01:38.134696 #85833] ERROR -- : #<Class:0x007fe449ac56e0> crashed!
70
- ExampleCrash: the spec purposely crashed me :(
71
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:34:in `crash'
72
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
73
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
74
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
75
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
76
- E, [2012-12-19T01:01:38.191106 #85833] ERROR -- : #<Class:0x007fe449b6c738> crashed!
77
- TypeError: Exception object/String expected, but Fixnum received
78
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid.rb:314:in `abort'
79
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:44:in `crash_with_abort_raw'
80
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
81
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
82
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
83
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
84
- E, [2012-12-19T01:01:38.258936 #85833] ERROR -- : #<Class:0x007fe449a4a530> crashed!
85
- ExampleCrash: the spec purposely crashed me :(
86
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:34:in `crash'
87
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
88
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
89
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
90
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
91
- E, [2012-12-19T01:01:38.370524 #85833] ERROR -- : #<Class:0x007fe449b79780> crashed!
92
- ExampleCrash: the spec purposely crashed me :(
93
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:34:in `crash'
94
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
95
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
96
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
97
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
98
- E, [2012-12-19T01:01:38.494373 #85833] ERROR -- : #<Class:0x007fe449c58ea8> crashed!
99
- ExampleCrash: the spec purposely crashed me :(
100
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/spec/support/example_actor_class.rb:34:in `crash'
101
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `public_send'
102
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/calls.rb:26:in `dispatch'
103
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:327:in `block in handle_message'
104
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/tasks/task_fiber.rb:24:in `block in initialize'
105
- D, [2012-12-19T01:01:42.580985 #85833] DEBUG -- : Terminating 67 actors...
106
- E, [2012-12-19T01:01:42.605059 #85833] ERROR -- : #<Class:0x007fe449ad65f8>: CLEANUP CRASHED!
107
- Celluloid::MailboxError: dead recipient
108
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-io-b6acbc2ceaf2/lib/celluloid/io/mailbox.rb:32:in `rescue in <<'
109
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-io-b6acbc2ceaf2/lib/celluloid/io/mailbox.rb:35:in `<<'
110
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/links.rb:32:in `block in send_event'
111
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/links.rb:27:in `block in each'
112
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/links.rb:27:in `each'
113
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/links.rb:27:in `each'
114
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/links.rb:32:in `send_event'
115
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:401:in `cleanup'
116
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:373:in `shutdown'
117
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:207:in `run'
118
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/actor.rb:184:in `block in initialize'
119
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/thread_handle.rb:17:in `block in initialize'
120
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/internal_pool.rb:55:in `call'
121
- /Users/tony/.rvm/gems/ruby-1.9.3-p327/bundler/gems/celluloid-b3573aca7649/lib/celluloid/internal_pool.rb:55:in `block in create'
122
- D, [2012-12-19T01:01:42.610047 #85833] DEBUG -- : Shutdown completed cleanly
123
- E, [2013-02-27T23:29:42.558169 #64860] ERROR -- : #<Class:0x007fe15a0df848> crashed!
124
- ExampleCrash: the spec purposely crashed me :(
125
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/spec/support/example_actor_class.rb:30:in `crash'
126
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `public_send'
127
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `dispatch'
128
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:60:in `dispatch'
129
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/actor.rb:328:in `block in handle_message'
130
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/tasks/task_fiber.rb:28:in `block in initialize'
131
- E, [2013-02-27T23:29:42.567584 #64860] ERROR -- : ExampleReceiver crashed!
132
- ExampleCrash: the spec purposely crashed me :(
133
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/spec/support/actor_examples.rb:199:in `receiver_method'
134
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `public_send'
135
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `dispatch'
136
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:60:in `dispatch'
137
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/actor.rb:328:in `block in handle_message'
138
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/tasks/task_fiber.rb:28:in `block in initialize'
139
- E, [2013-02-27T23:29:42.567914 #64860] ERROR -- : ExampleCaller crashed!
140
- ExampleCrash: the spec purposely crashed me :(
141
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/spec/support/actor_examples.rb:199:in `receiver_method'
142
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `public_send'
143
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `dispatch'
144
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:60:in `dispatch'
145
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/actor.rb:328:in `block in handle_message'
146
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/tasks/task_fiber.rb:28:in `block in initialize'
147
- (celluloid):0:in `remote procedure call'
148
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/actor.rb:70:in `call'
149
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/legacy.rb:14:in `method_missing'
150
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/spec/support/actor_examples.rb:207:in `caller_method'
151
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `public_send'
152
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `dispatch'
153
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:60:in `dispatch'
154
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/actor.rb:328:in `block in handle_message'
155
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/tasks/task_fiber.rb:28:in `block in initialize'
156
- E, [2013-02-27T23:29:42.569918 #64860] ERROR -- : #<Class:0x007fe1589b3e80> crashed!
157
- ExampleCrash: the spec purposely crashed me :(
158
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/spec/support/example_actor_class.rb:30:in `crash'
159
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `public_send'
160
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `dispatch'
161
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:60:in `dispatch'
162
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/actor.rb:328:in `block in handle_message'
163
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/tasks/task_fiber.rb:28:in `block in initialize'
164
- E, [2013-02-27T23:29:42.575079 #64860] ERROR -- : #<Class:0x007fe15a03eee8> crashed!
165
- TypeError: Exception object/String expected, but Fixnum received
166
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid.rb:278:in `abort'
167
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/spec/support/example_actor_class.rb:40:in `crash_with_abort_raw'
168
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `public_send'
169
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `dispatch'
170
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:60:in `dispatch'
171
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/actor.rb:328:in `block in handle_message'
172
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/tasks/task_fiber.rb:28:in `block in initialize'
173
- E, [2013-02-27T23:29:42.619798 #64860] ERROR -- : #<Class:0x007fe15a120410> crashed!
174
- ExampleCrash: the spec purposely crashed me :(
175
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/spec/support/example_actor_class.rb:30:in `crash'
176
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `public_send'
177
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `dispatch'
178
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:60:in `dispatch'
179
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/actor.rb:328:in `block in handle_message'
180
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/tasks/task_fiber.rb:28:in `block in initialize'
181
- E, [2013-02-27T23:29:42.728341 #64860] ERROR -- : #<Class:0x007fe15894dc70> crashed!
182
- ExampleCrash: the spec purposely crashed me :(
183
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/spec/support/example_actor_class.rb:30:in `crash'
184
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `public_send'
185
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `dispatch'
186
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:60:in `dispatch'
187
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/actor.rb:328:in `block in handle_message'
188
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/tasks/task_fiber.rb:28:in `block in initialize'
189
- E, [2013-02-27T23:29:42.841919 #64860] ERROR -- : #<Class:0x007fe15a0f03c8> crashed!
190
- ExampleCrash: the spec purposely crashed me :(
191
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/spec/support/example_actor_class.rb:30:in `crash'
192
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `public_send'
193
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:11:in `dispatch'
194
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/calls.rb:60:in `dispatch'
195
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/actor.rb:328:in `block in handle_message'
196
- /Users/tony/.rvm/gems/ruby-1.9.3-p392/gems/celluloid-0.13.0.pre/lib/celluloid/tasks/task_fiber.rb:28:in `block in initialize'
197
- D, [2013-02-27T23:29:46.885001 #64860] DEBUG -- : Terminating 68 actors...
198
- D, [2013-02-27T23:29:46.897828 #64860] DEBUG -- : Shutdown completed cleanly