resque-scheduler 2.5.5 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of resque-scheduler might be problematic. Click here for more details.

Files changed (77) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +12 -6
  3. data/.rubocop.yml +18 -113
  4. data/.rubocop_todo.yml +29 -0
  5. data/.simplecov +3 -1
  6. data/.travis.yml +12 -4
  7. data/.vagrant-provision-as-vagrant.sh +15 -0
  8. data/.vagrant-provision.sh +23 -0
  9. data/.vagrant-skel/bash_profile +7 -0
  10. data/.vagrant-skel/bashrc +7 -0
  11. data/AUTHORS.md +5 -0
  12. data/Gemfile +1 -2
  13. data/HISTORY.md +18 -0
  14. data/README.md +39 -11
  15. data/ROADMAP.md +0 -6
  16. data/Rakefile +11 -19
  17. data/Vagrantfile +14 -0
  18. data/bin/resque-scheduler +2 -2
  19. data/examples/Rakefile +1 -1
  20. data/examples/config/initializers/resque-web.rb +2 -2
  21. data/examples/dynamic-scheduling/app/jobs/fix_schedules_job.rb +2 -4
  22. data/examples/dynamic-scheduling/app/jobs/send_email_job.rb +1 -1
  23. data/examples/dynamic-scheduling/app/models/user.rb +2 -2
  24. data/examples/dynamic-scheduling/lib/tasks/resque.rake +2 -2
  25. data/lib/resque-scheduler.rb +3 -1
  26. data/lib/resque/scheduler.rb +112 -168
  27. data/lib/resque/scheduler/cli.rb +144 -0
  28. data/lib/resque/scheduler/configuration.rb +73 -0
  29. data/lib/resque/scheduler/delaying_extensions.rb +278 -0
  30. data/lib/resque/scheduler/env.rb +61 -0
  31. data/lib/resque/scheduler/extension.rb +13 -0
  32. data/lib/resque/scheduler/lock.rb +2 -1
  33. data/lib/resque/scheduler/lock/base.rb +6 -2
  34. data/lib/resque/scheduler/lock/basic.rb +4 -5
  35. data/lib/resque/scheduler/lock/resilient.rb +30 -37
  36. data/lib/resque/scheduler/locking.rb +94 -0
  37. data/lib/resque/scheduler/logger_builder.rb +72 -0
  38. data/lib/resque/scheduler/plugin.rb +31 -0
  39. data/lib/resque/scheduler/scheduling_extensions.rb +150 -0
  40. data/lib/resque/scheduler/server.rb +246 -0
  41. data/lib/{resque_scheduler → resque/scheduler}/server/views/delayed.erb +2 -1
  42. data/lib/{resque_scheduler → resque/scheduler}/server/views/delayed_schedules.erb +0 -0
  43. data/lib/{resque_scheduler → resque/scheduler}/server/views/delayed_timestamp.erb +0 -0
  44. data/lib/{resque_scheduler → resque/scheduler}/server/views/requeue-params.erb +0 -0
  45. data/lib/{resque_scheduler → resque/scheduler}/server/views/scheduler.erb +16 -1
  46. data/lib/{resque_scheduler → resque/scheduler}/server/views/search.erb +2 -1
  47. data/lib/{resque_scheduler → resque/scheduler}/server/views/search_form.erb +0 -0
  48. data/lib/resque/scheduler/signal_handling.rb +40 -0
  49. data/lib/{resque_scheduler → resque/scheduler}/tasks.rb +3 -5
  50. data/lib/resque/scheduler/util.rb +41 -0
  51. data/lib/resque/scheduler/version.rb +7 -0
  52. data/resque-scheduler.gemspec +21 -19
  53. data/script/migrate_to_timestamps_set.rb +5 -3
  54. data/tasks/resque_scheduler.rake +1 -1
  55. data/test/cli_test.rb +26 -69
  56. data/test/delayed_queue_test.rb +262 -169
  57. data/test/env_test.rb +41 -0
  58. data/test/resque-web_test.rb +169 -48
  59. data/test/scheduler_args_test.rb +73 -41
  60. data/test/scheduler_hooks_test.rb +9 -8
  61. data/test/scheduler_locking_test.rb +55 -36
  62. data/test/scheduler_setup_test.rb +52 -15
  63. data/test/scheduler_task_test.rb +15 -10
  64. data/test/scheduler_test.rb +215 -114
  65. data/test/support/redis_instance.rb +32 -33
  66. data/test/test_helper.rb +33 -36
  67. data/test/util_test.rb +11 -0
  68. metadata +113 -57
  69. data/lib/resque/scheduler_locking.rb +0 -91
  70. data/lib/resque_scheduler.rb +0 -386
  71. data/lib/resque_scheduler/cli.rb +0 -160
  72. data/lib/resque_scheduler/logger_builder.rb +0 -72
  73. data/lib/resque_scheduler/plugin.rb +0 -28
  74. data/lib/resque_scheduler/server.rb +0 -183
  75. data/lib/resque_scheduler/util.rb +0 -34
  76. data/lib/resque_scheduler/version.rb +0 -5
  77. data/test/redis-test.conf +0 -108
