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