- Avoid Hash#partition https://bugs.ruby-lang.org/issues/16252
- Fix Fugit::Nat "zero dark forty", gh-107
- Ensure @yearly and other specials accept a timezone
- Prevent nat parsing chocking on long input (> 256 chars), gh-104
- Revert gh-86 ban on
every 27 hours
/* */27 * * *
for gh-103
- Fix on Ruby 2.2.6 thanks to @aunghtain, gh-93
- Implement
Fugit::Cron#within(time_start, time_end)
- Implement
Fugit::Cron#within(time_range)
- Implement iterator-returning
Fugit::Cron#next
and#prev
- Let nat parse "last", gh-88
- Change that I am not sure about, gh-86
- Fix for month subtraction, gh-84, @mreinsch
- Fix duration - time, gh-85, @mreinsch
- Introduce Fugit.parse_cronish and .do_parse_cronish, gh-70
- Fix 'every day at 12:15 am', gh-81
- Fix 'every day at 5:00pm', gh-81
- Change behaviour for "0 0/5 * * *", gh-79 go "every 5h start hour 0", previous behaviour only triggered at hour 0
- Introduce the & cron syntax (day-of-month AND day-of-week), gh-78
- Change how cron deals with modulo and offset, gh-76
- Be liberal with extra commas, gh-77
- Ensure input strings are stripped before parsing, gh-74
- Fix Fugit::Cron.to_s vs "0 13 * * wed%2", gh-68
- Simplify inc_day, gh-62
- Fix #next_time break issue for America/Santiago into DST, gh-60
- Accept "at 12 noon" and "at 12 midday" as "* 12 * * *", gh-57
- Accept "at 12pm" as "0 12 * * *", not "0 24 * * *", gh-57
- Accept "15/30 * * * *" as "15-59/30 * * * *", gh-56
- Accept "* * * Mon%2+2", gh-47
- Ensure leaving ZH DST is OK, gh-53
- Fix entering DST issue, gh-53
- Fix Fugit::Cron.previous_time vs last day of month, gh-51
- Let Fugit::Cron.parse('') return nil, gh-49
- Suppress warning, gh-46, thanks @amatsuda
- Ensure cron accepts "25-L" for monthday, gh-45
- Allow for "every weekday 8am to 5pm", gh-44
- Allow "every day from the 25th to the last", gh-45
- Rework nat parser
- Prevent "New York skip", gh-43, thanks @honglooker
- Parse 'every day at 8:30' and ' at 8:30 pm', gh-42
- Parse 'every 12 hours at minute 50', gh-41
- Introduce new nat syntaxed, gh-38
- Rework nat parser
- Implement cron @noon, gh-37
- Normalize "every x", gh-37
- Prevent #rough_frequency returning 0, gh-36
- Fix Cron#match?(t) with respect to the cron's timezone, gh-31
- Allow for "* 0-24 * * *", gh-30
- Fix nat parsing for 'every day at 18:00 and 18:15', gh-29
- and for 'every day at 18:00, 18:15, 20:00, and 20:15', gh-29
- Ensure multi: :fail doesn't force into multi, gh-28
- Fix nat parsing for 'every Fri-Sun at 18:00', gh-27
- Introduce Fugit.parse_nat('every day at 18:00 and 19:15', multi: true)
- Rework AM/PM parsing
- Allow for "from Monday to Friday at 19:22", gh-25
- Allow for "every Monday to Friday at 18:20", gh-25
- Allow for "every day at 18:00 and 20:00", gh-24
- Fix Fugit.parse vs "every 15 minutes", gh-22
- Return nil when parsing a cron with February 30 and friend, gh-21
- Accept "/15 * * * *" et al, gh-19 and resque/resque-scheduler#649
- Stop fooling around and stick to https://semver.org
- Implement
"0 9 * * sun%2+1"
- Simplify cron parser
- Fix cron
"0 9 29 feb *"
endless loop, gh-18 - Fix cron endless loop when #previous_time(t) and t matches, gh-15
- Simplify Cron #next_time / #previous_time breaker system, gh-15 Thanks @godfat and @conet
- Ensure Cron#next_time happens in cron's time zone, gh-12
- Add breaker to Cron #next_time / #previous_time, gh-13
- Prevent 0 as a month in crons, gh-10
- Prevent 0 as a day of month in crons, gh-10
- Ensure
Etc/GMT-11
and all Olson timezone names are recognized in cron and nat strings, gh-9
- Add Fugit::Cron#rough_frequency (for jmettraux/rufus-scheduler#276)
- Add duration support for Fugit::Nat (@cristianbica gh-7)
- Fix Duration not correctly parsing minutes and seconds long format (@cristianbica gh-7)
- Add timezone support for Fugit::Nat (@cristianbica gh-7)
- Use timezone name when converting a Fugit::Cron to cron string (@cristianbica gh-7)
- Silenced Ruby warnings (Utilum in gh-4)
- Added Fugit::Cron#seconds (Tero Marttila in gh-3)
- Depend on et-orbi 1.1.1 and better
- Travel in Cron zone in #next_time and #previous_time, return from zone
- Parse and store timezone in Fugit::Cron
- Introduce Fugit::Duration#deflate month: d / year: d
- Introduce Fugit::Duration#drop_seconds
- Alias Fugit::Duration#to_h to Fugit::Duration#h
- Introduce to_rufus_s (1y2M3d) vs to_plain_s (1Y2M3D)
- Ensure Duration#deflate preserves at least
{ sec: 0 }
- Stringify 0 seconds as "0s"
- Ignore "-5" and "-5.", only accept "-5s" and "-5.s"
- Introduce "signed durations", "-1Y+2Y-3m"
- Ensure
1.0d1.0w1.0d
gets parsed correctly - Ensure Fugit::Cron.next_time returns plain seconds (.0, not .1234...)
- Introduce Fugit::Frequency for cron
- Introduce et-orbi dependency (1.0.5 or better)
- Wire #deflate into Duration.to_long_s / .to_iso_s / .to_plain_s
- Provide Duration.to_long_s / .to_iso_s / .to_plain_s at class level
- Implement Fugit.determine_type(s)
- Rename core.rb to parse.rb
- Accept cron strings with seconds
- First version of Fugit::Nat
- Accept decimal places for duration seconds
- Alias Fugit .parse_in to .parse_duration
- Implement Fugit::Duration #inflate and #deflate
- Bring in Fugit::Duration
- Implement Fugit .parse, .parse_at and .parse_cron
- Initial release