@@ -1,3 +1,4 @@
1
+ # vim:fileencoding=utf-8
1
2
  require 'socket'
2
3
  require 'timeout'
3
4
  require 'fileutils'
@@ -7,9 +8,10 @@ class RedisInstance
7
8
  @running = false
8
9
  @port = nil
9
10
  @pid = nil
11
+ @waiting = false
10
12
 
11
13
  def run_if_needed!
12
- run! unless running?
14
+ run! unless @running
13
15
  end
14
16
 
15
17
  def run!
@@ -17,18 +19,7 @@ class RedisInstance
17
19
  ensure_pid_directory
18
20
  reassign_redis_clients
19
21
  start_redis_server
20
-
21
- if $?.success?
22
- wait_for_pid
23
- puts "Booted isolated Redis on port #{port} with PID #{pid}."
24
-
25
- wait_for_redis_boot
26
-
27
- # Ensure we tear down Redis on Ctrl+C / test failure.
28
- at_exit { stop! }
29
- else
30
- fail "Failed to start Redis on port #{port}."
31
- end
22
+ post_boot_waiting_and_such
32
23
 
33
24
  @running = true
34
25
  end
@@ -42,26 +33,34 @@ class RedisInstance
42
33
  @pid = nil
43
34
  end
44
35
 
45
- def running?
46
- @running
47
- end
48
-
49
36
  private
50
37
 
38
+ def post_boot_waiting_and_such
39
+ wait_for_pid
40
+ puts "Booted isolated Redis on #{port} with PID #{pid}."
41
+
42
+ wait_for_redis_boot
43
+
44
+ # Ensure we tear down Redis on Ctrl+C / test failure.
45
+ at_exit { stop! }
46
+ end
47
+
51
48
  def ensure_redis_server_present!
52
- if !system('redis-server -v')
49
+ unless system('redis-server -v')
53
50
  fail "** can't find `redis-server` in your path"
54
51
  end
55
52
  end
56
53
 
57
54
  def wait_for_redis_boot
58
- Timeout::timeout(10) do
59
- begin
60
- while Resque.redis.ping != 'PONG'
55
+ Timeout.timeout(10) do
56
+ loop do
57
+ begin
58
+ break if Resque.redis.ping == 'PONG'
59
+ rescue Redis::CannotConnectError
60
+ @waiting = true
61
61
  end
62
- rescue
63
- # silence all errors
64
62
  end
63
+ @waiting = false
65
64
  end
66
65
  end
67
66
 
@@ -70,11 +69,13 @@ class RedisInstance
70
69
  end
71
70
 
72
71
  def reassign_redis_clients
73
- Resque.redis = Redis.new(:hostname => '127.0.0.1', :port => port, :thread_safe => true)
72
+ Resque.redis = Redis.new(
73
+ hostname: '127.0.0.1', port: port, thread_safe: true
74
+ )
74
75
  end
75
76
 
76
77
  def start_redis_server
77
- IO.popen("redis-server -", "w+") do |server|
78
+ IO.popen('redis-server -', 'w+') do |server|
78
79
  server.write(config)
79
80
  server.close_write
80
81
  end
@@ -85,9 +86,8 @@ class RedisInstance
85
86
  end
86
87
 
87
88
  def wait_for_pid
88
- Timeout::timeout(10) do
89
- while !File.exist?(pid_file)
90
- end
89
+ Timeout.timeout(10) do
90
+ loop { break if File.exist?(pid_file) }
91
91
  end
92
92
  end
93
93
 
@@ -96,7 +96,7 @@ class RedisInstance
96
96
  end
97
97
 
98
98
  def pid_file
99
- "/tmp/redis-scheduler-test.pid"
99
+ '/tmp/redis-scheduler-test.pid'
100
100
  end
101
101
 
102
102
  def config
@@ -109,7 +109,7 @@ class RedisInstance
109
109
 
110
110
  # Returns a random port in the upper (10000-65535) range.
111
111
  def random_port
112
- ports = (10000..65535).to_a
112
+ ports = (10_000..65_535).to_a
113
113
 
114
114
  loop do
115
115
  port = ports[rand(ports.size)]
@@ -117,8 +117,8 @@ class RedisInstance
117
117
  end
118
118
  end
119
119
 
120
- def port_available?(ip, port, seconds=1)
121
- Timeout::timeout(seconds) do
120
+ def port_available?(ip, port, seconds = 1)
121
+ Timeout.timeout(seconds) do
122
122
  begin
123
123
  TCPSocket.new(ip, port).close
124
124
  false
@@ -131,4 +131,3 @@ class RedisInstance
131
131
  end
132
132
  end
133
133
  end
134
-
@@ -1,20 +1,14 @@
1
- # Pretty much copied this file from the resque test_helper since we want
2
- # to do all the same stuff
3
-
4
- dir = File.dirname(File.expand_path(__FILE__))
5
-
6
- require 'rubygems'
7
- require 'bundler/setup'
8
-
9
- require 'simplecov' unless RUBY_VERSION < '1.9'
1
+ # vim:fileencoding=utf-8
2
+ require 'simplecov'
10
3
 
11
4
  require 'test/unit'
12
5
  require 'mocha/setup'
6
+ require 'rack/test'
13
7
  require 'resque'
14
8
 
15
9
  $LOAD_PATH.unshift File.dirname(File.expand_path(__FILE__)) + '/../lib'
16
- require 'resque_scheduler'
17
- require 'resque_scheduler/server'
10
+ require 'resque-scheduler'
11
+ require 'resque/scheduler/server'
18
12
 
19
13
  unless ENV['RESQUE_SCHEDULER_DISABLE_TEST_REDIS_SERVER']
20
14
  # Start our own Redis when the tests start. RedisInstance will take care of
@@ -23,35 +17,32 @@ unless ENV['RESQUE_SCHEDULER_DISABLE_TEST_REDIS_SERVER']
23
17
  RedisInstance.run!
24
18
  end
25
19
 
26
- at_exit do
27
- next if $!
28
-
29
- if defined?(MiniTest)
30
- exit_code = MiniTest::Unit.new.run(ARGV)
31
- else
32
- exit_code = Test::Unit::AutoRunner.run
33
- end
34
-
35
- exit(exit_code || 0)
36
- end
20
+ at_exit { exit MiniTest::Unit.new.run(ARGV) || 0 }
37
21
 
38
22
  ##
39
23
  # test/spec/mini 3
40
- # http://gist.github.com/25455
41
- # chris@ozmm.org
24
+ # original work: http://gist.github.com/25455
25
+ # forked and modified: https://gist.github.com/meatballhat/8906709
42
26
  #
43
27
  def context(*args, &block)
44
28
  return super unless (name = args.first) && block
45
29
  require 'test/unit'
46
- klass = Class.new(defined?(ActiveSupport::TestCase) ? ActiveSupport::TestCase : Test::Unit::TestCase) do
30
+ klass = Class.new(Test::Unit::TestCase) do
47
31
  def self.test(name, &block)
48
- define_method("test_#{name.gsub(/\W/,'_')}", &block) if block
32
+ define_method("test_#{name.gsub(/\W/, '_')}", &block) if block
33
+ end
34
+ def self.xtest(*_args)
35
+ end
36
+ def self.setup(&block)
37
+ define_method(:setup, &block)
38
+ end
39
+ def self.teardown(&block)
40
+ define_method(:teardown, &block)
49
41
  end
50
- def self.xtest(*args) end
51
- def self.setup(&block) define_method(:setup, &block) end
52
- def self.teardown(&block) define_method(:teardown, &block) end
53
42
  end
54
- (class << klass; self end).send(:define_method, :name) { name.gsub(/\W/,'_') }
43
+ (class << klass; self end).send(:define_method, :name) do
44
+ name.gsub(/\W/, '_')
45
+ end
55
46
  klass.class_eval(&block)
56
47
  end
57
48
 
@@ -64,16 +55,16 @@ unless defined?(Rails)
64
55
  end
65
56
 
66
57
  class FakeCustomJobClass
67
- def self.scheduled(queue, klass, *args); end
58
+ def self.scheduled(_queue, _klass, *_args); end
68
59
  end
69
60
 
70
61
  class FakeCustomJobClassEnqueueAt
71
62
  @queue = :test
72
- def self.scheduled(queue, klass, *args); end
63
+ def self.scheduled(_queue, _klass, *_args); end
73
64
  end
74
65
 
75
66
  class SomeJob
76
- def self.perform(repo_id, path)
67
+ def self.perform(_repo_id, _path)
77
68
  end
78
69
  end
79
70
 
@@ -87,6 +78,12 @@ class SomeFancyJob < SomeJob
87
78
  end
88
79
  end
89
80
 
81
+ class SomeSharedEnvJob < SomeJob
82
+ def self.queue
83
+ :shared_job
84
+ end
85
+ end
86
+
90
87
  class SomeQuickJob < SomeJob
91
88
  @queue = :quick
92
89
  end
@@ -110,7 +107,7 @@ JobWithoutParams = Class.new(JobWithParams)
110
107
  DYNAMIC_SCHEDULE
111
108
  LOGFILE
112
109
  LOGFORMAT
113
- MUTE
110
+ QUIET
114
111
  RAILS_ENV
115
112
  RESQUE_SCHEDULER_INTERVAL
116
113
  VERBOSE
@@ -120,10 +117,10 @@ end
120
117
 
121
118
  def nullify_logger
122
119
  Resque::Scheduler.configure do |c|
123
- c.mute = nil
120
+ c.quiet = nil
124
121
  c.verbose = nil
125
122
  c.logfile = nil
126
- c.logger = nil
123
+ c.send(:logger=, nil)
127
124
  end
128
125
 
129
126
  ENV['LOGFILE'] = nil
@@ -0,0 +1,11 @@
1
+ # vim:fileencoding=utf-8
2
+
3
+ context 'Util' do
4
+ def util
5
+ Resque::Scheduler::Util
6
+ end
7
+
8
+ test 'constantizing' do
9
+ assert util.constantize('Resque::Scheduler') == Resque::Scheduler
10
+ end
11
+ end
metadata CHANGED
@@ -1,169 +1,211 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: resque-scheduler
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.5
4
+ version: 3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben VandenBos
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-27 00:00:00.000000000 Z
11
+ date: 2014-05-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.3'
19
+ version: '1.5'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.3'
26
+ version: '1.5'
27
+ - !ruby/object:Gem::Dependency
28
+ name: json
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: kramdown
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
27
55
  - !ruby/object:Gem::Dependency
28
56
  name: mocha
29
57
  requirement: !ruby/object:Gem::Requirement
30
58
  requirements:
31
- - - '>='
59
+ - - ">="
32
60
  - !ruby/object:Gem::Version
33
61
  version: '0'
34
62
  type: :development
35
63
  prerelease: false
36
64
  version_requirements: !ruby/object:Gem::Requirement
37
65
  requirements:
38
- - - '>='
66
+ - - ">="
39
67
  - !ruby/object:Gem::Version
40
68
  version: '0'
41
69
  - !ruby/object:Gem::Dependency
42
70
  name: pry
43
71
  requirement: !ruby/object:Gem::Requirement
44
72
  requirements:
45
- - - '>='
73
+ - - ">="
46
74
  - !ruby/object:Gem::Version
47
75
  version: '0'
48
76
  type: :development
49
77
  prerelease: false
50
78
  version_requirements: !ruby/object:Gem::Requirement
51
79
  requirements:
52
- - - '>='
80
+ - - ">="
53
81
  - !ruby/object:Gem::Version
54
82
  version: '0'
55
83
  - !ruby/object:Gem::Dependency
56
84
  name: rack-test
57
85
  requirement: !ruby/object:Gem::Requirement
58
86
  requirements:
59
- - - '>='
87
+ - - ">="
60
88
  - !ruby/object:Gem::Version
61
89
  version: '0'
62
90
  type: :development
63
91
  prerelease: false
64
92
  version_requirements: !ruby/object:Gem::Requirement
65
93
  requirements:
66
- - - '>='
94
+ - - ">="
67
95
  - !ruby/object:Gem::Version
68
96
  version: '0'
69
97
  - !ruby/object:Gem::Dependency
70
98
  name: rake
71
99
  requirement: !ruby/object:Gem::Requirement
72
100
  requirements:
73
- - - '>='
101
+ - - ">="
74
102
  - !ruby/object:Gem::Version
75
103
  version: '0'
76
104
  type: :development
77
105
  prerelease: false
78
106
  version_requirements: !ruby/object:Gem::Requirement
79
107
  requirements:
80
- - - '>='
108
+ - - ">="
81
109
  - !ruby/object:Gem::Version
82
110
  version: '0'
83
111
  - !ruby/object:Gem::Dependency
84
112
  name: rubocop
85
113
  requirement: !ruby/object:Gem::Requirement
86
114
  requirements:
87
- - - '>='
115
+ - - ">="
88
116
  - !ruby/object:Gem::Version
89
117
  version: '0'
90
118
  type: :development
91
119
  prerelease: false
92
120
  version_requirements: !ruby/object:Gem::Requirement
93
121
  requirements:
94
- - - '>='
122
+ - - ">="
95
123
  - !ruby/object:Gem::Version
96
124
  version: '0'
97
125
  - !ruby/object:Gem::Dependency
98
126
  name: simplecov
99
127
  requirement: !ruby/object:Gem::Requirement
100
128
  requirements:
101
- - - '>='
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ">="
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: yard
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
102
144
  - !ruby/object:Gem::Version
103
145
  version: '0'
104
146
  type: :development
105
147
  prerelease: false
106
148
  version_requirements: !ruby/object:Gem::Requirement
107
149
  requirements:
108
- - - '>='
150
+ - - ">="
109
151
  - !ruby/object:Gem::Version
110
152
  version: '0'
111
153
  - !ruby/object:Gem::Dependency
112
154
  name: mono_logger
113
155
  requirement: !ruby/object:Gem::Requirement
114
156
  requirements:
115
- - - ~>
157
+ - - "~>"
116
158
  - !ruby/object:Gem::Version
117
159
  version: '1.0'
118
160
  type: :runtime
119
161
  prerelease: false
120
162
  version_requirements: !ruby/object:Gem::Requirement
121
163
  requirements:
122
- - - ~>
164
+ - - "~>"
123
165
  - !ruby/object:Gem::Version
124
166
  version: '1.0'
125
167
  - !ruby/object:Gem::Dependency
126
168
  name: redis
127
169
  requirement: !ruby/object:Gem::Requirement
128
170
  requirements:
129
- - - ~>
171
+ - - "~>"
130
172
  - !ruby/object:Gem::Version
131
- version: 3.0.4
173
+ version: '3.0'
132
174
  type: :runtime
133
175
  prerelease: false
134
176
  version_requirements: !ruby/object:Gem::Requirement
135
177
  requirements:
136
- - - ~>
178
+ - - "~>"
137
179
  - !ruby/object:Gem::Version
138
- version: 3.0.4
180
+ version: '3.0'
139
181
  - !ruby/object:Gem::Dependency
140
182
  name: resque
141
183
  requirement: !ruby/object:Gem::Requirement
142
184
  requirements:
143
- - - ~>
185
+ - - "~>"
144
186
  - !ruby/object:Gem::Version
145
- version: 1.25.1
187
+ version: '1.25'
146
188
  type: :runtime
147
189
  prerelease: false
148
190
  version_requirements: !ruby/object:Gem::Requirement
149
191
  requirements:
150
- - - ~>
192
+ - - "~>"
151
193
  - !ruby/object:Gem::Version
152
- version: 1.25.1
194
+ version: '1.25'
153
195
  - !ruby/object:Gem::Dependency
154
196
  name: rufus-scheduler
155
197
  requirement: !ruby/object:Gem::Requirement
156
198
  requirements:
157
- - - ~>
199
+ - - "~>"
158
200
  - !ruby/object:Gem::Version
159
- version: 2.0.24
201
+ version: '2.0'
160
202
  type: :runtime
161
203
  prerelease: false
162
204
  version_requirements: !ruby/object:Gem::Requirement
163
205
  requirements:
164
- - - ~>
206
+ - - "~>"
165
207
  - !ruby/object:Gem::Version
166
- version: 2.0.24
208
+ version: '2.0'
167
209
  description: |-
168
210
  Light weight job scheduling on top of Resque.
169
211
  Adds methods enqueue_at/enqueue_in to schedule jobs in the future.
@@ -175,10 +217,15 @@ executables:
175
217
  extensions: []
176
218
  extra_rdoc_files: []
177
219
  files:
178
- - .gitignore
179
- - .rubocop.yml
180
- - .simplecov
181
- - .travis.yml
220
+ - ".gitignore"
221
+ - ".rubocop.yml"
222
+ - ".rubocop_todo.yml"
223
+ - ".simplecov"
224
+ - ".travis.yml"
225
+ - ".vagrant-provision-as-vagrant.sh"
226
+ - ".vagrant-provision.sh"
227
+ - ".vagrant-skel/bash_profile"
228
+ - ".vagrant-skel/bashrc"
182
229
  - AUTHORS.md
183
230
  - CONTRIBUTING.md
184
231
  - Gemfile
@@ -187,6 +234,7 @@ files:
187
234
  - README.md
188
235
  - ROADMAP.md
189
236
  - Rakefile
237
+ - Vagrantfile
190
238
  - bin/resque-scheduler
191
239
  - examples/Rakefile
192
240
  - examples/config/initializers/resque-web.rb
@@ -200,32 +248,37 @@ files:
200
248
  - examples/run-resque-web
201
249
  - lib/resque-scheduler.rb
202
250
  - lib/resque/scheduler.rb
251
+ - lib/resque/scheduler/cli.rb
252
+ - lib/resque/scheduler/configuration.rb
253
+ - lib/resque/scheduler/delaying_extensions.rb
254
+ - lib/resque/scheduler/env.rb
255
+ - lib/resque/scheduler/extension.rb
203
256
  - lib/resque/scheduler/lock.rb
204
257
  - lib/resque/scheduler/lock/base.rb
205
258
  - lib/resque/scheduler/lock/basic.rb
206
259
  - lib/resque/scheduler/lock/resilient.rb
207
- - lib/resque/scheduler_locking.rb
208
- - lib/resque_scheduler.rb
209
- - lib/resque_scheduler/cli.rb
210
- - lib/resque_scheduler/logger_builder.rb
211
- - lib/resque_scheduler/plugin.rb
212
- - lib/resque_scheduler/server.rb
213
- - lib/resque_scheduler/server/views/delayed.erb
214
- - lib/resque_scheduler/server/views/delayed_schedules.erb
215
- - lib/resque_scheduler/server/views/delayed_timestamp.erb
216
- - lib/resque_scheduler/server/views/requeue-params.erb
217
- - lib/resque_scheduler/server/views/scheduler.erb
218
- - lib/resque_scheduler/server/views/search.erb
219
- - lib/resque_scheduler/server/views/search_form.erb
220
- - lib/resque_scheduler/tasks.rb
221
- - lib/resque_scheduler/util.rb
222
- - lib/resque_scheduler/version.rb
260
+ - lib/resque/scheduler/locking.rb
261
+ - lib/resque/scheduler/logger_builder.rb
262
+ - lib/resque/scheduler/plugin.rb
263
+ - lib/resque/scheduler/scheduling_extensions.rb
264
+ - lib/resque/scheduler/server.rb
265
+ - lib/resque/scheduler/server/views/delayed.erb
266
+ - lib/resque/scheduler/server/views/delayed_schedules.erb
267
+ - lib/resque/scheduler/server/views/delayed_timestamp.erb
268
+ - lib/resque/scheduler/server/views/requeue-params.erb
269
+ - lib/resque/scheduler/server/views/scheduler.erb
270
+ - lib/resque/scheduler/server/views/search.erb
271
+ - lib/resque/scheduler/server/views/search_form.erb
272
+ - lib/resque/scheduler/signal_handling.rb
273
+ - lib/resque/scheduler/tasks.rb
274
+ - lib/resque/scheduler/util.rb
275
+ - lib/resque/scheduler/version.rb
223
276
  - resque-scheduler.gemspec
224
277
  - script/migrate_to_timestamps_set.rb
225
278
  - tasks/resque_scheduler.rake
226
279
  - test/cli_test.rb
227
280
  - test/delayed_queue_test.rb
228
- - test/redis-test.conf
281
+ - test/env_test.rb
229
282
  - test/resque-web_test.rb
230
283
  - test/scheduler_args_test.rb
231
284
  - test/scheduler_hooks_test.rb
@@ -235,6 +288,7 @@ files:
235
288
  - test/scheduler_test.rb
236
289
  - test/support/redis_instance.rb
237
290
  - test/test_helper.rb
291
+ - test/util_test.rb
238
292
  homepage: http://github.com/resque/resque-scheduler
239
293
  licenses:
240
294
  - MIT
@@ -245,24 +299,24 @@ require_paths:
245
299
  - lib
246
300
  required_ruby_version: !ruby/object:Gem::Requirement
247
301
  requirements:
248
- - - '>='
302
+ - - ">="
249
303
  - !ruby/object:Gem::Version
250
304
  version: '0'
251
305
  required_rubygems_version: !ruby/object:Gem::Requirement
252
306
  requirements:
253
- - - '>='
307
+ - - ">="
254
308
  - !ruby/object:Gem::Version
255
309
  version: '0'
256
310
  requirements: []
257
311
  rubyforge_project:
258
- rubygems_version: 2.0.14
312
+ rubygems_version: 2.2.2
259
313
  signing_key:
260
314
  specification_version: 4
261
315
  summary: Light weight job scheduling on top of Resque
262
316
  test_files:
263
317
  - test/cli_test.rb
264
318
  - test/delayed_queue_test.rb
265
- - test/redis-test.conf
319
+ - test/env_test.rb
266
320
  - test/resque-web_test.rb
267
321
  - test/scheduler_args_test.rb
268
322
  - test/scheduler_hooks_test.rb
@@ -272,3 +326,5 @@ test_files:
272
326
  - test/scheduler_test.rb
273
327
  - test/support/redis_instance.rb
274
328
  - test/test_helper.rb
329
+ - test/util_test.rb
330
+ has_rdoc: