istox-resque-scheduler 1.0.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.
Files changed (40) hide show
  1. checksums.yaml +7 -0
  2. data/AUTHORS.md +87 -0
  3. data/CHANGELOG.md +478 -0
  4. data/CODE_OF_CONDUCT.md +74 -0
  5. data/CONTRIBUTING.md +6 -0
  6. data/Gemfile +4 -0
  7. data/LICENSE +23 -0
  8. data/README.md +698 -0
  9. data/Rakefile +21 -0
  10. data/exe/resque-scheduler +5 -0
  11. data/istox-resque-scheduler.gemspec +61 -0
  12. data/lib/resque-scheduler.rb +4 -0
  13. data/lib/resque/scheduler.rb +460 -0
  14. data/lib/resque/scheduler/cli.rb +147 -0
  15. data/lib/resque/scheduler/configuration.rb +73 -0
  16. data/lib/resque/scheduler/delaying_extensions.rb +356 -0
  17. data/lib/resque/scheduler/env.rb +89 -0
  18. data/lib/resque/scheduler/extension.rb +13 -0
  19. data/lib/resque/scheduler/failure_handler.rb +11 -0
  20. data/lib/resque/scheduler/lock.rb +4 -0
  21. data/lib/resque/scheduler/lock/base.rb +61 -0
  22. data/lib/resque/scheduler/lock/basic.rb +27 -0
  23. data/lib/resque/scheduler/lock/resilient.rb +78 -0
  24. data/lib/resque/scheduler/locking.rb +104 -0
  25. data/lib/resque/scheduler/logger_builder.rb +72 -0
  26. data/lib/resque/scheduler/plugin.rb +31 -0
  27. data/lib/resque/scheduler/scheduling_extensions.rb +142 -0
  28. data/lib/resque/scheduler/server.rb +268 -0
  29. data/lib/resque/scheduler/server/views/delayed.erb +63 -0
  30. data/lib/resque/scheduler/server/views/delayed_schedules.erb +20 -0
  31. data/lib/resque/scheduler/server/views/delayed_timestamp.erb +26 -0
  32. data/lib/resque/scheduler/server/views/requeue-params.erb +23 -0
  33. data/lib/resque/scheduler/server/views/scheduler.erb +58 -0
  34. data/lib/resque/scheduler/server/views/search.erb +72 -0
  35. data/lib/resque/scheduler/server/views/search_form.erb +8 -0
  36. data/lib/resque/scheduler/signal_handling.rb +40 -0
  37. data/lib/resque/scheduler/tasks.rb +25 -0
  38. data/lib/resque/scheduler/util.rb +39 -0
  39. data/lib/resque/scheduler/version.rb +7 -0
  40. metadata +343 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 11bc3a299bfc8778cf9370863506fe19a3ee419d2519b28a0be09257a115dd9d
