montrose 0.12.0 → 0.14.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 (47) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +24 -32
  3. data/.gitignore +0 -3
  4. data/.rubocop.yml +5 -0
  5. data/.ruby-version +1 -0
  6. data/CHANGELOG.md +24 -0
  7. data/Gemfile +4 -9
  8. data/Gemfile.lock +148 -0
  9. data/README.md +20 -22
  10. data/bin/bundle-all +5 -0
  11. data/gemfiles/activesupport_5.2.gemfile +1 -12
  12. data/gemfiles/activesupport_5.2.gemfile.lock +107 -0
  13. data/gemfiles/activesupport_6.0.gemfile +1 -12
  14. data/gemfiles/activesupport_6.0.gemfile.lock +108 -0
  15. data/gemfiles/activesupport_6.1.gemfile +1 -12
  16. data/gemfiles/activesupport_6.1.gemfile.lock +108 -0
  17. data/gemfiles/activesupport_7.0.gemfile +5 -0
  18. data/gemfiles/activesupport_7.0.gemfile.lock +106 -0
  19. data/lib/montrose/chainable.rb +0 -1
  20. data/lib/montrose/clock.rb +54 -9
  21. data/lib/montrose/day.rb +83 -0
  22. data/lib/montrose/frequency.rb +60 -27
  23. data/lib/montrose/hour.rb +22 -0
  24. data/lib/montrose/ical.rb +128 -0
  25. data/lib/montrose/minute.rb +22 -0
  26. data/lib/montrose/month.rb +47 -0
  27. data/lib/montrose/month_day.rb +25 -0
  28. data/lib/montrose/options.rb +56 -65
  29. data/lib/montrose/recurrence.rb +18 -12
  30. data/lib/montrose/rule/during.rb +7 -15
  31. data/lib/montrose/rule/minute_of_hour.rb +25 -0
  32. data/lib/montrose/rule/nth_day_of_month.rb +0 -2
  33. data/lib/montrose/rule/nth_day_of_year.rb +0 -2
  34. data/lib/montrose/rule/time_of_day.rb +1 -1
  35. data/lib/montrose/rule.rb +18 -16
  36. data/lib/montrose/schedule.rb +7 -7
  37. data/lib/montrose/stack.rb +1 -2
  38. data/lib/montrose/time_of_day.rb +48 -0
  39. data/lib/montrose/utils.rb +0 -38
  40. data/lib/montrose/version.rb +1 -1
  41. data/lib/montrose/week.rb +20 -0
  42. data/lib/montrose/year_day.rb +25 -0
  43. data/lib/montrose.rb +20 -8
  44. data/montrose.gemspec +4 -3
  45. metadata +42 -11
  46. data/Appraisals +0 -13
  47. data/bin/appraisal +0 -17
data/lib/montrose.rb CHANGED
@@ -10,17 +10,29 @@ require "active_support/core_ext/numeric"
10
10
  require "active_support/core_ext/string"
11
11
  require "active_support/core_ext/time"
12
12
 
13
- require "montrose/utils"
14
- require "montrose/rule"
15
- require "montrose/clock"
16
- require "montrose/chainable"
17
- require "montrose/recurrence"
18
- require "montrose/frequency"
19
- require "montrose/schedule"
20
- require "montrose/stack"
21
13
  require "montrose/version"
14
+ require "montrose/errors"
22
15
 
23
16
  module Montrose
17
+ autoload :Chainable, "montrose/chainable"
18
+ autoload :Clock, "montrose/clock"
19
+ autoload :Day, "montrose/day"
20
+ autoload :Frequency, "montrose/frequency"
21
+ autoload :Hour, "montrose/hour"
22
+ autoload :ICal, "montrose/ical"
23
+ autoload :Minute, "montrose/minute"
24
+ autoload :Month, "montrose/month"
25
+ autoload :MonthDay, "montrose/month_day"
26
+ autoload :Options, "montrose/options"
27
+ autoload :Recurrence, "montrose/recurrence"
28
+ autoload :Rule, "montrose/rule"
29
+ autoload :TimeOfDay, "montrose/time_of_day"
30
+ autoload :Schedule, "montrose/schedule"
31
+ autoload :Stack, "montrose/stack"
32
+ autoload :Utils, "montrose/utils"
33
+ autoload :Week, "montrose/week"
34
+ autoload :YearDay, "montrose/year_day"
35
+
24
36
  extend Chainable
25
37
 
26
38
  class << self
data/montrose.gemspec CHANGED
@@ -20,14 +20,15 @@ Gem::Specification.new do |spec|
20
20
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
21
21
  spec.require_paths = ["lib"]
22
22
 
23
- spec.required_ruby_version = ">= 2.5.0"
23
+ spec.required_ruby_version = ">= 2.6.0"
24
24
 
25
- spec.add_dependency "activesupport", ">= 5.2", "<= 7.0"
25
+ spec.add_dependency "activesupport", ">= 5.2", "< 7.1"
26
26
 
27
- spec.add_development_dependency "appraisal"
27
+ spec.add_development_dependency "coveralls"
28
28
  spec.add_development_dependency "m"
29
29
  spec.add_development_dependency "minitest"
30
30
  spec.add_development_dependency "rake", ">= 12.3.3"
31
31
  spec.add_development_dependency "standard"
32
32
  spec.add_development_dependency "timecop"
33
+ spec.add_development_dependency "yard"
33
34
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: montrose
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.0
4
+ version: 0.14.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ross Kaffenberger
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-02-03 00:00:00.000000000 Z
11
+ date: 2023-08-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -17,9 +17,9 @@ dependencies:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: '5.2'
20
- - - "<="
20
+ - - "<"
21
21
  - !ruby/object:Gem::Version
22
- version: '7.0'
22
+ version: '7.1'
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -27,11 +27,11 @@ dependencies:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
29
  version: '5.2'
30
- - - "<="
30
+ - - "<"
31
31
  - !ruby/object:Gem::Version
32
- version: '7.0'
32
+ version: '7.1'
33
33
  - !ruby/object:Gem::Dependency
34
- name: appraisal
34
+ name: coveralls
35
35
  requirement: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - ">="
@@ -114,6 +114,20 @@ dependencies:
114
114
  - - ">="
115
115
  - !ruby/object:Gem::Version
116
116
  version: '0'
117
+ - !ruby/object:Gem::Dependency
118
+ name: yard
119
+ requirement: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - ">="
122
+ - !ruby/object:Gem::Version
123
+ version: '0'
124
+ type: :development
125
+ prerelease: false
126
+ version_requirements: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - ">="
129
+ - !ruby/object:Gem::Version
130
+ version: '0'
117
131
  description: A library for specifying, quering, and enumerating recurring events for
118
132
  calendars in Ruby.
119
133
  email:
@@ -125,16 +139,18 @@ files:
125
139
  - ".circleci/config.yml"
126
140
  - ".codeclimate.yml"
127
141
  - ".gitignore"
128
- - Appraisals
142
+ - ".rubocop.yml"
143
+ - ".ruby-version"
129
144
  - CHANGELOG.md
130
145
  - CODE_OF_CONDUCT.md
131
146
  - Gemfile
147
+ - Gemfile.lock
132
148
  - Guardfile
133
149
  - LICENSE.txt
134
150
  - README.md
135
151
  - Rakefile
136
152
  - bin/_guard-core
137
- - bin/appraisal
153
+ - bin/bundle-all
138
154
  - bin/console
139
155
  - bin/guard
140
156
  - bin/m
@@ -142,11 +158,17 @@ files:
142
158
  - bin/setup
143
159
  - bin/standardrb
144
160
  - gemfiles/activesupport_5.2.gemfile
161
+ - gemfiles/activesupport_5.2.gemfile.lock
145
162
  - gemfiles/activesupport_6.0.gemfile
163
+ - gemfiles/activesupport_6.0.gemfile.lock
146
164
  - gemfiles/activesupport_6.1.gemfile
165
+ - gemfiles/activesupport_6.1.gemfile.lock
166
+ - gemfiles/activesupport_7.0.gemfile
167
+ - gemfiles/activesupport_7.0.gemfile.lock
147
168
  - lib/montrose.rb
148
169
  - lib/montrose/chainable.rb
149
170
  - lib/montrose/clock.rb
171
+ - lib/montrose/day.rb
150
172
  - lib/montrose/errors.rb
151
173
  - lib/montrose/frequency.rb
152
174
  - lib/montrose/frequency/daily.rb
@@ -156,6 +178,11 @@ files:
156
178
  - lib/montrose/frequency/secondly.rb
157
179
  - lib/montrose/frequency/weekly.rb
158
180
  - lib/montrose/frequency/yearly.rb
181
+ - lib/montrose/hour.rb
182
+ - lib/montrose/ical.rb
183
+ - lib/montrose/minute.rb
184
+ - lib/montrose/month.rb
185
+ - lib/montrose/month_day.rb
159
186
  - lib/montrose/options.rb
160
187
  - lib/montrose/recurrence.rb
161
188
  - lib/montrose/refinements/array_concat.rb
@@ -169,6 +196,7 @@ files:
169
196
  - lib/montrose/rule/during.rb
170
197
  - lib/montrose/rule/except.rb
171
198
  - lib/montrose/rule/hour_of_day.rb
199
+ - lib/montrose/rule/minute_of_hour.rb
172
200
  - lib/montrose/rule/month_of_year.rb
173
201
  - lib/montrose/rule/nth_day_matcher.rb
174
202
  - lib/montrose/rule/nth_day_of_month.rb
@@ -179,8 +207,11 @@ files:
179
207
  - lib/montrose/rule/week_of_year.rb
180
208
  - lib/montrose/schedule.rb
181
209
  - lib/montrose/stack.rb
210
+ - lib/montrose/time_of_day.rb
182
211
  - lib/montrose/utils.rb
183
212
  - lib/montrose/version.rb
213
+ - lib/montrose/week.rb
214
+ - lib/montrose/year_day.rb
184
215
  - montrose.gemspec
185
216
  homepage: https://github.com/rossta/montrose
186
217
  licenses:
@@ -194,14 +225,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
194
225
  requirements:
195
226
  - - ">="
196
227
  - !ruby/object:Gem::Version
197
- version: 2.5.0
228
+ version: 2.6.0
198
229
  required_rubygems_version: !ruby/object:Gem::Requirement
199
230
  requirements:
200
231
  - - ">="
201
232
  - !ruby/object:Gem::Version
202
233
  version: '0'
203
234
  requirements: []
204
- rubygems_version: 3.2.8
235
+ rubygems_version: 3.1.6
205
236
  signing_key:
206
237
  specification_version: 4
207
238
  summary: Recurring events in Ruby
data/Appraisals DELETED
@@ -1,13 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- appraise "activesupport-6.1" do
4
- gem "activesupport", "~> 6.1.0"
5
- end
6
-
7
- appraise "activesupport-6.0" do
8
- gem "activesupport", "~> 6.0.0"
9
- end
10
-
11
- appraise "activesupport-5.2" do
12
- gem "activesupport", "~> 5.2.0"
13
- end
data/bin/appraisal DELETED
@@ -1,17 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
- #
4
- # This file was generated by Bundler.
5
- #
6
- # The application 'appraisal' is installed as part of a gem, and
7
- # this file is here to facilitate running it.
8
- #
9
-
10
- require "pathname"
11
- ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
12
- Pathname.new(__FILE__).realpath)
13
-
14
- require "rubygems"
15
- require "bundler/setup"
16
-
17
- load Gem.bin_path("appraisal", "appraisal")