resque-scheduler 1.9.7 → 1.9.8

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore CHANGED
@@ -1,2 +1,3 @@
1
+ .bundle/
1
2
  pkg
2
3
  nbproject
data/Gemfile ADDED
@@ -0,0 +1,2 @@
1
+ source :rubygems
2
+ gemspec
data/Gemfile.lock ADDED
@@ -0,0 +1,52 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ resque-scheduler (1.9.7)
5
+ redis (>= 2.0.1)
6
+ resque (>= 1.8.0)
7
+ rufus-scheduler
8
+
9
+ GEM
10
+ remote: http://rubygems.org/
11
+ specs:
12
+ git (1.2.5)
13
+ jeweler (1.5.1)
14
+ bundler (~> 1.0.0)
15
+ git (>= 1.2.5)
16
+ rake
17
+ json (1.4.6)
18
+ mocha (0.9.9)
19
+ rake
20
+ rack (1.2.1)
21
+ rack-test (0.5.6)
22
+ rack (>= 1.0)
23
+ rake (0.8.7)
24
+ redis (2.1.1)
25
+ redis-namespace (0.8.0)
26
+ redis (< 3.0.0)
27
+ resque (1.10.0)
28
+ json (~> 1.4.6)
29
+ redis-namespace (~> 0.8.0)
30
+ sinatra (>= 0.9.2)
31
+ vegas (~> 0.1.2)
32
+ rufus-scheduler (2.0.7)
33
+ tzinfo
34
+ sinatra (1.1.0)
35
+ rack (~> 1.1)
36
+ tilt (~> 1.1)
37
+ tilt (1.1)
38
+ tzinfo (0.3.23)
39
+ vegas (0.1.8)
40
+ rack (>= 1.0.0)
41
+
42
+ PLATFORMS
43
+ ruby
44
+
45
+ DEPENDENCIES
46
+ jeweler
47
+ mocha
48
+ rack-test
49
+ redis (>= 2.0.1)
50
+ resque (>= 1.8.0)
51
+ resque-scheduler!
52
+ rufus-scheduler
data/HISTORY.md CHANGED
@@ -1,3 +1,13 @@
1
+ ## 2.0.0 (???)
2
+
3
+ * Dynamic schedule support (brianjlandau, davidyang)
4
+ * Now depends on redis >=1.3
5
+
6
+ ## 1.9.8 (???)
7
+
8
+ * Validates delayed jobs prior to insertion into the delayed queue (bogdan)
9
+ * Rescue exceptions that occur during queuing and log them (dgrijalva)
10
+
1
11
  ## 1.9.7 (2010-11-09)
2
12
 
3
13
  * Support for rufus-scheduler "every" syntax (fallwith)
data/README.markdown CHANGED
@@ -147,7 +147,7 @@ and make it support scheduled job.
147
147
  Let's pretend we have a JobWithStatus class called FakeLeaderboard
148
148
 
149
149
  class FakeLeaderboard < Resque::JobWithStatus
150
- def perfom
150
+ def perform
151
151
  # do something and keep track of the status
152
152
  end
153
153
  end
data/Rakefile CHANGED
@@ -1,4 +1,5 @@
1
- load File.expand_path('tasks/resque_scheduler.rake')
1
+ require 'bundler'
2
+ Bundler::GemHelper.install_tasks
2
3
 
3
4
  $LOAD_PATH.unshift 'lib'
4
5
 
@@ -10,47 +11,3 @@ task :test do
10
11
  require File.expand_path(f)
11
12
  end
12
13
  end
13
-
14
-
15
- desc "Build a gem"
16
- task :gem => [ :test, :gemspec, :build ]
17
-
18
- begin
19
- begin
20
- require 'jeweler'
21
- rescue LoadError
22
- puts "Jeweler not available. Install it with: "
23
- puts "gem install jeweler"
24
- end
25
-
26
- require 'resque_scheduler/version'
27
-
28
- Jeweler::Tasks.new do |gemspec|
29
- gemspec.name = "resque-scheduler"
30
- gemspec.summary = "Light weight job scheduling on top of Resque"
31
- gemspec.description = %{Light weight job scheduling on top of Resque.
32
- Adds methods enqueue_at/enqueue_in to schedule jobs in the future.
33
- Also supports queueing jobs on a fixed, cron-like schedule.}
34
- gemspec.email = "bvandenbos@gmail.com"
35
- gemspec.homepage = "http://github.com/bvandenbos/resque-scheduler"
36
- gemspec.authors = ["Ben VandenBos"]
37
- gemspec.version = ResqueScheduler::Version
38
-
39
- gemspec.add_dependency "redis", ">= 2.0.1"
40
- gemspec.add_dependency "resque", ">= 1.8.0"
41
- gemspec.add_dependency "rufus-scheduler"
42
- gemspec.add_development_dependency "jeweler"
43
- gemspec.add_development_dependency "mocha"
44
- gemspec.add_development_dependency "rack-test"
45
- end
46
- end
47
-
48
-
49
- desc "Push a new version to Gemcutter"
50
- task :publish => [ :test, :gemspec, :build ] do
51
- system "git tag v#{ResqueScheduler::Version}"
52
- system "git push origin v#{ResqueScheduler::Version}"
53
- system "git push origin master"
54
- system "gem push pkg/resque-scheduler-#{ResqueScheduler::Version}.gem"
55
- system "git clean -fd"
56
- end
@@ -103,14 +103,18 @@ module Resque
103
103
  begin
104
104
  handle_shutdown do
105
105
  if item = Resque.next_item_for_timestamp(timestamp)
106
- log "queuing #{item['class']} [delayed]"
107
- queue = item['queue'] || Resque.queue_from_class(constantize(item['class']))
108
- # Support custom job classes like job with status
109
- if (job_klass = item['custom_job_class']) && (job_klass != 'Resque::Job')
110
- # custom job classes not supporting the same API calls must implement the #schedule method
111
- constantize(job_klass).scheduled(queue, item['class'], *item['args'])
112
- else
113
- Resque::Job.create(queue, item['class'], *item['args'])
106
+ begin
107
+ log "queuing #{item['class']} [delayed]"
108
+ queue = item['queue'] || Resque.queue_from_class(constantize(item['class']))
109
+ # Support custom job classes like job with status
110
+ if (job_klass = item['custom_job_class']) && (job_klass != 'Resque::Job')
111
+ # custom job classes not supporting the same API calls must implement the #schedule method
112
+ constantize(job_klass).scheduled(queue, item['class'], *item['args'])
113
+ else
114
+ Resque::Job.create(queue, item['class'], *item['args'])
115
+ end
116
+ rescue
117
+ log! "Failed to enqueue #{klass_name}:\n #{$!}"
114
118
  end
115
119
  end
116
120
  end
@@ -128,7 +132,7 @@ module Resque
128
132
  def enqueue_from_config(config)
129
133
  args = config['args'] || config[:args]
130
134
  klass_name = config['class'] || config[:class]
131
- params = args.nil? ? [] : Array(args)
135
+ params = args.is_a?(Hash) ? [args] : Array(args)
132
136
  queue = config['queue'] || config[:queue] || Resque.queue_from_class(constantize(klass_name))
133
137
  # Support custom job classes like job with status
134
138
  if (job_klass = config['custom_job_class']) && (job_klass != 'Resque::Job')
@@ -137,6 +141,8 @@ module Resque
137
141
  else
138
142
  Resque::Job.create(queue, klass_name, *params)
139
143
  end
144
+ rescue
145
+ log! "Failed to enqueue #{klass_name}:\n #{$!}"
140
146
  end
141
147
 
142
148
  def rufus_scheduler
@@ -29,7 +29,9 @@
29
29
  <td style="white-space:nowrap"><%= (config['cron'].nil? && !config['every'].nil?) ?
30
30
  h('every: ' + config['every']) :
31
31
  h('cron: ' + config['cron']) %></td>
32
- <td><%= h config['class'] %></td>
32
+ <td><%= (config['class'].nil? && !config['custom_job_class'].nil?) ?
33
+ h(config['custom_job_class']) :
34
+ h(config['class']) %></td>
33
35
  <td><%= h config['queue'] || queue_from_class_name(config['class']) %></td>
34
36
  <td><%= h config['args'].inspect %></td>
35
37
  </tr>
@@ -1,3 +1,3 @@
1
1
  module ResqueScheduler
2
- Version = '1.9.7'
2
+ Version = '1.9.8'
3
3
  end
@@ -41,6 +41,7 @@ module ResqueScheduler
41
41
  # for queueing. Until timestamp is in the past, the job will
42
42
  # sit in the schedule list.
43
43
  def enqueue_at(timestamp, klass, *args)
44
+ validate_job!(klass)
44
45
  delayed_push(timestamp, job_to_hash(klass, args))
45
46
  end
46
47
 
@@ -150,6 +151,16 @@ module ResqueScheduler
150
151
  end
151
152
  end
152
153
 
154
+ def validate_job!(klass)
155
+ if klass.to_s.empty?
156
+ raise Resque::NoClassError.new("Jobs must be given a class.")
157
+ end
158
+
159
+ unless queue_from_class(klass)
160
+ raise Resque::NoQueueError.new("Jobs must be placed onto a queue.")
161
+ end
162
+ end
163
+
153
164
  end
154
165
 
155
166
  Resque.extend ResqueScheduler
@@ -1,83 +1,29 @@
1
- # Generated by jeweler
2
- # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
4
1
  # -*- encoding: utf-8 -*-
2
+ require File.expand_path("../lib/resque_scheduler/version", __FILE__)
5
3
 
6
4
  Gem::Specification.new do |s|
7
- s.name = %q{resque-scheduler}
8
- s.version = "1.9.7"
9
-
10
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Ben VandenBos"]
12
- s.date = %q{2010-11-10}
5
+ s.name = "resque-scheduler"
6
+ s.version = ResqueScheduler::Version
7
+ s.platform = Gem::Platform::RUBY
8
+ s.authors = ['Ben VandenBos']
9
+ s.email = ['bvandenbos@gmail.com']
10
+ s.homepage = "http://github.com/bvandenbos/resque-scheduler"
11
+ s.summary = "Light weight job scheduling on top of Resque"
13
12
  s.description = %q{Light weight job scheduling on top of Resque.
14
- Adds methods enqueue_at/enqueue_in to schedule jobs in the future.
15
- Also supports queueing jobs on a fixed, cron-like schedule.}
16
- s.email = %q{bvandenbos@gmail.com}
17
- s.extra_rdoc_files = [
18
- "LICENSE",
19
- "README.markdown"
20
- ]
21
- s.files = [
22
- ".gitignore",
23
- "HISTORY.md",
24
- "LICENSE",
25
- "README.markdown",
26
- "Rakefile",
27
- "lib/resque/scheduler.rb",
28
- "lib/resque_scheduler.rb",
29
- "lib/resque_scheduler/server.rb",
30
- "lib/resque_scheduler/server/views/delayed.erb",
31
- "lib/resque_scheduler/server/views/delayed_timestamp.erb",
32
- "lib/resque_scheduler/server/views/scheduler.erb",
33
- "lib/resque_scheduler/tasks.rb",
34
- "lib/resque_scheduler/version.rb",
35
- "resque-scheduler.gemspec",
36
- "tasks/resque_scheduler.rake",
37
- "test/delayed_queue_test.rb",
38
- "test/redis-test.conf",
39
- "test/resque-web_test.rb",
40
- "test/scheduler_test.rb",
41
- "test/test_helper.rb"
42
- ]
43
- s.homepage = %q{http://github.com/bvandenbos/resque-scheduler}
44
- s.rdoc_options = ["--charset=UTF-8"]
45
- s.require_paths = ["lib"]
46
- s.rubygems_version = %q{1.3.7}
47
- s.summary = %q{Light weight job scheduling on top of Resque}
48
- s.test_files = [
49
- "test/delayed_queue_test.rb",
50
- "test/resque-web_test.rb",
51
- "test/scheduler_test.rb",
52
- "test/test_helper.rb"
53
- ]
54
-
55
- if s.respond_to? :specification_version then
56
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
57
- s.specification_version = 3
13
+ Adds methods enqueue_at/enqueue_in to schedule jobs in the future.
14
+ Also supports queueing jobs on a fixed, cron-like schedule.}
15
+
16
+ s.required_rubygems_version = ">= 1.3.6"
17
+ s.add_development_dependency "bundler", ">= 1.0.0"
58
18
 
59
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
60
- s.add_runtime_dependency(%q<redis>, [">= 2.0.1"])
61
- s.add_runtime_dependency(%q<resque>, [">= 1.8.0"])
62
- s.add_runtime_dependency(%q<rufus-scheduler>, [">= 0"])
63
- s.add_development_dependency(%q<jeweler>, [">= 0"])
64
- s.add_development_dependency(%q<mocha>, [">= 0"])
65
- s.add_development_dependency(%q<rack-test>, [">= 0"])
66
- else
67
- s.add_dependency(%q<redis>, [">= 2.0.1"])
68
- s.add_dependency(%q<resque>, [">= 1.8.0"])
69
- s.add_dependency(%q<rufus-scheduler>, [">= 0"])
70
- s.add_dependency(%q<jeweler>, [">= 0"])
71
- s.add_dependency(%q<mocha>, [">= 0"])
72
- s.add_dependency(%q<rack-test>, [">= 0"])
73
- end
74
- else
75
- s.add_dependency(%q<redis>, [">= 2.0.1"])
76
- s.add_dependency(%q<resque>, [">= 1.8.0"])
77
- s.add_dependency(%q<rufus-scheduler>, [">= 0"])
78
- s.add_dependency(%q<jeweler>, [">= 0"])
79
- s.add_dependency(%q<mocha>, [">= 0"])
80
- s.add_dependency(%q<rack-test>, [">= 0"])
81
- end
19
+ s.files = `git ls-files`.split("\n")
20
+ s.executables = `git ls-files`.split("\n").map{|f| f =~ /^bin\/(.*)/ ? $1 : nil}.compact
21
+ s.require_path = 'lib'
22
+
23
+ s.add_runtime_dependency(%q<redis>, [">= 2.0.1"])
24
+ s.add_runtime_dependency(%q<resque>, [">= 1.8.0"])
25
+ s.add_runtime_dependency(%q<rufus-scheduler>, [">= 0"])
26
+ s.add_development_dependency(%q<mocha>, [">= 0"])
27
+ s.add_development_dependency(%q<rack-test>, [">= 0"])
28
+
82
29
  end
83
-
@@ -217,4 +217,13 @@ class Resque::DelayedQueueTest < Test::Unit::TestCase
217
217
  assert_equal(2, Resque.remove_delayed(SomeIvarJob, "bar"))
218
218
  assert_equal(2, Resque.count_all_scheduled_jobs)
219
219
  end
220
+
221
+ def test_invalid_job_class
222
+ assert_raise Resque::NoClassError do
223
+ Resque.enqueue_in(10, nil)
224
+ end
225
+ assert_raise Resque::NoQueueError do
226
+ Resque.enqueue_in(10, String) # string serves as invalid Job class
227
+ end
228
+ end
220
229
  end
@@ -0,0 +1,83 @@
1
+ require File.dirname(__FILE__) + '/test_helper'
2
+
3
+ context "scheduling jobs with arguments" do
4
+ setup { Resque::Scheduler.clear_schedule! }
5
+
6
+ test "calls the worker without arguments when 'args' is missing from the config" do
7
+ Resque::Scheduler.enqueue_from_config(YAML.load(<<-YAML))
8
+ class: SomeIvarJob
9
+ YAML
10
+ SomeIvarJob.expects(:perform).once.with()
11
+ Resque.reserve('ivar').perform
12
+ end
13
+
14
+ test "calls the worker without arguments when 'args' is blank in the config" do
15
+ Resque::Scheduler.enqueue_from_config(YAML.load(<<-YAML))
16
+ class: SomeIvarJob
17
+ args:
18
+ YAML
19
+ SomeIvarJob.expects(:perform).once.with()
20
+ Resque.reserve('ivar').perform
21
+ end
22
+
23
+ test "calls the worker with a string when the config lists a string" do
24
+ Resque::Scheduler.enqueue_from_config(YAML.load(<<-YAML))
25
+ class: SomeIvarJob
26
+ args: string
27
+ YAML
28
+ SomeIvarJob.expects(:perform).once.with('string')
29
+ Resque.reserve('ivar').perform
30
+ end
31
+
32
+ test "calls the worker with a Fixnum when the config lists an integer" do
33
+ Resque::Scheduler.enqueue_from_config(YAML.load(<<-YAML))
34
+ class: SomeIvarJob
35
+ args: 1
36
+ YAML
37
+ SomeIvarJob.expects(:perform).once.with(1)
38
+ Resque.reserve('ivar').perform
39
+ end
40
+
41
+ test "calls the worker with multiple arguments when the config lists an array" do
42
+ Resque::Scheduler.enqueue_from_config(YAML.load(<<-YAML))
43
+ class: SomeIvarJob
44
+ args:
45
+ - 1
46
+ - 2
47
+ YAML
48
+ SomeIvarJob.expects(:perform).once.with(1, 2)
49
+ Resque.reserve('ivar').perform
50
+ end
51
+
52
+ test "calls the worker with an array when the config lists a nested array" do
53
+ Resque::Scheduler.enqueue_from_config(YAML.load(<<-YAML))
54
+ class: SomeIvarJob
55
+ args:
56
+ - - 1
57
+ - 2
58
+ YAML
59
+ SomeIvarJob.expects(:perform).once.with([1, 2])
60
+ Resque.reserve('ivar').perform
61
+ end
62
+
63
+ test "calls the worker with a hash when the config lists a hash" do
64
+ Resque::Scheduler.enqueue_from_config(YAML.load(<<-YAML))
65
+ class: SomeIvarJob
66
+ args:
67
+ key: value
68
+ YAML
69
+ SomeIvarJob.expects(:perform).once.with('key' => 'value')
70
+ Resque.reserve('ivar').perform
71
+ end
72
+
73
+ test "calls the worker with a nested hash when the config lists a nested hash" do
74
+ Resque::Scheduler.enqueue_from_config(YAML.load(<<-YAML))
75
+ class: SomeIvarJob
76
+ args:
77
+ first_key:
78
+ second_key: value
79
+ YAML
80
+ SomeIvarJob.expects(:perform).once.with('first_key' => {'second_key' => 'value'})
81
+ Resque.reserve('ivar').perform
82
+ end
83
+ end
@@ -20,6 +20,11 @@ class Resque::SchedulerTest < Test::Unit::TestCase
20
20
  Resque::Scheduler.enqueue_from_config('every' => '1m', 'class' => 'JamesJob', 'args' => '/tmp', 'queue' => 'james_queue')
21
21
  end
22
22
 
23
+ def test_enqueue_from_config_doesnt_crash_on_exception_when_enqueueing
24
+ Resque::Job.stubs(:create).raises(Resque::NoQueueError, 'test exception').with(:ivar, 'SomeIvarJob', '/tmp')
25
+ Resque::Scheduler.enqueue_from_config('cron' => "* * * * *", 'class' => 'SomeIvarJob', 'args' => "/tmp")
26
+ end
27
+
23
28
  def test_enqueue_from_config_puts_stuff_in_the_resque_queue
24
29
  Resque::Job.stubs(:create).once.returns(true).with(:ivar, 'SomeIvarJob', '/tmp')
25
30
  Resque::Scheduler.enqueue_from_config('cron' => "* * * * *", 'class' => 'SomeIvarJob', 'args' => "/tmp")
metadata CHANGED
@@ -1,13 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: resque-scheduler
3
3
  version: !ruby/object:Gem::Version
4
- hash: 61
5
4
  prerelease: false
6
5
  segments:
7
6
  - 1
8
7
  - 9
9
- - 7
10
- version: 1.9.7
8
+ - 8
9
+ version: 1.9.8
11
10
  platform: ruby
12
11
  authors:
13
12
  - Ben VandenBos
@@ -15,68 +14,66 @@ autorequire:
15
14
  bindir: bin
16
15
  cert_chain: []
17
16
 
18
- date: 2010-11-10 00:00:00 -08:00
17
+ date: 2011-01-14 00:00:00 -08:00
19
18
  default_executable:
20
19
  dependencies:
21
20
  - !ruby/object:Gem::Dependency
22
- name: redis
21
+ name: bundler
23
22
  prerelease: false
24
23
  requirement: &id001 !ruby/object:Gem::Requirement
25
24
  none: false
26
25
  requirements:
27
26
  - - ">="
28
27
  - !ruby/object:Gem::Version
29
- hash: 13
30
28
  segments:
31
- - 2
32
- - 0
33
29
  - 1
34
- version: 2.0.1
35
- type: :runtime
30
+ - 0
31
+ - 0
32
+ version: 1.0.0
33
+ type: :development
36
34
  version_requirements: *id001
37
35
  - !ruby/object:Gem::Dependency
38
- name: resque
36
+ name: redis
39
37
  prerelease: false
40
38
  requirement: &id002 !ruby/object:Gem::Requirement
41
39
  none: false
42
40
  requirements:
43
41
  - - ">="
44
42
  - !ruby/object:Gem::Version
45
- hash: 55
46
43
  segments:
47
- - 1
48
- - 8
44
+ - 2
49
45
  - 0
50
- version: 1.8.0
46
+ - 1
47
+ version: 2.0.1
51
48
  type: :runtime
52
49
  version_requirements: *id002
53
50
  - !ruby/object:Gem::Dependency
54
- name: rufus-scheduler
51
+ name: resque
55
52
  prerelease: false
56
53
  requirement: &id003 !ruby/object:Gem::Requirement
57
54
  none: false
58
55
  requirements:
59
56
  - - ">="
60
57
  - !ruby/object:Gem::Version
61
- hash: 3
62
58
  segments:
59
+ - 1
60
+ - 8
63
61
  - 0
64
- version: "0"
62
+ version: 1.8.0
65
63
  type: :runtime
66
64
  version_requirements: *id003
67
65
  - !ruby/object:Gem::Dependency
68
- name: jeweler
66
+ name: rufus-scheduler
69
67
  prerelease: false
70
68
  requirement: &id004 !ruby/object:Gem::Requirement
71
69
  none: false
72
70
  requirements:
73
71
  - - ">="
74
72
  - !ruby/object:Gem::Version
75
- hash: 3
76
73
  segments:
77
74
  - 0
78
75
  version: "0"
79
- type: :development
76
+ type: :runtime
80
77
  version_requirements: *id004
81
78
  - !ruby/object:Gem::Dependency
82
79
  name: mocha
@@ -86,7 +83,6 @@ dependencies:
86
83
  requirements:
87
84
  - - ">="
88
85
  - !ruby/object:Gem::Version
89
- hash: 3
90
86
  segments:
91
87
  - 0
92
88
  version: "0"
@@ -100,7 +96,6 @@ dependencies:
100
96
  requirements:
101
97
  - - ">="
102
98
  - !ruby/object:Gem::Version
103
- hash: 3
104
99
  segments:
105
100
  - 0
106
101
  version: "0"
@@ -108,18 +103,20 @@ dependencies:
108
103
  version_requirements: *id006
109
104
  description: |-
110
105
  Light weight job scheduling on top of Resque.
111
- Adds methods enqueue_at/enqueue_in to schedule jobs in the future.
112
- Also supports queueing jobs on a fixed, cron-like schedule.
113
- email: bvandenbos@gmail.com
106
+ Adds methods enqueue_at/enqueue_in to schedule jobs in the future.
107
+ Also supports queueing jobs on a fixed, cron-like schedule.
108
+ email:
109
+ - bvandenbos@gmail.com
114
110
  executables: []
115
111
 
116
112
  extensions: []
117
113
 
118
- extra_rdoc_files:
119
- - LICENSE
120
- - README.markdown
114
+ extra_rdoc_files: []
115
+
121
116
  files:
122
117
  - .gitignore
118
+ - Gemfile
119
+ - Gemfile.lock
123
120
  - HISTORY.md
124
121
  - LICENSE
125
122
  - README.markdown
@@ -137,6 +134,7 @@ files:
137
134
  - test/delayed_queue_test.rb
138
135
  - test/redis-test.conf
139
136
  - test/resque-web_test.rb
137
+ - test/scheduler_args_test.rb
140
138
  - test/scheduler_test.rb
141
139
  - test/test_helper.rb
142
140
  has_rdoc: true
@@ -144,8 +142,8 @@ homepage: http://github.com/bvandenbos/resque-scheduler
144
142
  licenses: []
145
143
 
146
144
  post_install_message:
147
- rdoc_options:
148
- - --charset=UTF-8
145
+ rdoc_options: []
146
+
149
147
  require_paths:
150
148
  - lib
151
149
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -153,7 +151,6 @@ required_ruby_version: !ruby/object:Gem::Requirement
153
151
  requirements:
154
152
  - - ">="
155
153
  - !ruby/object:Gem::Version
156
- hash: 3
157
154
  segments:
158
155
  - 0
159
156
  version: "0"
@@ -162,10 +159,11 @@ required_rubygems_version: !ruby/object:Gem::Requirement
162
159
  requirements:
163
160
  - - ">="
164
161
  - !ruby/object:Gem::Version
165
- hash: 3
166
162
  segments:
167
- - 0
168
- version: "0"
163
+ - 1
164
+ - 3
165
+ - 6
166
+ version: 1.3.6
169
167
  requirements: []
170
168
 
171
169
  rubyforge_project:
@@ -173,8 +171,5 @@ rubygems_version: 1.3.7
173
171
  signing_key:
174
172
  specification_version: 3
175
173
  summary: Light weight job scheduling on top of Resque
176
- test_files:
177
- - test/delayed_queue_test.rb
178
- - test/resque-web_test.rb
179
- - test/scheduler_test.rb
180
- - test/test_helper.rb
174
+ test_files: []
175
+