rufus-scheduler 2.0.24 → 3.1.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 (63) hide show
  1. data/CHANGELOG.txt +76 -0
  2. data/CREDITS.txt +23 -0
  3. data/LICENSE.txt +1 -1
  4. data/README.md +1439 -0
  5. data/Rakefile +1 -5
  6. data/TODO.txt +149 -55
  7. data/lib/rufus/{sc → scheduler}/cronline.rb +167 -53
  8. data/lib/rufus/scheduler/job_array.rb +92 -0
  9. data/lib/rufus/scheduler/jobs.rb +633 -0
  10. data/lib/rufus/scheduler/locks.rb +95 -0
  11. data/lib/rufus/scheduler/util.rb +306 -0
  12. data/lib/rufus/scheduler/zones.rb +174 -0
  13. data/lib/rufus/scheduler/zotime.rb +154 -0
  14. data/lib/rufus/scheduler.rb +608 -27
  15. data/rufus-scheduler.gemspec +6 -4
  16. data/spec/basics_spec.rb +54 -0
  17. data/spec/cronline_spec.rb +479 -152
  18. data/spec/error_spec.rb +139 -0
  19. data/spec/job_array_spec.rb +39 -0
  20. data/spec/job_at_spec.rb +58 -0
  21. data/spec/job_cron_spec.rb +128 -0
  22. data/spec/job_every_spec.rb +104 -0
  23. data/spec/job_in_spec.rb +20 -0
  24. data/spec/job_interval_spec.rb +68 -0
  25. data/spec/job_repeat_spec.rb +357 -0
  26. data/spec/job_spec.rb +498 -109
  27. data/spec/lock_custom_spec.rb +47 -0
  28. data/spec/lock_flock_spec.rb +47 -0
  29. data/spec/lock_lockfile_spec.rb +61 -0
  30. data/spec/lock_spec.rb +59 -0
  31. data/spec/parse_spec.rb +263 -0
  32. data/spec/schedule_at_spec.rb +158 -0
  33. data/spec/schedule_cron_spec.rb +66 -0
  34. data/spec/schedule_every_spec.rb +109 -0
  35. data/spec/schedule_in_spec.rb +80 -0
  36. data/spec/schedule_interval_spec.rb +128 -0
  37. data/spec/scheduler_spec.rb +928 -124
  38. data/spec/spec_helper.rb +126 -0
  39. data/spec/threads_spec.rb +96 -0
  40. data/spec/zotime_spec.rb +396 -0
  41. metadata +56 -33
  42. data/README.rdoc +0 -661
  43. data/lib/rufus/otime.rb +0 -3
  44. data/lib/rufus/sc/jobqueues.rb +0 -160
  45. data/lib/rufus/sc/jobs.rb +0 -471
  46. data/lib/rufus/sc/rtime.rb +0 -363
  47. data/lib/rufus/sc/scheduler.rb +0 -636
  48. data/lib/rufus/sc/version.rb +0 -32
  49. data/spec/at_in_spec.rb +0 -47
  50. data/spec/at_spec.rb +0 -125
  51. data/spec/blocking_spec.rb +0 -64
  52. data/spec/cron_spec.rb +0 -134
  53. data/spec/every_spec.rb +0 -304
  54. data/spec/exception_spec.rb +0 -113
  55. data/spec/in_spec.rb +0 -150
  56. data/spec/mutex_spec.rb +0 -159
  57. data/spec/rtime_spec.rb +0 -137
  58. data/spec/schedulable_spec.rb +0 -97
  59. data/spec/spec_base.rb +0 -87
  60. data/spec/stress_schedule_unschedule_spec.rb +0 -159
  61. data/spec/timeout_spec.rb +0 -148
  62. data/test/kjw.rb +0 -113
  63. data/test/t.rb +0 -20
data/CHANGELOG.txt CHANGED
@@ -2,6 +2,78 @@
2
2
  = rufus-scheduler CHANGELOG.txt
3
3
 
4
4
 
5
+ == rufus-scheduler - 3.1.0 released 2015/04/18
6
+
7
+ - go without tzinfo (and its dependencies)
8
+ - include @ketan's #next_time improvements
9
+ - remove 2.x warning message on install
10
+
11
+
12
+ == rufus-scheduler - 3.0.9 released 2014/08/30
13
+
14
+ - fix TZ with underscores, thanks https://github.com/gnilrets
15
+ - integrate https://github.com/ecin Lock mecha
16
+
17
+
18
+ == rufus-scheduler - 3.0.8 released 2014/06/09
19
+
20
+ - handle TZInfo errors on DST transitions, thanks https://github.com/junhanamaki
21
+ - implement Scheduler#up?
22
+ - let schedule and schedule_at use Chronic if present
23
+ - let Rufus::Scheduler.parse use Chronic if present
24
+
25
+
26
+ == rufus-scheduler - 3.0.7 released 2014/03/18
27
+
28
+ - implement Scheduler #occurrences and #timeline, inspired by kreynolds
29
+ - implement Job #last_work_time and #mean_work_time
30
+ - implement Job#count
31
+ - add more info to the stderr error output (scheduler/tz info)
32
+ - prevent skipping a day on switch to summertime, gh-114, thanks Matteo
33
+
34
+
35
+ == rufus-scheduler - 3.0.6 released 2014/02/14
36
+
37
+ - avoid "can't be called from trap context" on Ruby 2.0, gh-98
38
+
39
+
40
+ == rufus-scheduler - 3.0.5 released 2014/01/30
41
+
42
+ - implement Job#call(do_rescue=false), gh-97
43
+ - implement :first => :now for repeat jobs, gh-96
44
+
45
+
46
+ == rufus-scheduler - 3.0.4 released 2014/01/19
47
+
48
+ - make CronLine#frequency faster (to avoid 20s schedule_cron times)
49
+
50
+
51
+ == rufus-scheduler - 3.0.3 released 2013/12/12
52
+
53
+ - CronLine#previous_time fix by Yassen Bantchev (https://github.com/yassenb)
54
+ - introduce ZookeptScheduler example in the readme
55
+ - rename #consider_lockfile to #lock and introduce #unlock
56
+
57
+
58
+ == rufus-scheduler - 3.0.2 released 2013/10/22
59
+
60
+ - default :max_work_threads to 28
61
+ - fix "rufus rushes to create work threads" issue, thanks Gatis Tomsons
62
+ - introduce Rufus::Scheduler::NotRunningError, thanks Gatis Tomsons
63
+
64
+
65
+ == rufus-scheduler - 3.0.1 released 2013/10/19
66
+
67
+ - fix post_install_message, thanks Ted Pennings
68
+ - bring back .parse_time_string and .parse_duration_string
69
+
70
+
71
+ == rufus-scheduler - 3.0.0 released 2013/10/02
72
+
73
+ - complete rewrite.
74
+ - introduce scheduler.interval('10s') { ... }
75
+
76
+
5
77
  == rufus-scheduler - 2.0.24 released 2013/09/02
6
78
 
7
79
  - lowered tzinfo dependency to >= 0.3.22
@@ -142,5 +214,9 @@
142
214
  == rufus-scheduler - 2.0.1 released 2009/05/07
143
215
  == rufus-scheduler - 2.0.0 released 2009/05/07
144
216
 
217
+ ...
218
+
145
219
  - initial release
146
220
 
221
+ (was openwferu-scheduler before that)
222
+
data/CREDITS.txt CHANGED
@@ -4,7 +4,16 @@
4
4
 
5
5
  == Contributors
6
6
 
7
+ - Ketan Padegaonkar (https://github.com/ketan) .brute_frequency improvement
8
+ - Gabriel Gilder (https://github.com/ggilder) LA DST specs
9
+ - Sterling Paramore (https://github.com/gnilrets) underscore TZ fix
10
+ - ecin (https://github.com/ecin) new lock mecha
11
+ - Adam Jonas (https://github.com/adamjonas) migrate specs to "expect"
12
+ - Yassen Bantchev (https://github.com/yassenb) CronLine#previous_time rewrite
13
+ - Eric Lindvall (https://github.com/eric) Zookeeper locked example
14
+ - Ted Pennings (https://github.com/tedpennings) typo in post_install_message
7
15
  - Tobias Kraze (https://github.com/kratob) timeout vs mutex fix
16
+ - Patrick Farrell (https://github.com/pfarrell) pointing at deprecated start_new
8
17
  - Thomas Sevestre (https://github.com/thomassevestre) :exception option
9
18
  - Matteo Cerutti - last_time / previous_time idea (and initial implementation)
10
19
  - Aimee Rose (https://github.com/AimeeRose) cronline and > 24
@@ -26,6 +35,19 @@
26
35
 
27
36
  == Feedback
28
37
 
38
+ - Michael Guymon - https://github.com/mguymon - #next_time vs :first_at
39
+ - junhanamaki - https://github.com/junhanamaki - #next_time and dst ambiguities
40
+ - kreynolds (tossrock) - inspiration for #occurrences
41
+ - Matteo - https://github.com/m4ce - dst and cron issue
42
+ - Tobias Bielohlawek - https://github.com/rngtng - missing assertion
43
+ - Joe Taylor and Agis Anastasopoulos -
44
+ http://stackoverflow.com/questions/21280870 - :first => :now and Job#call
45
+ - Gatis Tomsons - https://github.io/gacha - heavy work threads and lock errors
46
+ - https://github.com/joast - missing .to_time_string alias (code and doc)
47
+ - Tamir Duberstein - https://github.com/tamird - rdoc inaccuracies
48
+ - Kevin Bouwkamp - https://github.com/bmxpert1 - first_at issues
49
+ - Daniel Beauchamp - https://github.com/pushmatrix - pre/post trigger callbacks
50
+ - Arthur Maltson - https://github.com/amaltson - readme fixes
29
51
  - skrd - https://github.com/skrd - "/10 * * * *" cron issue
30
52
  - Hongli Lai - Scheduler#stop(:terminate => true) request
31
53
  - Tero Tilus - raises on unsupported/unknown options
@@ -56,5 +78,6 @@
56
78
 
57
79
  == and finally
58
80
 
81
+ - many thanks to the author and contributors of the tzinfo gem (http://tzinfo.github.io/)
59
82
  - many thanks to the EventMachine team (especially Aman Gupta)
60
83
 
data/LICENSE.txt CHANGED
@@ -1,5 +1,5 @@
1
1
 
2
- Copyright (c) 2005-2013, John Mettraux, jmettraux@gmail.com
2
+ Copyright (c) 2005-2015, John Mettraux, jmettraux@gmail.com
3
3
 
4
4
  Permission is hereby granted, free of charge, to any person obtaining a copy
5
5
  of this software and associated documentation files (the "Software"), to deal