4
+ data.tar.gz: 0761a1d7677fbc7d10914a5733ccdcdb38dc64602a50fa192b3ccf8bdfac2de2
5
+ SHA512:
6
+ metadata.gz: eb53946bf4defe659875a117a18f495a4f49b04284f311c8f4217119a3e4f14880e56fb949a098c2ea38dc89972fd92d67af489c68209b8d72c4d6edf654ae98
7
+ data.tar.gz: 3ed77630118d6d71dc8bdb891eff078e9a9ad2fbb08bbf97f6df0c46b9c1fdeec9aa5c0262176f063e2a62eb636e8589389fb42c4c288c3c60285e51c2fba0f6
@@ -0,0 +1,87 @@
1
+ Resque Scheduler authors
2
+ ========================
3
+
4
+ - Aaron Suggs
5
+ - Alexander Simonov
6
+ - Andrea Campolonghi
7
+ - Ben VandenBos
8
+ - Bernerd Schaefer
9
+ - Bogdan Gusiev
10
+ - Brian Landau
11
+ - Brian P O'Rourke
12
+ - Carlos Antonio da Silva
13
+ - Chris Kampmeier
14
+ - DJ Hartman
15
+ - Damon P. Cortesi
16
+ - Dan Buch
17
+ - Dave Grijalva
18
+ - David Backeus
19
+ - David Balatero
20
+ - David Doan
21
+ - David Yang
22
+ - Denis Yagofarov
23
+ - dtaniwaki
24
+ - Evan Tahler
25
+ - Eugene Batogov
26
+ - Giovanni Cappellotto
27
+ - Harry Lascelles
28
+ - Henrik Nyh
29
+ - Hormoz Kheradmand
30
+ - Ian Davies
31
+ - James Le Cuirot
32
+ - Jarkko Mönkkönen
33
+ - Jimmy Chao
34
+ - John Crepezzi
35
+ - John Griffin
36
+ - Jon Larkowski and Les Hill
37
+ - Jonathan Conley
38
+ - Jonathan Hyman
39
+ - Jonathan Owens
40
+ - Jordan Gardner
41
+ - Joshua Szmajda
42
+ - Justin Weiss
43
+ - Les Hill
44
+ - Luke Rodgers
45
+ - Manuel Meurer
46
+ - Matt Aimonetti
47
+ - Matt Simpson
48
+ - Matteo Centenaro
49
+ - Michael Lovitt
50
+ - Michael Nikitochkin
51
+ - Michael Rykov
52
+ - Mike MacDonald
53
+ - Nickolas Means
54
+ - Olek Janiszewski
55
+ - Olivier Brisse
56
+ - Petteri Räty
57
+ - Phil Cohen
58
+ - Rob Olson
59
+ - Russell Branca
60
+ - Ryan Biesemeyer
61
+ - Ryan Carver
62
+ - Sameer Siruguri
63
+ - Scott Francis
64
+ - Sean Stephens
65
+ - Sebastian Kippe
66
+ - Sharang Dashputre
67
+ - Spring MC
68
+ - tbprojects
69
+ - Tim Liner
70
+ - Tony Lewis
71
+ - Tom Crayford
72
+ - Tsu-Shiuan Lin
73
+ - Vincent Zhu
74
+ - Vladislav Shub
75
+ - V Sreekanth
76
+ - Warren Sangster
77
+ - Yuri Kasperovich
78
+ - andreas
79
+ - bbauer
80
+ - camol
81
+ - d4rk5eed
82
+ - fallwith
83
+ - gravis
84
+ - hpoydar
85
+ - malomalo
86
+ - sawanoboly
87
+ - serek
@@ -0,0 +1,478 @@
1
+ # Change Log
2
+
3
+ **ATTN**: This project uses [semantic versioning](http://semver.org/).
4
+
5
+ ## [5.0.0] - Unreleased
6
+
7
+ ## [4.4.0] - 2019-04-11
8
+ ### Added
9
+ - Support Resque 2
10
+ - Support redis-rb 4
11
+ - Support Ruby 2.5
12
+
13
+ ### Fixed
14
+ - Redis timeouts no longer crash the scheduler process
15
+ - Fix race condition when running multiple schedulers
16
+ - Fix setting the `poll_sleep_amount` option
17
+ - Escape class names in resque-web /delayed URLs
18
+
19
+ ## Changed
20
+ - Addressed redis-namespace deprecation warnings
21
+ - Ensure `enqueue_in` args are Numeric, catching a common issue passing `ActiveSupport::Duration`
22
+
23
+ ## [4.3.1] - 2017-11-20
24
+ ### Changed
25
+ - Add support and testing for ruby 2.4
26
+ - Change log format and file name
27
+ - Drop testing on ruby 1.9.3
28
+ - `Lock::Resilient`: Refresh lua script sha if it does not exist in redis server
29
+
30
+ ### Fixed
31
+ - Reporting version via `resque-scheduler --version`
32
+ - Class name escaping in `/delayed` view
33
+
34
+ ## [4.3.0] - 2016-06-26
35
+ ### Added
36
+ - Windows testing on Appveyor
37
+ - Code of Conduct
38
+
39
+ ### Changed
40
+ - Silence output by default when daemonizing
41
+ - Update vagrant setup
42
+ - Update gem metadata per latest Bundler defaults
43
+
44
+ ## [4.2.1] - 2016-06-08
45
+ ### Added
46
+ - Docs improvements
47
+
48
+ ### Changed
49
+ - Optimization of `find_delayed_selection`
50
+ - More defensive code around redis disconnects
51
+ - Only trap existing signals on given platform
52
+ - RuboCop auto-fixes
53
+ - Dependency updates
54
+
55
+ ## [4.2.0] - 2016-04-29
56
+ ### Added
57
+ - Index column to scheduler tab
58
+ - Failure hook support for better extensibility
59
+
60
+ ### Changed
61
+ - Clean up and simplify the scheduling extension
62
+ - Make `Resque::Scheduler.logger` accessible to user
63
+ - Default failure handler now outputs stacktrace
64
+ - Update rufus-scheduler
65
+
66
+ ### Fixed
67
+ - Displaying schedules appropriate to the `env` in scheduler UI
68
+ - A race condition in concurrent restarts
69
+
70
+ ## [4.1.0] - 2016-02-10
71
+ ### Added
72
+ - View helper to cut down on repetition
73
+ - `Resque.(find|enqueue)_delayed_selection` methods to complement
74
+ `Resque.remove_delayed_selection`
75
+
76
+ ### Changed
77
+ - Leave undefined env vars unset in internal options hash
78
+ - Insulate checking `Rails.env`
79
+ - Documentation updates and typo fixes
80
+
81
+ ### Fixed
82
+ - Check thread life only if present
83
+
84
+ ## [4.0.0] - 2014-12-21
85
+ ### Added
86
+ - Show current master in the web UI
87
+
88
+ ### Changed
89
+ - Bump rufus-scheduler dependency to `~> 3.0`
90
+ - Address warning from redis-namespace related to `#unwatch`
91
+ - Documentation updates
92
+
93
+ ### Fixed
94
+ - Bugfix related to schedule check when no jobs are in the queue
95
+
96
+ ## [3.1.0] - 2014-12-21
97
+ ### Added
98
+ - Note in README.md about production redis deployment configuration
99
+ - Better PID file cleanup
100
+ - Option to filter by job class in `Resque.remove_delayed_selection`
101
+ - Tell-don't-ask with `Resque.schedule` to enable atomic clear & set
102
+
103
+ ### Changed
104
+ - Avoid use of redis `KEYS` command in `Resque.remove_delayed_selection`
105
+
106
+ ### Fixed
107
+ - Only release master lock if it belongs to us
108
+ - Only override configuration options if provided
109
+
110
+ ## [3.0.0] - 2014-05-27
111
+ ### Added
112
+ - Vagrant setup
113
+ - Support for last execution information through the web
114
+ - CodeClimate integration
115
+ - `Resque.delayed?` and `Resque.next_delayed_schedule`
116
+ - Allow scheduled jobs to be deleted via resque web
117
+
118
+ ### Changed
119
+ - The grand re-namespacing of `resque_scheduler/(.*)` =>
120
+ `resque/scheduler/\1`
121
+ - "Refactoring"
122
+ - Cleanup of a ton of rubocop offenses
123
+ - Documentation updates
124
+ - Handling signals while "sleeping" by relying on `Thread#wakeup`
125
+ - Testing against same rubies as resque (+ 2.1.1)
126
+ - Renamed `Resque.set_last_run` to `Resque.last_enqueued_at`
127
+
128
+ ### Fixed
129
+ - Duplicated layout for `search_form` partial template.
130
+ - Issue where Web UI was ONLY showing jobs that only run in the current
131
+ environment
132
+
133
+ ## [2.5.5] - 2014-02-27
134
+ ### Changed
135
+ - Only showing link to job with args if job is present
136
+ - Only showing scheduled jobs that match current env or omit env
137
+ - Ensuring lock and acquire lua scripts are refreshed on timeout change
138
+ - Switch to using `mono_logger` instead of stdlib `logger`
139
+
140
+ ## [2.5.4] - 2014-02-17
141
+ ### Changed
142
+ - Documentation updates
143
+
144
+ ## [2.5.3] - 2014-02-12
145
+ ### Fixed
146
+ - Handling signals during poll sleep
147
+
148
+ ## [2.5.2] - 2014-02-11
149
+ ### Changed
150
+ - Pinning down dependency versions more tightly
151
+
152
+ ## [2.5.1] - 2014-02-09
153
+ ### Fixed
154
+ - Make signal handling (really) Ruby 2 compatible
155
+
156
+ ## [2.5.0] - 2014-02-09
157
+ ### Added
158
+ - Search feature to the Delayed tab in Resque Web
159
+
160
+ ### Changed
161
+ - Use `logger.error` when logging errors from `handle_errors`
162
+
163
+ ### Fixed
164
+ - Confusion with redis version requirements in `README.md`
165
+
166
+ ## [2.4.0] - 2014-01-14
167
+ ### Added
168
+ - Including optional env and app names in procline
169
+ - A standalone `resque-scheduler` executable
170
+ - Support for persistence of dynamic schedules
171
+ - `.configure` convenience method for block-style configuration
172
+ - `.remove_delayed_selection` method to remove based on result of a block
173
+ - Support for viewing all schedules for a job in web UI
174
+
175
+ ### Changed
176
+ - Bumping the copyright year
177
+ - Corrected doc for syntax of class and every keys
178
+ - Use resque redis namespace in the master lock key
179
+ - Various test improvements, :bug: fixes, and documentation updates!
180
+
181
+ ### Removed
182
+ - **POSSIBLE BREAKING CHANGE**: Dropping support for ree
183
+
184
+ ### Fixed
185
+ - An explosion regarding `every` in the views
186
+ - Unsafe shutdown in Ruby 2
187
+
188
+ ## 2.3.1 (2013-11-20)
189
+ ### Fixed
190
+ - `require_paths` in gemspec
191
+
192
+ ## 2.3.0 (2013-11-07)
193
+ ### Added
194
+ - Add rufus scheduler `every` notice to README
195
+ - Specify MIT license in gemspec
196
+
197
+ ### Changed
198
+ - **BREAKING CHANGE**: Added `RESQUE_SCHEDULER_INTERVAL` in place of `INTERVAL`
199
+ - Use `Float()` instead of `Integer()` to calculate poll sleep amount
200
+ - Upgraded dependence of Resque to support 1.25
201
+ - Use `Resque.validate` instead of custom `.validate_job!`
202
+
203
+ ### Fixed
204
+ - Re-introduced `ThreadError` on Ruby 2
205
+
206
+ ## 2.2.0 (2013-10-13)
207
+ ### Added
208
+ - Support for parameterized resque jobs.
209
+ - Allowing prefix for `master_lock_key`.
210
+ - `Resque.clean_schedules` method, which is useful when setting up the scheduler
211
+ for the first time.
212
+
213
+ ### Changed
214
+ - Locking rufus-scheduler dependency to `~> 2.0`
215
+ - Updated redis dependency to `>= 3.0.0`
216
+
217
+ ### Fixed
218
+ - Bug fixes related to first time schedule retrieval and missing schedules.
219
+
220
+ ## 2.1.0 (2013-09-20)
221
+ ### Added
222
+ - Add `#scheduled_at` which returns an array of timestamps at which the
223
+ specified job is scheduled
224
+ - Add `#enqueue_delayed` for enqueueing specific delayed jobs immediately
225
+ - Show server local time in resque-web
226
+ - Add support for configuring `Resque::Scheduler.poll_sleep_amount` via the
227
+ `INTERVAL` environmental variable.
228
+
229
+ ### Changed
230
+ - Locking to resque < 1.25.0 (for now)
231
+ - Syncing stdout/stderr
232
+ - Using a logger instead of `#puts`, configurable via `LOGFILE`, `VERBOSE`, and
233
+ `MUTE` environmental variables, as well as being settable via
234
+ `Resque::Scheduler#logger`
235
+ - Enqueue immediately if job is being enqueued in the past
236
+
237
+ ### Removed
238
+ - Dependency on `Resque::Helpers`
239
+
240
+ ### Fixed
241
+ - Ensuring `Resque.schedule=` sets rather than appends
242
+ - Process daemonization fixes including stdio redirection and redis client
243
+ reconnection
244
+ - Scheduler template when arrays are passed to rufus-scheduler
245
+ - Fixed shutdown in ruby 2.0.0
246
+
247
+ ## [2.0.1] - 2013-03-20
248
+ ### Added
249
+ - Locking to support master failover
250
+ - Allow custom job classes to be used in `Resque.enqueue_at`
251
+ - Allowing `#enqueue_at` to call `#scheduled` when `Resque.inline` is `true`
252
+
253
+ ### Changed
254
+ - More efficient `#remove_delayed` implementation
255
+
256
+ ## [2.0.0] - 2012-05-04
257
+ ### Added
258
+ - Support for Resque.inline configuration (carlosantoniodasilva)
259
+
260
+ ### Fixed
261
+ - Possible job loss race condition around deleting delayed queues and enqueuing
262
+ a job 0 seconds in the future.
263
+
264
+ ## [2.0.0.h] - 2012-03-19
265
+ ### Added
266
+ - Plugin support with hooks (andreas)
267
+
268
+ ## [2.0.0.f] - 2011-11-03
269
+ ### Added
270
+ - Support `ENV['BACKGROUND']` flag for daemonizing (bernerdschaefer)
271
+ - Added support for `before_schedule` and `after_schedule` hooks (yaauie)
272
+ - Added `remove_delayed_job_from_timestamp` to remove delayed jobs from
273
+ a given timestamp.
274
+
275
+ ### Fixed
276
+ - Address race condition with delayed jobs (using redis transactions)
277
+
278
+ ## [2.0.0.e] - 2011-09-16
279
+ ### Added
280
+ - `enqueue_at_with_queue`/`enqueue_in_with_queue` support (niralisse)
281
+ - `Resque::Scheduler.poll_sleep_amount` to allow for configuring
282
+ the sleep time b/w delayed queue polls.
283
+ - "Clear Delayed Jobs" button to the Delayed Jobs page (john-griffin)
284
+
285
+ ### Fixed
286
+ - Pagination issue on the Delayed tab
287
+
288
+ ## [2.0.0.d] - 2011-04-04
289
+ ### Changed
290
+ - Porting bug fixes from v1.9-stable
291
+
292
+ ## [2.0.0.c] - 2011-03-25
293
+ ### Changed
294
+ - Rake task drop a pid file (sreeix)
295
+
296
+ ## [2.0.0.b] - 2011-02-25
297
+ ### Fixed
298
+ - Bugs
299
+
300
+ ## 2.0.0.a - 2010-12-10
301
+ ### Added
302
+ - Dynamic schedule support (brianjlandau, davidyang)
303
+
304
+ ### Changed
305
+ - Now depends on redis >=1.3
306
+
307
+ ## [1.9.11] - 2013-11-20
308
+ ### Fixed
309
+ - Behavior of `#validate_job!` via `#enqueue_at_with_queue` #286
310
+ - `require_paths` in gemspec #288
311
+
312
+ ## [1.9.10] - 2013-09-19
313
+ ### Added
314
+ - Backported `#enqueue_at_with_queue`
315
+ - Locking to resque < 1.25.0
316
+ - Ruby 1.8 compatibility in scheduler tab when schedule keys are symbols
317
+
318
+ ### Changed
319
+ - Mocha setup compatibility
320
+
321
+ ## [1.9.9] - 2011-03-29
322
+ ### Added
323
+ - Compatibility with resque 1.15.0
324
+
325
+ ## [1.9.8] - 2011-01-14
326
+ ### Changed
327
+ - Validates delayed jobs prior to insertion into the delayed queue (bogdan)
328
+ - Rescue exceptions that occur during queuing and log them (dgrijalva)
329
+
330
+ ## [1.9.7] - 2010-11-09
331
+ ### Added
332
+ - Support for rufus-scheduler "every" syntax (fallwith)
333
+ - Ability to pass a Time to `handle_delayed_items` for testing/staging (rcarver)
334
+
335
+ ## [1.9.6] - 2010-10-08
336
+ ### Added
337
+ - Support for custom job classes (like resque-status) (mattetti)
338
+
339
+ ## [1.9.5] - 2010-09-09
340
+ ### Changed
341
+ - Updated scheduler rake task to allow for an alternate setup task
342
+ to avoid loading the entire stack. (chewbranca)
343
+
344
+ ### Fixed
345
+ - Sig issue on win32 (#25)
346
+
347
+ ## [1.9.4] - 2010-07-29
348
+ ### Added
349
+ - Ability to remove jobs from delayed queue (joshsz)
350
+
351
+ ### Fixed
352
+ - Issue #23 (removing .present? reference)
353
+
354
+ ## [1.9.3] - 2010-07-07
355
+ ### Fixed
356
+ - Bug fix (#19)
357
+
358
+ ## [1.9.2] - 2010-06-16
359
+ ### Fixed
360
+ - Issue with redis gem 2.0.1 and redis server 1.2.6 (dbackeus)
361
+
362
+ ## [1.9.1] - 2010-06-04
363
+ ### Fixed
364
+ - Issue with redis server 1.2.6 and redis gem 2.0.1
365
+
366
+ ## [1.9.0] - 2010-06-04
367
+ ### Added
368
+ - Redis 2.0 support (bpo)
369
+
370
+ ## [1.8.2] - 2010-06-04
371
+ ### Added
372
+ - Queue now functionality to delayed timestamps (daviddoan)
373
+
374
+ ## [1.8.1] - 2010-05-19
375
+ ### Added
376
+ - `rails_env` for scheduled jobs to support scoping jobs by
377
+ `RAILS_ENV` (gravis).
378
+ - Adding gemspec for bundler support.
379
+
380
+ ### Fixed
381
+ - Ruby 1.8.6 compatibility issue.
382
+
383
+ ## [1.8.0] - 2010-04-14
384
+ ### Added
385
+ - Tests for resque-web (gravis)
386
+
387
+ ### Changed
388
+ - Moving version to match corresponding resque version
389
+ - Sorting schedule on Scheduler tab
390
+
391
+ ## [1.0.5] - 2010-03-01
392
+ ### Fixed
393
+ - Support for overriding queue from schedule config.
394
+
395
+ ### Changed
396
+ - The queue is now stored with the job and arguments in the delayed queue so
397
+ there is no longer a need for the scheduler to load job classes to introspect
398
+ the queue.
399
+
400
+ ### Removed
401
+ - resque-web dependency on loading the job classes for "Queue Now", provided
402
+ "queue" is specified in the schedule.
403
+
404
+ ## [1.0.4] - 2010-02-26
405
+ ### Added
406
+ - Support for specifying the queue to put the job onto. This allows for you to
407
+ have one job that can go onto multiple queues and be able to schedule jobs
408
+ without having to load the job classes.
409
+
410
+ ## [1.0.3] - 2010-02-11
411
+ ### Added
412
+ - Support for scheduled jobs with empty crons. This is helpful to have jobs that
413
+ you don't want on a schedule, but do want to be able to queue by clicking a
414
+ button.
415
+
416
+ ## [1.0.2] - 2010-02-10
417
+ ### Changed
418
+ - Delayed Job tab to display job details if only 1 job exists for a given
419
+ timestamp
420
+
421
+ ## [1.0.1] - 2010-02-01
422
+ ### Fixed
423
+ - Delayed jobs close together resulted in a 5 second sleep
424
+
425
+ ## [1.0.0] - 2009-12-21
426
+ ### Added
427
+ - Initial release
428
+
429
+ [Unreleased]: https://github.com/resque/resque-scheduler/compare/v4.4.0...HEAD
430
+ [4.4.0]: https://github.com/resque/resque-scheduler/compare/v4.3.1...v4.4.0
431
+ [4.3.1]: https://github.com/resque/resque-scheduler/compare/v4.3.0...v4.3.1
432
+ [4.3.0]: https://github.com/resque/resque-scheduler/compare/v4.2.1...v4.3.0
433
+ [4.2.1]: https://github.com/resque/resque-scheduler/compare/v4.2.0...v4.2.1
434
+ [4.2.0]: https://github.com/resque/resque-scheduler/compare/v4.1.0...v4.2.0
435
+ [4.1.0]: https://github.com/resque/resque-scheduler/compare/v4.0.0...v4.1.0
436
+ [4.0.0]: https://github.com/resque/resque-scheduler/compare/v3.1.0...v4.0.0
437
+ [3.1.0]: https://github.com/resque/resque-scheduler/compare/v3.0.0...v3.1.0
438
+ [3.0.0]: https://github.com/resque/resque-scheduler/compare/v2.5.5...v3.0.0
439
+ [2.5.5]: https://github.com/resque/resque-scheduler/compare/v2.5.4...v2.5.5
440
+ [2.5.4]: https://github.com/resque/resque-scheduler/compare/v2.5.3...v2.5.4
441
+ [2.5.3]: https://github.com/resque/resque-scheduler/compare/v2.5.2...v2.5.3
442
+ [2.5.2]: https://github.com/resque/resque-scheduler/compare/v2.5.1...v2.5.2
443
+ [2.5.1]: https://github.com/resque/resque-scheduler/compare/v2.5.0...v2.5.1
444
+ [2.5.0]: https://github.com/resque/resque-scheduler/compare/v2.4.0...v2.5.0
445
+ [2.4.0]: https://github.com/resque/resque-scheduler/compare/v2.3.1...v2.4.0
446
+ [2.3.1]: https://github.com/resque/resque-scheduler/compare/v2.3.0...v2.3.1
447
+ [2.3.0]: https://github.com/resque/resque-scheduler/compare/v2.2.0...v2.3.0
448
+ [2.2.0]: https://github.com/resque/resque-scheduler/compare/v2.1.0...v2.2.0
449
+ [2.1.0]: https://github.com/resque/resque-scheduler/compare/v2.0.1...v2.1.0
450
+ [2.0.1]: https://github.com/resque/resque-scheduler/compare/v2.0.0...v2.0.1
451
+ [2.0.0]: https://github.com/resque/resque-scheduler/compare/v2.0.0.h...v2.0.0
452
+ [2.0.0.h]: https://github.com/resque/resque-scheduler/compare/v2.0.0.f...v2.0.0.h
453
+ [2.0.0.f]: https://github.com/resque/resque-scheduler/compare/v2.0.0.e...v2.0.0.f
454
+ [2.0.0.e]: https://github.com/resque/resque-scheduler/compare/v2.0.0.d...v2.0.0.e
455
+ [2.0.0.d]: https://github.com/resque/resque-scheduler/compare/v2.0.0.c...v2.0.0.d
456
+ [2.0.0.c]: https://github.com/resque/resque-scheduler/compare/61c7b5f...v2.0.0.c
457
+ [2.0.0.b]: https://github.com/resque/resque-scheduler/compare/v2.0.0.a...61c7b5f
458
+ [1.9.11]: https://github.com/resque/resque-scheduler/compare/v1.9.10...v1.9.11
459
+ [1.9.10]: https://github.com/resque/resque-scheduler/compare/v1.9.9...v1.9.10
460
+ [1.9.9]: https://github.com/resque/resque-scheduler/compare/v1.9.8...v1.9.9
461
+ [1.9.8]: https://github.com/resque/resque-scheduler/compare/v1.9.7...v1.9.8
462
+ [1.9.7]: https://github.com/resque/resque-scheduler/compare/v1.9.6...v1.9.7
463
+ [1.9.6]: https://github.com/resque/resque-scheduler/compare/v1.9.5...v1.9.6
464
+ [1.9.5]: https://github.com/resque/resque-scheduler/compare/v1.9.4...v1.9.5
465
+ [1.9.4]: https://github.com/resque/resque-scheduler/compare/v1.9.3...v1.9.4
466
+ [1.9.3]: https://github.com/resque/resque-scheduler/compare/v1.9.2...v1.9.3
467
+ [1.9.2]: https://github.com/resque/resque-scheduler/compare/v1.9.1...v1.9.2
468
+ [1.9.1]: https://github.com/resque/resque-scheduler/compare/v1.9.0...v1.9.1
469
+ [1.9.0]: https://github.com/resque/resque-scheduler/compare/v1.8.2...v1.9.0
470
+ [1.8.2]: https://github.com/resque/resque-scheduler/compare/v1.8.1...v1.8.2
471
+ [1.8.1]: https://github.com/resque/resque-scheduler/compare/v1.8.0...v1.8.1
472
+ [1.8.0]: https://github.com/resque/resque-scheduler/compare/v1.0.5...v1.8.0
473
+ [1.0.5]: https://github.com/resque/resque-scheduler/compare/v1.0.4...v1.0.5
474
+ [1.0.4]: https://github.com/resque/resque-scheduler/compare/v1.0.3...v1.0.4
475
+ [1.0.3]: https://github.com/resque/resque-scheduler/compare/v1.0.2...v1.0.3
476
+ [1.0.2]: https://github.com/resque/resque-scheduler/compare/v1.0.1...v1.0.2
477
+ [1.0.1]: https://github.com/resque/resque-scheduler/compare/v1.0.0...v1.0.1
478
+ [1.0.0]: https://github.com/resque/resque-scheduler/compare/v0.0.1...v1.0.0