chronic 0.6.3 → 0.10.2

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 (67) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +4 -3
  3. data/.travis.yml +8 -0
  4. data/HISTORY.md +76 -0
  5. data/README.md +47 -42
  6. data/Rakefile +30 -12
  7. data/chronic.gemspec +10 -4
  8. data/lib/chronic/date.rb +82 -0
  9. data/lib/chronic/grabber.rb +9 -7
  10. data/lib/chronic/handler.rb +47 -40
  11. data/lib/chronic/handlers.rb +240 -28
  12. data/lib/chronic/numerizer.rb +11 -2
  13. data/lib/chronic/ordinal.rb +28 -23
  14. data/lib/chronic/parser.rb +268 -0
  15. data/lib/chronic/pointer.rb +9 -7
  16. data/lib/chronic/repeater.rb +58 -48
  17. data/lib/chronic/repeaters/repeater_day.rb +4 -3
  18. data/lib/chronic/repeaters/repeater_day_name.rb +5 -4
  19. data/lib/chronic/repeaters/repeater_day_portion.rb +33 -18
  20. data/lib/chronic/repeaters/repeater_fortnight.rb +4 -3
  21. data/lib/chronic/repeaters/repeater_hour.rb +4 -3
  22. data/lib/chronic/repeaters/repeater_minute.rb +4 -3
  23. data/lib/chronic/repeaters/repeater_month.rb +5 -4
  24. data/lib/chronic/repeaters/repeater_month_name.rb +4 -3
  25. data/lib/chronic/repeaters/repeater_season.rb +5 -3
  26. data/lib/chronic/repeaters/repeater_second.rb +4 -3
  27. data/lib/chronic/repeaters/repeater_time.rb +35 -25
  28. data/lib/chronic/repeaters/repeater_week.rb +4 -3
  29. data/lib/chronic/repeaters/repeater_weekday.rb +4 -3
  30. data/lib/chronic/repeaters/repeater_weekend.rb +4 -3
  31. data/lib/chronic/repeaters/repeater_year.rb +6 -5
  32. data/lib/chronic/scalar.rb +40 -68
  33. data/lib/chronic/season.rb +1 -12
  34. data/lib/chronic/separator.rb +142 -23
  35. data/lib/chronic/sign.rb +49 -0
  36. data/lib/chronic/span.rb +2 -2
  37. data/lib/chronic/tag.rb +10 -15
  38. data/lib/chronic/time.rb +40 -0
  39. data/lib/chronic/time_zone.rb +9 -7
  40. data/lib/chronic/token.rb +16 -10
  41. data/lib/chronic.rb +109 -70
  42. data/test/helper.rb +8 -2
  43. data/test/{test_Chronic.rb → test_chronic.rb} +69 -34
  44. data/test/{test_DaylightSavings.rb → test_daylight_savings.rb} +1 -1
  45. data/test/{test_Handler.rb → test_handler.rb} +38 -14
  46. data/test/{test_MiniDate.rb → test_mini_date.rb} +9 -9
  47. data/test/{test_Numerizer.rb → test_numerizer.rb} +16 -2
  48. data/test/test_parsing.rb +392 -22
  49. data/test/{test_RepeaterDayName.rb → test_repeater_day_name.rb} +1 -1
  50. data/test/test_repeater_day_portion.rb +254 -0
  51. data/test/{test_RepeaterFortnight.rb → test_repeater_fortnight.rb} +1 -1
  52. data/test/{test_RepeaterHour.rb → test_repeater_hour.rb} +1 -1
  53. data/test/{test_RepeaterMinute.rb → test_repeater_minute.rb} +1 -1
  54. data/test/{test_RepeaterMonth.rb → test_repeater_month.rb} +1 -1
  55. data/test/{test_RepeaterMonthName.rb → test_repeater_month_name.rb} +1 -1
  56. data/test/{test_RepeaterSeason.rb → test_repeater_season.rb} +1 -1
  57. data/test/{test_RepeaterTime.rb → test_repeater_time.rb} +19 -1
  58. data/test/{test_RepeaterWeek.rb → test_repeater_week.rb} +1 -1
  59. data/test/{test_RepeaterWeekday.rb → test_repeater_weekday.rb} +1 -1
  60. data/test/{test_RepeaterWeekend.rb → test_repeater_weekend.rb} +1 -1
  61. data/test/{test_RepeaterYear.rb → test_repeater_year.rb} +1 -1
  62. data/test/{test_Span.rb → test_span.rb} +2 -2
  63. data/test/{test_Token.rb → test_token.rb} +1 -1
  64. metadata +129 -87
  65. data/.gemtest +0 -0
  66. data/.yardopts +0 -3
  67. data/lib/chronic/chronic.rb +0 -323
@@ -0,0 +1,254 @@
1
+ require 'helper'
2
+
3
+ class TestRepeaterDayPortion < TestCase
4
+
5
+ def setup
6
+ @now = Time.local(2006, 8, 16, 14, 0, 0, 0)
7
+ end
8
+
9
+ def test_am_future
10
+ day_portion = Chronic::RepeaterDayPortion.new(:am)
11
+ day_portion.start = @now
12
+
13
+ next_time = day_portion.next(:future)
14
+ assert_equal Time.local(2006, 8, 17, 00), next_time.begin
15
+ assert_equal Time.local(2006, 8, 17, 11, 59, 59), next_time.end
16
+
17
+ next_next_time = day_portion.next(:future)
18
+ assert_equal Time.local(2006, 8, 18, 00), next_next_time.begin
19
+ assert_equal Time.local(2006, 8, 18, 11, 59, 59), next_next_time.end
20
+ end
21
+
22
+ def test_am_past
23
+ day_portion = Chronic::RepeaterDayPortion.new(:am)
24
+ day_portion.start = @now
25
+
26
+ next_time = day_portion.next(:past)
27
+ assert_equal Time.local(2006, 8, 16, 00), next_time.begin
28
+ assert_equal Time.local(2006, 8, 16, 11, 59, 59), next_time.end
29
+
30
+ next_next_time = day_portion.next(:past)
31
+ assert_equal Time.local(2006, 8, 15, 00), next_next_time.begin
32
+ assert_equal Time.local(2006, 8, 15, 11, 59, 59), next_next_time.end
33
+ end
34
+
35
+ def test_am_future_with_daylight_savings_time_boundary
36
+ @now = Time.local(2012,11,3,0,0,0)
37
+ day_portion = Chronic::RepeaterDayPortion.new(:am)
38
+ day_portion.start = @now
39
+
40
+ next_time = day_portion.next(:future)
41
+ assert_equal Time.local(2012, 11, 4, 00), next_time.begin
42
+ assert_equal Time.local(2012, 11, 4, 11, 59, 59), next_time.end
43
+
44
+ next_next_time = day_portion.next(:future)
45
+
46
+ assert_equal Time.local(2012, 11, 5, 00), next_next_time.begin
47
+ assert_equal Time.local(2012, 11, 5, 11, 59, 59), next_next_time.end
48
+ end
49
+
50
+ def test_pm_future
51
+ day_portion = Chronic::RepeaterDayPortion.new(:pm)
52
+ day_portion.start = @now
53
+
54
+ next_time = day_portion.next(:future)
55
+ assert_equal Time.local(2006, 8, 17, 12), next_time.begin
56
+ assert_equal Time.local(2006, 8, 17, 23, 59, 59), next_time.end
57
+
58
+ next_next_time = day_portion.next(:future)
59
+ assert_equal Time.local(2006, 8, 18, 12), next_next_time.begin
60
+ assert_equal Time.local(2006, 8, 18, 23, 59, 59), next_next_time.end
61
+ end
62
+
63
+ def test_pm_past
64
+ day_portion = Chronic::RepeaterDayPortion.new(:pm)
65
+ day_portion.start = @now
66
+
67
+ next_time = day_portion.next(:past)
68
+ assert_equal Time.local(2006, 8, 15, 12), next_time.begin
69
+ assert_equal Time.local(2006, 8, 15, 23, 59, 59), next_time.end
70
+
71
+ next_next_time = day_portion.next(:past)
72
+ assert_equal Time.local(2006, 8, 14, 12), next_next_time.begin
73
+ assert_equal Time.local(2006, 8, 14, 23, 59, 59), next_next_time.end
74
+ end
75
+
76
+ def test_pm_future_with_daylight_savings_time_boundary
77
+ @now = Time.local(2012,11,3,0,0,0)
78
+ day_portion = Chronic::RepeaterDayPortion.new(:pm)
79
+ day_portion.start = @now
80
+
81
+ next_time = day_portion.next(:future)
82
+ assert_equal Time.local(2012, 11, 3, 12), next_time.begin
83
+ assert_equal Time.local(2012, 11, 3, 23, 59, 59), next_time.end
84
+
85
+ next_next_time = day_portion.next(:future)
86
+
87
+ assert_equal Time.local(2012, 11, 4, 12), next_next_time.begin
88
+ assert_equal Time.local(2012, 11, 4, 23, 59, 59), next_next_time.end
89
+ end
90
+
91
+ def test_morning_future
92
+ day_portion = Chronic::RepeaterDayPortion.new(:morning)
93
+ day_portion.start = @now
94
+
95
+ next_time = day_portion.next(:future)
96
+ assert_equal Time.local(2006, 8, 17, 6), next_time.begin
97
+ assert_equal Time.local(2006, 8, 17, 12), next_time.end
98
+
99
+ next_next_time = day_portion.next(:future)
100
+ assert_equal Time.local(2006, 8, 18, 6), next_next_time.begin
101
+ assert_equal Time.local(2006, 8, 18, 12), next_next_time.end
102
+ end
103
+
104
+ def test_morning_past
105
+ day_portion = Chronic::RepeaterDayPortion.new(:morning)
106
+ day_portion.start = @now
107
+
108
+ next_time = day_portion.next(:past)
109
+ assert_equal Time.local(2006, 8, 16, 6), next_time.begin
110
+ assert_equal Time.local(2006, 8, 16, 12), next_time.end
111
+
112
+ next_next_time = day_portion.next(:past)
113
+ assert_equal Time.local(2006, 8, 15, 6), next_next_time.begin
114
+ assert_equal Time.local(2006, 8, 15, 12), next_next_time.end
115
+ end
116
+
117
+ def test_morning_future_with_daylight_savings_time_boundary
118
+ @now = Time.local(2012,11,3,0,0,0)
119
+ day_portion = Chronic::RepeaterDayPortion.new(:morning)
120
+ day_portion.start = @now
121
+
122
+ next_time = day_portion.next(:future)
123
+ assert_equal Time.local(2012, 11, 3, 6), next_time.begin
124
+ assert_equal Time.local(2012, 11, 3, 12), next_time.end
125
+
126
+ next_next_time = day_portion.next(:future)
127
+
128
+ assert_equal Time.local(2012, 11, 4, 6), next_next_time.begin
129
+ assert_equal Time.local(2012, 11, 4, 12), next_next_time.end
130
+ end
131
+
132
+ def test_afternoon_future
133
+ day_portion = Chronic::RepeaterDayPortion.new(:afternoon)
134
+ day_portion.start = @now
135
+
136
+ next_time = day_portion.next(:future)
137
+ assert_equal Time.local(2006, 8, 17, 13), next_time.begin
138
+ assert_equal Time.local(2006, 8, 17, 17), next_time.end
139
+
140
+ next_next_time = day_portion.next(:future)
141
+ assert_equal Time.local(2006, 8, 18, 13), next_next_time.begin
142
+ assert_equal Time.local(2006, 8, 18, 17), next_next_time.end
143
+ end
144
+
145
+ def test_afternoon_past
146
+ day_portion = Chronic::RepeaterDayPortion.new(:afternoon)
147
+ day_portion.start = @now
148
+
149
+ next_time = day_portion.next(:past)
150
+ assert_equal Time.local(2006, 8, 15, 13), next_time.begin
151
+ assert_equal Time.local(2006, 8, 15, 17), next_time.end
152
+
153
+ next_next_time = day_portion.next(:past)
154
+ assert_equal Time.local(2006, 8, 14, 13), next_next_time.begin
155
+ assert_equal Time.local(2006, 8, 14, 17), next_next_time.end
156
+ end
157
+
158
+ def test_afternoon_future_with_daylight_savings_time_boundary
159
+ @now = Time.local(2012,11,3,0,0,0)
160
+ day_portion = Chronic::RepeaterDayPortion.new(:afternoon)
161
+ day_portion.start = @now
162
+
163
+ next_time = day_portion.next(:future)
164
+ assert_equal Time.local(2012, 11, 3, 13), next_time.begin
165
+ assert_equal Time.local(2012, 11, 3, 17), next_time.end
166
+
167
+ next_next_time = day_portion.next(:future)
168
+
169
+ assert_equal Time.local(2012, 11, 4, 13), next_next_time.begin
170
+ assert_equal Time.local(2012, 11, 4, 17), next_next_time.end
171
+ end
172
+
173
+ def test_evening_future
174
+ day_portion = Chronic::RepeaterDayPortion.new(:evening)
175
+ day_portion.start = @now
176
+
177
+ next_time = day_portion.next(:future)
178
+ assert_equal Time.local(2006, 8, 16, 17), next_time.begin
179
+ assert_equal Time.local(2006, 8, 16, 20), next_time.end
180
+
181
+ next_next_time = day_portion.next(:future)
182
+ assert_equal Time.local(2006, 8, 17, 17), next_next_time.begin
183
+ assert_equal Time.local(2006, 8, 17, 20), next_next_time.end
184
+ end
185
+
186
+ def test_evening_past
187
+ day_portion = Chronic::RepeaterDayPortion.new(:evening)
188
+ day_portion.start = @now
189
+
190
+ next_time = day_portion.next(:past)
191
+ assert_equal Time.local(2006, 8, 15, 17), next_time.begin
192
+ assert_equal Time.local(2006, 8, 15, 20), next_time.end
193
+
194
+ next_next_time = day_portion.next(:past)
195
+ assert_equal Time.local(2006, 8, 14, 17), next_next_time.begin
196
+ assert_equal Time.local(2006, 8, 14, 20), next_next_time.end
197
+ end
198
+
199
+ def test_evening_future_with_daylight_savings_time_boundary
200
+ @now = Time.local(2012,11,3,0,0,0)
201
+ day_portion = Chronic::RepeaterDayPortion.new(:evening)
202
+ day_portion.start = @now
203
+
204
+ next_time = day_portion.next(:future)
205
+ assert_equal Time.local(2012, 11, 3, 17), next_time.begin
206
+ assert_equal Time.local(2012, 11, 3, 20), next_time.end
207
+
208
+ next_next_time = day_portion.next(:future)
209
+
210
+ assert_equal Time.local(2012, 11, 4, 17), next_next_time.begin
211
+ assert_equal Time.local(2012, 11, 4, 20), next_next_time.end
212
+ end
213
+
214
+ def test_night_future
215
+ day_portion = Chronic::RepeaterDayPortion.new(:night)
216
+ day_portion.start = @now
217
+
218
+ next_time = day_portion.next(:future)
219
+ assert_equal Time.local(2006, 8, 16, 20), next_time.begin
220
+ assert_equal Time.local(2006, 8, 17, 0), next_time.end
221
+
222
+ next_next_time = day_portion.next(:future)
223
+ assert_equal Time.local(2006, 8, 17, 20), next_next_time.begin
224
+ assert_equal Time.local(2006, 8, 18, 0), next_next_time.end
225
+ end
226
+
227
+ def test_night_past
228
+ day_portion = Chronic::RepeaterDayPortion.new(:night)
229
+ day_portion.start = @now
230
+
231
+ next_time = day_portion.next(:past)
232
+ assert_equal Time.local(2006, 8, 15, 20), next_time.begin
233
+ assert_equal Time.local(2006, 8, 16, 0), next_time.end
234
+
235
+ next_next_time = day_portion.next(:past)
236
+ assert_equal Time.local(2006, 8, 14, 20), next_next_time.begin
237
+ assert_equal Time.local(2006, 8, 15, 0), next_next_time.end
238
+ end
239
+
240
+ def test_night_future_with_daylight_savings_time_boundary
241
+ @now = Time.local(2012,11,3,0,0,0)
242
+ day_portion = Chronic::RepeaterDayPortion.new(:night)
243
+ day_portion.start = @now
244
+
245
+ next_time = day_portion.next(:future)
246
+ assert_equal Time.local(2012, 11, 3, 20), next_time.begin
247
+ assert_equal Time.local(2012, 11, 4, 0), next_time.end
248
+
249
+ next_next_time = day_portion.next(:future)
250
+
251
+ assert_equal Time.local(2012, 11, 4, 20), next_next_time.begin
252
+ assert_equal Time.local(2012, 11, 5, 0), next_next_time.end
253
+ end
254
+ end
@@ -1,6 +1,6 @@
1
1
  require 'helper'
2
2
 
3
- class TestRepeaterFortnight < Test::Unit::TestCase
3
+ class TestRepeaterFortnight < TestCase
4
4
 
5
5
  def setup
6
6
  @now = Time.local(2006, 8, 16, 14, 0, 0, 0)
@@ -1,6 +1,6 @@
1
1
  require 'helper'
2
2
 
3
- class TestRepeaterHour < Test::Unit::TestCase
3
+ class TestRepeaterHour < TestCase
4
4
 
5
5
  def setup
6
6
  @now = Time.local(2006, 8, 16, 14, 0, 0, 0)
@@ -1,6 +1,6 @@
1
1
  require 'helper'
2
2
 
3
- class TestRepeaterMinute < Test::Unit::TestCase
3
+ class TestRepeaterMinute < TestCase
4
4
 
5
5
  def setup
6
6
  @now = Time.local(2008, 6, 25, 7, 15, 30, 0)
@@ -1,6 +1,6 @@
1
1
  require 'helper'
2
2
 
3
- class TestRepeaterMonth < Test::Unit::TestCase
3
+ class TestRepeaterMonth < TestCase
4
4
 
5
5
  def setup
6
6
  # Wed Aug 16 14:00:00 2006
@@ -1,6 +1,6 @@
1
1
  require 'helper'
2
2
 
3
- class TestRepeaterMonthName < Test::Unit::TestCase
3
+ class TestRepeaterMonthName < TestCase
4
4
 
5
5
  def setup
6
6
  # Wed Aug 16 14:00:00 2006
@@ -1,6 +1,6 @@
1
1
  require 'helper'
2
2
 
3
- class TestRepeaterSeason < Test::Unit::TestCase
3
+ class TestRepeaterSeason < TestCase
4
4
 
5
5
  def setup
6
6
  @now = Time.local(2006, 8, 16, 14, 0, 0, 0)
@@ -1,12 +1,18 @@
1
1
  require 'helper'
2
2
 
3
- class TestRepeaterTime < Test::Unit::TestCase
3
+ class TestRepeaterTime < TestCase
4
4
 
5
5
  def setup
6
6
  # Wed Aug 16 14:00:00 2006
7
7
  @now = Time.local(2006, 8, 16, 14, 0, 0, 0)
8
8
  end
9
9
 
10
+ def test_generic
11
+ assert_raises(ArgumentError) do
12
+ Chronic::RepeaterTime.new('00:01:02:03:004')
13
+ end
14
+ end
15
+
10
16
  def test_next_future
11
17
  t = Chronic::RepeaterTime.new('4:00')
12
18
  t.start = @now
@@ -25,6 +31,12 @@ class TestRepeaterTime < Test::Unit::TestCase
25
31
 
26
32
  assert_equal Time.local(2006, 8, 17, 4), t.next(:future).begin
27
33
  assert_equal Time.local(2006, 8, 18, 4), t.next(:future).begin
34
+
35
+ t = Chronic::RepeaterTime.new('0000')
36
+ t.start = @now
37
+
38
+ assert_equal Time.local(2006, 8, 17, 0), t.next(:future).begin
39
+ assert_equal Time.local(2006, 8, 18, 0), t.next(:future).begin
28
40
  end
29
41
 
30
42
  def test_next_past
@@ -39,6 +51,12 @@ class TestRepeaterTime < Test::Unit::TestCase
39
51
 
40
52
  assert_equal Time.local(2006, 8, 16, 13), t.next(:past).begin
41
53
  assert_equal Time.local(2006, 8, 15, 13), t.next(:past).begin
54
+
55
+ t = Chronic::RepeaterTime.new('0:00.000')
56
+ t.start = @now
57
+
58
+ assert_equal Time.local(2006, 8, 16, 0), t.next(:past).begin
59
+ assert_equal Time.local(2006, 8, 15, 0), t.next(:past).begin
42
60
  end
43
61
 
44
62
  def test_type
@@ -1,6 +1,6 @@
1
1
  require 'helper'
2
2
 
3
- class TestRepeaterWeek < Test::Unit::TestCase
3
+ class TestRepeaterWeek < TestCase
4
4
 
5
5
  def setup
6
6
  @now = Time.local(2006, 8, 16, 14, 0, 0, 0)
@@ -1,6 +1,6 @@
1
1
  require 'helper'
2
2
 
3
- class TestRepeaterWeekday < Test::Unit::TestCase
3
+ class TestRepeaterWeekday < TestCase
4
4
 
5
5
  def setup
6
6
  @now = Time.local(2007, 6, 11, 14, 0, 0, 0) # Mon
@@ -1,6 +1,6 @@
1
1
  require 'helper'
2
2
 
3
- class TestRepeaterWeekend < Test::Unit::TestCase
3
+ class TestRepeaterWeekend < TestCase
4
4
 
5
5
  def setup
6
6
  # Wed Aug 16 14:00:00 2006
@@ -1,6 +1,6 @@
1
1
  require 'helper'
2
2
 
3
- class TestRepeaterYear < Test::Unit::TestCase
3
+ class TestRepeaterYear < TestCase
4
4
 
5
5
  def setup
6
6
  @now = Time.local(2006, 8, 16, 14, 0, 0, 0)
@@ -1,6 +1,6 @@
1
1
  require 'helper'
2
2
 
3
- class TestSpan < Test::Unit::TestCase
3
+ class TestSpan < TestCase
4
4
 
5
5
  def setup
6
6
  # Wed Aug 16 14:00:00 UTC 2006
@@ -9,7 +9,7 @@ class TestSpan < Test::Unit::TestCase
9
9
 
10
10
  def test_span_width
11
11
  span = Chronic::Span.new(Time.local(2006, 8, 16, 0), Time.local(2006, 8, 17, 0))
12
- assert_equal (60 * 60 * 24), span.width
12
+ assert_equal((60 * 60 * 24), span.width)
13
13
  end
14
14
 
15
15
  def test_span_math
@@ -1,6 +1,6 @@
1
1
  require 'helper'
2
2
 
3
- class TestToken < Test::Unit::TestCase
3
+ class TestToken < TestCase
4
4
 
5
5
  def setup
6
6
  # Wed Aug 16 14:00:00 UTC 2006
metadata CHANGED
@@ -1,53 +1,99 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: chronic
3
- version: !ruby/object:Gem::Version
4
- hash: 1
5
- prerelease:
6
- segments:
7
- - 0
8
- - 6
9
- - 3
10
- version: 0.6.3
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.10.2
11
5
  platform: ruby
12
- authors:
6
+ authors:
13
7
  - Tom Preston-Werner
14
8
  - Lee Jarvis
15
9
  autorequire:
16
10
  bindir: bin
17
11
  cert_chain: []
18
-
19
- date: 2011-09-02 00:00:00 Z
20
- dependencies: []
21
-
12
+ date: 2013-09-09 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rake
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - '>='
19
+ - !ruby/object:Gem::Version
20
+ version: '0'
21
+ type: :development
22
+ prerelease: false
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - '>='
26
+ - !ruby/object:Gem::Version
27
+ version: '0'
28
+ - !ruby/object:Gem::Dependency
29
+ name: simplecov
30
+ requirement: !ruby/object:Gem::Requirement
31
+ requirements:
32
+ - - '>='
33
+ - !ruby/object:Gem::Version
34
+ version: '0'
35
+ type: :development
36
+ prerelease: false
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - '>='
40
+ - !ruby/object:Gem::Version
41
+ version: '0'
42
+ - !ruby/object:Gem::Dependency
43
+ name: minitest
44
+ requirement: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - ~>
47
+ - !ruby/object:Gem::Version
48
+ version: '5.0'
49
+ type: :development
50
+ prerelease: false
51
+ version_requirements: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - ~>
54
+ - !ruby/object:Gem::Version
55
+ version: '5.0'
56
+ - !ruby/object:Gem::Dependency
57
+ name: activesupport
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - '>='
61
+ - !ruby/object:Gem::Version
62
+ version: '0'
63
+ type: :development
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
22
70
  description: Chronic is a natural language date/time parser written in pure Ruby.
23
- email:
71
+ email:
24
72
  - tom@mojombo.com
25
- - lee@jarvis.co
73
+ - ljjarvis@gmail.com
26
74
  executables: []
27
-
28
75
  extensions: []
29
-
30
- extra_rdoc_files:
76
+ extra_rdoc_files:
31
77
  - README.md
32
78
  - HISTORY.md
33
79
  - LICENSE
34
- files:
35
- - .gemtest
80
+ files:
36
81
  - .gitignore
37
- - .yardopts
82
+ - .travis.yml
38
83
  - HISTORY.md
39
84
  - LICENSE
40
85
  - README.md
41
86
  - Rakefile
42
87
  - chronic.gemspec
43
88
  - lib/chronic.rb
44
- - lib/chronic/chronic.rb
89
+ - lib/chronic/date.rb
45
90
  - lib/chronic/grabber.rb
46
91
  - lib/chronic/handler.rb
47
92
  - lib/chronic/handlers.rb
48
93
  - lib/chronic/mini_date.rb
49
94
  - lib/chronic/numerizer.rb
50
95
  - lib/chronic/ordinal.rb
96
+ - lib/chronic/parser.rb
51
97
  - lib/chronic/pointer.rb
52
98
  - lib/chronic/repeater.rb
53
99
  - lib/chronic/repeaters/repeater_day.rb
@@ -69,83 +115,79 @@ files:
69
115
  - lib/chronic/scalar.rb
70
116
  - lib/chronic/season.rb
71
117
  - lib/chronic/separator.rb
118
+ - lib/chronic/sign.rb
72
119
  - lib/chronic/span.rb
73
120
  - lib/chronic/tag.rb
121
+ - lib/chronic/time.rb
74
122
  - lib/chronic/time_zone.rb
75
123
  - lib/chronic/token.rb
76
124
  - test/helper.rb
77
- - test/test_Chronic.rb
78
- - test/test_DaylightSavings.rb
79
- - test/test_Handler.rb
80
- - test/test_MiniDate.rb
81
- - test/test_Numerizer.rb
82
- - test/test_RepeaterDayName.rb
83
- - test/test_RepeaterFortnight.rb
84
- - test/test_RepeaterHour.rb
85
- - test/test_RepeaterMinute.rb
86
- - test/test_RepeaterMonth.rb
87
- - test/test_RepeaterMonthName.rb
88
- - test/test_RepeaterSeason.rb
89
- - test/test_RepeaterTime.rb
90
- - test/test_RepeaterWeek.rb
91
- - test/test_RepeaterWeekday.rb
92
- - test/test_RepeaterWeekend.rb
93
- - test/test_RepeaterYear.rb
94
- - test/test_Span.rb
95
- - test/test_Token.rb
125
+ - test/test_chronic.rb
126
+ - test/test_daylight_savings.rb
127
+ - test/test_handler.rb
128
+ - test/test_mini_date.rb
129
+ - test/test_numerizer.rb
96
130
  - test/test_parsing.rb
131
+ - test/test_repeater_day_name.rb
132
+ - test/test_repeater_day_portion.rb
133
+ - test/test_repeater_fortnight.rb
134
+ - test/test_repeater_hour.rb
135
+ - test/test_repeater_minute.rb
136
+ - test/test_repeater_month.rb
137
+ - test/test_repeater_month_name.rb
138
+ - test/test_repeater_season.rb
139
+ - test/test_repeater_time.rb
140
+ - test/test_repeater_week.rb
141
+ - test/test_repeater_weekday.rb
142
+ - test/test_repeater_weekend.rb
143
+ - test/test_repeater_year.rb
144
+ - test/test_span.rb
145
+ - test/test_token.rb
97
146
  homepage: http://github.com/mojombo/chronic
98
- licenses: []
99
-
147
+ licenses:
148
+ - MIT
149
+ metadata: {}
100
150
  post_install_message:
101
- rdoc_options:
151
+ rdoc_options:
102
152
  - --charset=UTF-8
103
- require_paths:
153
+ require_paths:
104
154
  - lib
105
- required_ruby_version: !ruby/object:Gem::Requirement
106
- none: false
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- hash: 3
111
- segments:
112
- - 0
113
- version: "0"
114
- required_rubygems_version: !ruby/object:Gem::Requirement
115
- none: false
116
- requirements:
117
- - - ">="
118
- - !ruby/object:Gem::Version
119
- hash: 3
120
- segments:
121
- - 0
122
- version: "0"
155
+ required_ruby_version: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - '>='
158
+ - !ruby/object:Gem::Version
159
+ version: '0'
160
+ required_rubygems_version: !ruby/object:Gem::Requirement
161
+ requirements:
162
+ - - '>='
163
+ - !ruby/object:Gem::Version
164
+ version: '0'
123
165
  requirements: []
124
-
125
166
  rubyforge_project: chronic
126
- rubygems_version: 1.8.6
167
+ rubygems_version: 2.0.2
127
168
  signing_key:
128
- specification_version: 3
169
+ specification_version: 4
129
170
  summary: Natural language date/time parsing.
130
- test_files:
171
+ test_files:
131
172
  - test/helper.rb
132
- - test/test_Chronic.rb
133
- - test/test_DaylightSavings.rb
134
- - test/test_Handler.rb
135
- - test/test_MiniDate.rb
136
- - test/test_Numerizer.rb
137
- - test/test_RepeaterDayName.rb
138
- - test/test_RepeaterFortnight.rb
139
- - test/test_RepeaterHour.rb
140
- - test/test_RepeaterMinute.rb
141
- - test/test_RepeaterMonth.rb
142
- - test/test_RepeaterMonthName.rb
143
- - test/test_RepeaterSeason.rb
144
- - test/test_RepeaterTime.rb
145
- - test/test_RepeaterWeek.rb
146
- - test/test_RepeaterWeekday.rb
147
- - test/test_RepeaterWeekend.rb
148
- - test/test_RepeaterYear.rb
149
- - test/test_Span.rb
150
- - test/test_Token.rb
173
+ - test/test_chronic.rb
174
+ - test/test_daylight_savings.rb
175
+ - test/test_handler.rb
176
+ - test/test_mini_date.rb
177
+ - test/test_numerizer.rb
151
178
  - test/test_parsing.rb
179
+ - test/test_repeater_day_name.rb
180
+ - test/test_repeater_day_portion.rb
181
+ - test/test_repeater_fortnight.rb
182
+ - test/test_repeater_hour.rb
183
+ - test/test_repeater_minute.rb
184
+ - test/test_repeater_month.rb
185
+ - test/test_repeater_month_name.rb
186
+ - test/test_repeater_season.rb
187
+ - test/test_repeater_time.rb
188
+ - test/test_repeater_week.rb
189
+ - test/test_repeater_weekday.rb
190
+ - test/test_repeater_weekend.rb
191
+ - test/test_repeater_year.rb
192
+ - test/test_span.rb
193
+ - test/test_token.rb
data/.gemtest DELETED
File without changes
data/.yardopts DELETED
@@ -1,3 +0,0 @@
1
- -m markdown
2
- --readme README.md
3
- --title "Chronic - Natural language date/time parsing"