sucker_punch 0.4.1 → 0.5

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: e3be0885b87ed8ac291fdeac7544144861e1b0cd
4
+ data.tar.gz: bc01e63679efe79cc3abd16919a783bd69040188
5
+ SHA512:
6
+ metadata.gz: 126b399cdc681cda0c402095fc15d491ee30508e63df29587cc07ae9f26f45da667f4c0d37285fbbb45e655637ad5cde293082a619e09ec1041b049f3ff62a03
7
+ data.tar.gz: 6fdd0061fe2648270b26047750744cd4f75879d6f8bf1c855dce1f3b5c16766de7330ae75c20820d4b75bc14f2508c7ff57bece66277e432ee526d2618150105
data/CHANGES.md CHANGED
@@ -1,3 +1,10 @@
1
+ 0.5
2
+ --------
3
+
4
+ - `SuckerPunch::Queue#size` now returns the number of messages enqueued
5
+ - `SuckerPunch::Queue#workers` now returns the number of workers in the queue
6
+ - Update Celluloid dependency
7
+
1
8
  0.4.1
2
9
  --------
3
10
 
data/README.md CHANGED
@@ -105,8 +105,9 @@ SuckerPunch::Queue[:log_queue].async.perform("login") # => nil
105
105
  ## Stats
106
106
 
107
107
  ```Ruby
108
- SuckerPunch::Queue[:log_queue].workers # => 7
109
- SuckerPunch::Queue[:log_queue].busy_size # => 4
108
+ SuckerPunch::Queue[:log_queue].workers # => 10
109
+ SuckerPunch::Queue[:log_queue].size # => 23 # # of jobs enqueued
110
+ SuckerPunch::Queue[:log_queue].busy_size # => 7
110
111
  SuckerPunch::Queue[:log_queue].idle_size # => 3
111
112
  ```
112
113
 
@@ -11,15 +11,22 @@ module SuckerPunch
11
11
  end
12
12
 
13
13
  def register(klass, size)
14
- Celluloid::Actor[name] = if size
15
- klass.send(:pool, size: size)
16
- else
17
- klass.send(:pool)
18
- end
14
+ opts = {}
15
+ opts[:size] = size if size
16
+ Celluloid::Actor[name] = klass.send(:pool, opts)
19
17
  end
20
18
 
19
+ # Equivalent to size of the Celluloid Pool
20
+ # However, in context of a "queue" workers
21
+ # makes more sense here
21
22
  def workers
22
- size
23
+ Celluloid::Actor[name].size
24
+ end
25
+
26
+ # Equivalent to number of messages queued
27
+ # in the Celluloid mailbox
28
+ def size
29
+ Celluloid::Actor[name].mailbox.size
23
30
  end
24
31
 
25
32
  def method_missing(method_name, *args, &block)
@@ -1,3 +1,3 @@
1
1
  module SuckerPunch
2
- VERSION = "0.4.1"
2
+ VERSION = "0.5"
3
3
  end
@@ -44,9 +44,10 @@ describe SuckerPunch::Queue do
44
44
  end
45
45
 
46
46
  it "sends messages to Actor" do
47
- queue.size.should == 2
47
+ queue.workers.should == 2
48
48
  queue.idle_size.should == 2
49
49
  queue.busy_size.should == 0
50
+ queue.size.should == 0
50
51
  end
51
52
  end
52
53
  end
@@ -20,5 +20,5 @@ Gem::Specification.new do |gem|
20
20
  gem.add_development_dependency "rspec"
21
21
  gem.add_development_dependency "rake"
22
22
 
23
- gem.add_dependency "celluloid", "~> 0.13.0"
23
+ gem.add_dependency "celluloid", "~> 0.14.1"
24
24
  end
metadata CHANGED
@@ -1,64 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sucker_punch
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
5
- prerelease:
4
+ version: '0.5'
6
5
  platform: ruby
7
6
  authors:
8
7
  - Brandon Hilkert
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-04-11 00:00:00.000000000 Z
11
+ date: 2013-06-13 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rspec
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'
22
20
  type: :development
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - '>='
28
25
  - !ruby/object:Gem::Version
29
26
  version: '0'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: rake
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - '>='
36
32
  - !ruby/object:Gem::Version
37
33
  version: '0'
38
34
  type: :development
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - '>='
44
39
  - !ruby/object:Gem::Version
45
40
  version: '0'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: celluloid
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
45
  - - ~>
52
46
  - !ruby/object:Gem::Version
53
- version: 0.13.0
47
+ version: 0.14.1
54
48
  type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
52
  - - ~>
60
53
  - !ruby/object:Gem::Version
61
- version: 0.13.0
54
+ version: 0.14.1
62
55
  description: Asynchronous processing library for Ruby
63
56
  email:
64
57
  - brandonhilkert@gmail.com
@@ -89,27 +82,26 @@ files:
89
82
  - sucker_punch.gemspec
90
83
  homepage: https://github.com/brandonhilkert/sucker_punch
91
84
  licenses: []
85
+ metadata: {}
92
86
  post_install_message:
93
87
  rdoc_options: []
94
88
  require_paths:
95
89
  - lib
96
90
  required_ruby_version: !ruby/object:Gem::Requirement
97
- none: false
98
91
  requirements:
99
- - - ! '>='
92
+ - - '>='
100
93
  - !ruby/object:Gem::Version
101
94
  version: '0'
102
95
  required_rubygems_version: !ruby/object:Gem::Requirement
103
- none: false
104
96
  requirements:
105
- - - ! '>='
97
+ - - '>='
106
98
  - !ruby/object:Gem::Version
107
99
  version: '0'
108
100
  requirements: []
109
101
  rubyforge_project:
110
- rubygems_version: 1.8.23
102
+ rubygems_version: 2.0.2
111
103
  signing_key:
112
- specification_version: 3
104
+ specification_version: 4
113
105
  summary: Sucker Punch is a Ruby asynchronous processing using Celluloid, heavily influenced
114
106
  by Sidekiq and girl_friday.
115
107
  test_files: