holidays 8.6.0 → 8.8.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/ruby.yml +25 -0
- data/CHANGELOG.md +19 -4
- data/README.md +70 -55
- data/holidays.gemspec +5 -0
- data/lib/generated_definitions/MANIFEST +2 -0
- data/lib/generated_definitions/REGIONS.rb +2 -2
- data/lib/generated_definitions/au.rb +35 -5
- data/lib/generated_definitions/br.rb +2 -1
- data/lib/generated_definitions/ca.rb +2 -1
- data/lib/generated_definitions/de.rb +6 -3
- data/lib/generated_definitions/dk.rb +1 -1
- data/lib/generated_definitions/europe.rb +26 -20
- data/lib/generated_definitions/fr.rb +2 -2
- data/lib/generated_definitions/gb.rb +1 -0
- data/lib/generated_definitions/gr.rb +38 -0
- data/lib/generated_definitions/ke.rb +34 -0
- data/lib/generated_definitions/lt.rb +2 -1
- data/lib/generated_definitions/lv.rb +2 -1
- data/lib/generated_definitions/northamerica.rb +2 -1
- data/lib/generated_definitions/nz.rb +2 -1
- data/lib/generated_definitions/scandinavia.rb +1 -1
- data/lib/generated_definitions/southamerica.rb +1 -0
- data/lib/holidays/finder/context/search.rb +1 -0
- data/lib/holidays/version.rb +1 -1
- data/test/defs/test_defs_au.rb +15 -0
- data/test/defs/test_defs_br.rb +4 -0
- data/test/defs/test_defs_ca.rb +10 -2
- data/test/defs/test_defs_de.rb +4 -0
- data/test/defs/test_defs_dk.rb +4 -0
- data/test/defs/test_defs_europe.rb +53 -33
- data/test/defs/test_defs_fr.rb +3 -3
- data/test/defs/test_defs_gb.rb +8 -0
- data/test/defs/{test_defs_el.rb → test_defs_gr.rb} +18 -18
- data/test/defs/test_defs_ke.rb +31 -0
- data/test/defs/test_defs_lt.rb +2 -0
- data/test/defs/test_defs_lv.rb +2 -0
- data/test/defs/test_defs_northamerica.rb +10 -2
- data/test/defs/test_defs_nz.rb +4 -0
- data/test/defs/test_defs_scandinavia.rb +4 -0
- data/test/defs/test_defs_southamerica.rb +4 -0
- data/test/integration/test_available_regions.rb +1 -1
- data/test/integration/test_holidays.rb +2 -8
- metadata +14 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 541f4a1cdcc966e2a4fcd290406ce35e0fe5318066ecfbe5dc3e3c7808fc6462
|
4
|
+
data.tar.gz: a0344504afac759b54975ce9e32c0148382f1623fa2e6bd59ca908f41c43a6d1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2e898308850d254f87f84c9a3eb664f81f5306654737c82268c294b8f55764cd6fc5ae152e8e6d4936cf0b509ff9beeb4189ec89ec9579e19d85d6a86d840b3a
|
7
|
+
data.tar.gz: d73797c2f24d6026de777dcd2a3b8d0e4fcbe84e2d1cad68db59f53f9054d43e41922f810491e9317e48b2f42cce3056ac7af8bdb18d19969a0b26639759acf7
|
@@ -0,0 +1,25 @@
|
|
1
|
+
name: Ruby
|
2
|
+
on:
|
3
|
+
push:
|
4
|
+
branches: [ "master" ]
|
5
|
+
pull_request:
|
6
|
+
branches: [ "master" ]
|
7
|
+
permissions:
|
8
|
+
contents: read
|
9
|
+
jobs:
|
10
|
+
test:
|
11
|
+
runs-on: ubuntu-latest
|
12
|
+
strategy:
|
13
|
+
matrix:
|
14
|
+
ruby-version: ['2.4', '2.5', '2.6', '2.7', '3.0', '3.1', '3.2', 'ruby-head']
|
15
|
+
env:
|
16
|
+
BUNDLER_NO_OLD_RUBYGEMS_WARNING: true
|
17
|
+
steps:
|
18
|
+
- uses: actions/checkout@v3
|
19
|
+
- name: Set up Ruby
|
20
|
+
uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0
|
21
|
+
with:
|
22
|
+
ruby-version: ${{ matrix.ruby-version }}
|
23
|
+
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
|
24
|
+
- name: Run tests
|
25
|
+
run: make test
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,20 @@
|
|
1
1
|
# Ruby Holidays Gem CHANGELOG
|
2
2
|
|
3
|
+
## 8.8.0
|
4
|
+
|
5
|
+
* Update to [v5.7.4 definitions](https://github.com/holidays/definitions/releases/tag/v5.7.4). Please see the changelog for the definition details.
|
6
|
+
|
7
|
+
## 8.7.1
|
8
|
+
|
9
|
+
* Fix testing issues and github action config, no behavior changes
|
10
|
+
* Remove Travis CI config
|
11
|
+
|
12
|
+
## 8.7.0
|
13
|
+
|
14
|
+
* Update to [v5.6.2 definitions](https://github.com/holidays/definitions/releases/tag/v5.6.2). Please see the changelog for the definition details.
|
15
|
+
* Add support for ruby 2.7, 3.0, 3.1, 3.2, 3.3
|
16
|
+
* Add GitHub actions support since Travis CI is not free for OSS anymore
|
17
|
+
|
3
18
|
## 8.6.0
|
4
19
|
|
5
20
|
* Update to [v5.5.0 definitions](https://github.com/holidays/definitions/releases/tag/v5.5.0). Please see the changelog for the definition details.
|
@@ -7,22 +22,22 @@
|
|
7
22
|
|
8
23
|
## 8.5.0
|
9
24
|
|
10
|
-
* Update submodule definitions.
|
25
|
+
* Update submodule definitions.
|
11
26
|
* Thanks to contributors!!
|
12
27
|
|
13
28
|
## 8.4.1
|
14
29
|
|
15
|
-
* Fix jp holidays from 2022.
|
30
|
+
* Fix jp holidays from 2022.
|
16
31
|
|
17
32
|
## 8.4.0
|
18
33
|
|
19
|
-
* Update submodule definitions
|
34
|
+
* Update submodule definitions
|
20
35
|
* Thanks to contributors!!
|
21
36
|
|
22
37
|
|
23
38
|
## 8.3.0
|
24
39
|
|
25
|
-
* Update submodule definitions
|
40
|
+
* Update submodule definitions
|
26
41
|
* Remove test about feb 29 on non leap year.
|
27
42
|
* Thanks to contributors!!
|
28
43
|
|
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Ruby Holidays Gem [![Build Status](https://
|
1
|
+
# Ruby Holidays Gem [![Build Status](https://github.com/holidays/holidays/actions/workflows/ruby.yml/badge.svg)](https://github.com/holidays/holidays/actions/workflows/ruby.yml)
|
2
2
|
|
3
3
|
Functionality to deal with holidays in Ruby.
|
4
4
|
|
@@ -17,7 +17,13 @@ This gem is tested with the following ruby versions:
|
|
17
17
|
* 2.4.5
|
18
18
|
* 2.5.3
|
19
19
|
* 2.6.1
|
20
|
-
*
|
20
|
+
* 2.7.7
|
21
|
+
* 3.0.6
|
22
|
+
* 3.1.4
|
23
|
+
* 3.2.2
|
24
|
+
* 3.3.0
|
25
|
+
* JRuby 9.2.21.0
|
26
|
+
* JRuby 9.4.2.0
|
21
27
|
|
22
28
|
## Semver
|
23
29
|
|
@@ -40,23 +46,23 @@ This gem offers multiple ways to check for holidays for a variety of scenarios.
|
|
40
46
|
|
41
47
|
Get all holidays on April 25, 2008 in Australia:
|
42
48
|
|
43
|
-
```
|
44
|
-
Holidays.on(Date.
|
49
|
+
```ruby
|
50
|
+
Holidays.on(Date.new(2008, 4, 25), :au)
|
45
51
|
=> [{:name => 'ANZAC Day',...}]
|
46
52
|
```
|
47
53
|
|
48
54
|
You can check multiple regions in a single call:
|
49
55
|
|
50
|
-
```
|
51
|
-
Holidays.on(Date.
|
56
|
+
```ruby
|
57
|
+
Holidays.on(Date.new(2008, 1, 1), :us, :fr)
|
52
58
|
=> [{:name=>"New Year's Day", :regions=>[:us],...},
|
53
59
|
{:name=>"Jour de l'an", :regions=>[:fr],...}]
|
54
60
|
```
|
55
61
|
|
56
62
|
You can leave off 'regions' to get holidays for any region in our [definitions](https://github.com/holidays/definitions):
|
57
63
|
|
58
|
-
```
|
59
|
-
Holidays.on(Date.
|
64
|
+
```ruby
|
65
|
+
Holidays.on(Date.new(2007, 4, 25))
|
60
66
|
=> [{:name=>"ANZAC Day", :regions=>[:au],...},
|
61
67
|
{:name=>"Festa della Liberazione", :regions=>[:it],...},
|
62
68
|
{:name=>"Dia da Liberdade", :regions=>[:pt],...}
|
@@ -68,9 +74,9 @@ You can leave off 'regions' to get holidays for any region in our [definitions](
|
|
68
74
|
|
69
75
|
Get all holidays during the month of July 2008 in Canada and the US:
|
70
76
|
|
71
|
-
```
|
72
|
-
from = Date.
|
73
|
-
to = Date.
|
77
|
+
```ruby
|
78
|
+
from = Date.new(2008,7,1)
|
79
|
+
to = Date.new(2008,7,31)
|
74
80
|
|
75
81
|
Holidays.between(from, to, :ca, :us)
|
76
82
|
=> [{:name => 'Canada Day',...}
|
@@ -85,23 +91,23 @@ By default this flag is turned off, meaning no informal holidays will be returne
|
|
85
91
|
|
86
92
|
Get Valentine's Day in the US:
|
87
93
|
|
88
|
-
```
|
94
|
+
```ruby
|
89
95
|
Holidays.on(Date.new(2018, 2, 14), :us, :informal)
|
90
96
|
=> [{:name=>"Valentine's Day",...}]
|
91
97
|
```
|
92
98
|
|
93
99
|
Leaving off 'informal' will mean that Valentine's Day is not returned:
|
94
100
|
|
95
|
-
```
|
101
|
+
```ruby
|
96
102
|
Holidays.on(Date.new(2018, 2, 14), :us)
|
97
103
|
=> []
|
98
104
|
```
|
99
105
|
|
100
106
|
Get informal holidays during the month of February 2008 for any region:
|
101
107
|
|
102
|
-
```
|
103
|
-
from = Date.
|
104
|
-
to = Date.
|
108
|
+
```ruby
|
109
|
+
from = Date.new(2008,2,1)
|
110
|
+
to = Date.new(2008,2,15)
|
105
111
|
|
106
112
|
Holidays.between(from, to, :informal)
|
107
113
|
=> [{:name => 'Valentine\'s Day',...}]
|
@@ -115,25 +121,26 @@ By default this flag is turned off, meaning no observed logic will be applied.
|
|
115
121
|
|
116
122
|
Get holidays that are observed on Monday July 2, 2007 in British Columbia, Canada:
|
117
123
|
|
118
|
-
```
|
119
|
-
Holidays.on(Date.
|
124
|
+
```ruby
|
125
|
+
Holidays.on(Date.new(2007, 7, 2), :ca_bc, :observed)
|
120
126
|
=> [{:name => 'Canada Day',...}]
|
121
127
|
```
|
122
128
|
|
123
129
|
Leaving off the 'observed' flag will mean that 'Canada Day' is not returned since it actually falls on Sunday July 1:
|
124
130
|
|
125
|
-
```
|
126
|
-
Holidays.on(Date.
|
131
|
+
```ruby
|
132
|
+
Holidays.on(Date.new(2007, 7, 2), :ca_bc)
|
127
133
|
=> []
|
128
|
-
|
134
|
+
|
135
|
+
Holidays.on(Date.new(2007, 7, 1), :ca_bc)
|
129
136
|
=> [{:name=>"Canada Day", :regions=>[:ca],...}]
|
130
137
|
```
|
131
138
|
|
132
139
|
Get all observed US Federal holidays between 2018 and 2019:
|
133
140
|
|
134
|
-
```
|
135
|
-
from = Date.
|
136
|
-
to = Date.
|
141
|
+
```ruby
|
142
|
+
from = Date.new(2018,1,1)
|
143
|
+
to = Date.new(2019,12,31)
|
137
144
|
|
138
145
|
Holidays.between(from, to, :federalreserve, :observed)
|
139
146
|
=> [{:name => "New Year's Day"....}
|
@@ -146,25 +153,28 @@ Check if there are any holidays taking place during a specified work week. 'Work
|
|
146
153
|
|
147
154
|
Check whether a holiday falls during first week of the year for any region:
|
148
155
|
|
149
|
-
```
|
150
|
-
Holidays.any_holidays_during_work_week?(Date.
|
156
|
+
```ruby
|
157
|
+
Holidays.any_holidays_during_work_week?(Date.new(2016, 1, 1))
|
151
158
|
=> true
|
152
159
|
```
|
153
160
|
|
154
161
|
You can also pass in `informal` or `observed`:
|
155
162
|
|
156
|
-
```
|
163
|
+
```ruby
|
157
164
|
# Returns true since Valentine's Day falls on a Wednesday
|
158
|
-
|
165
|
+
Holidays.any_holidays_during_work_week?(Date.new(2018, 2, 14), :us, :informal)
|
159
166
|
=> true
|
167
|
+
|
160
168
|
# Returns false if you don't specify informal
|
161
|
-
|
169
|
+
Holidays.any_holidays_during_work_week?(Date.new(2018, 2, 14), :us)
|
162
170
|
=> false
|
171
|
+
|
163
172
|
# Returns true since Veteran's Day is observed on Monday November 12, 2018
|
164
|
-
|
173
|
+
Holidays.any_holidays_during_work_week?(Date.new(2018, 11, 12), :us, :observed)
|
165
174
|
=> true
|
175
|
+
|
166
176
|
# Returns false if you don't specify observed since the actual holiday is on Sunday November 11th 2018
|
167
|
-
|
177
|
+
Holidays.any_holidays_during_work_week?(Date.new(2018, 11, 12), :us)
|
168
178
|
=> false
|
169
179
|
```
|
170
180
|
|
@@ -172,21 +182,21 @@ irb(main):005:0> Holidays.any_holidays_during_work_week?(Date.civil(2018, 11, 12
|
|
172
182
|
|
173
183
|
Get the next holidays occurring from February 23, 2016 for the US:
|
174
184
|
|
175
|
-
```
|
176
|
-
Holidays.next_holidays(3, [:us, :informal], Date.
|
185
|
+
```ruby
|
186
|
+
Holidays.next_holidays(3, [:us, :informal], Date.new(2016, 2, 23))
|
177
187
|
=> [{:name => "St. Patrick's Day",...}, {:name => "Good Friday",...}, {:name => "Easter Sunday",...}]
|
178
188
|
```
|
179
189
|
|
180
190
|
You can specify the number of holidays to return. This method will default to `Date.today` if no date is provided.
|
181
191
|
|
182
|
-
#### Find all holidays
|
192
|
+
#### Find all holidays occurring starting from a specific date to the end of the year
|
183
193
|
|
184
194
|
Get all holidays starting from February 23, 2016 to end of year in the US:
|
185
195
|
|
186
|
-
```
|
187
|
-
Holidays.year_holidays([:ca_on], Date.
|
196
|
+
```ruby
|
197
|
+
Holidays.year_holidays([:ca_on], Date.new(2016, 2, 23))
|
188
198
|
=> [{:name=>"Good Friday",...},
|
189
|
-
{name=>"Easter Sunday",...},
|
199
|
+
{:name=>"Easter Sunday",...},
|
190
200
|
{:name=>"Victoria Day",...},
|
191
201
|
{:name=>"Canada Day",...},
|
192
202
|
{:name=>"Civic Holiday",...},
|
@@ -203,7 +213,7 @@ This method will default to `Date.today` if no date is provided.
|
|
203
213
|
|
204
214
|
Return all available regions:
|
205
215
|
|
206
|
-
```
|
216
|
+
```ruby
|
207
217
|
Holidays.available_regions
|
208
218
|
=> [:ar, :at, ..., :sg] # this will be a big array
|
209
219
|
```
|
@@ -214,18 +224,21 @@ In addition to the [provided definitions](https://github.com/holidays/definition
|
|
214
224
|
|
215
225
|
To load custom 'Company Founding' holiday on June 1st:
|
216
226
|
|
217
|
-
```
|
227
|
+
```ruby
|
218
228
|
Holidays.load_custom('/home/user/holiday_definitions/custom_holidays.yaml')
|
219
|
-
Holidays.on(Date.
|
220
|
-
|
229
|
+
Holidays.on(Date.new(2013, 6, 1), :my_custom_region)
|
230
|
+
=> [{:name => 'Company Founding',...}]
|
221
231
|
```
|
222
232
|
|
223
233
|
Custom definition files must match the [syntax of the existing definition files](https://github.com/holidays/definitions/blob/master/doc/SYNTAX.md).
|
224
234
|
|
225
235
|
Multiple files can be loaded at the same time:
|
226
236
|
|
227
|
-
```
|
228
|
-
Holidays.load_custom(
|
237
|
+
```ruby
|
238
|
+
Holidays.load_custom(
|
239
|
+
'/home/user/holidays/custom_holidays1.yaml',
|
240
|
+
'/home/user/holidays/custom_holidays2.yaml'
|
241
|
+
)
|
229
242
|
```
|
230
243
|
|
231
244
|
## Extending Ruby's Date and Time classes
|
@@ -234,8 +247,9 @@ Holidays.load_custom('/home/user/holidays/custom_holidays1.yaml', '/home/user/ho
|
|
234
247
|
|
235
248
|
To extend the 'Date' class:
|
236
249
|
|
237
|
-
```
|
250
|
+
```ruby
|
238
251
|
require 'holidays/core_extensions/date'
|
252
|
+
|
239
253
|
class Date
|
240
254
|
include Holidays::CoreExtensions::Date
|
241
255
|
end
|
@@ -243,8 +257,8 @@ end
|
|
243
257
|
|
244
258
|
Now you can check which holidays occur in Iceland on January 1, 2008:
|
245
259
|
|
246
|
-
```
|
247
|
-
d = Date.
|
260
|
+
```ruby
|
261
|
+
d = Date.new(2008,7,1)
|
248
262
|
|
249
263
|
d.holidays(:is)
|
250
264
|
=> [{:name => 'Nýársdagur'}...]
|
@@ -252,8 +266,8 @@ d.holidays(:is)
|
|
252
266
|
|
253
267
|
Or lookup Canada Day in different regions:
|
254
268
|
|
255
|
-
```
|
256
|
-
d = Date.
|
269
|
+
```ruby
|
270
|
+
d = Date.new(2008,7,1)
|
257
271
|
|
258
272
|
d.holiday?(:ca) # Canada
|
259
273
|
=> true
|
@@ -267,23 +281,24 @@ d.holiday?(:fr) # France
|
|
267
281
|
|
268
282
|
Or return the new date based on the options:
|
269
283
|
|
270
|
-
```
|
271
|
-
d = Date.
|
284
|
+
```ruby
|
285
|
+
d = Date.new(2008,7,1)
|
272
286
|
d.change(:year => 2016, :month => 1, :day => 1)
|
273
287
|
=> #<Date: 2016-01-01 ((2457389j,0s,0n),+0s,2299161j)>
|
274
288
|
```
|
275
289
|
|
276
290
|
Or you can calculate the day of the month:
|
277
291
|
|
278
|
-
```
|
292
|
+
```ruby
|
279
293
|
Date.calculate_mday(2015, 4, :first, 2)
|
280
294
|
=> 7
|
281
295
|
```
|
282
296
|
|
283
297
|
### Time
|
284
298
|
|
285
|
-
```
|
299
|
+
```ruby
|
286
300
|
require 'holidays/core_extensions/time'
|
301
|
+
|
287
302
|
class Time
|
288
303
|
include Holidays::CoreExtensions::Time
|
289
304
|
end
|
@@ -291,8 +306,8 @@ end
|
|
291
306
|
|
292
307
|
Find end of month for given date:
|
293
308
|
|
294
|
-
```
|
295
|
-
d = Date.
|
309
|
+
```ruby
|
310
|
+
d = Date.new(2016,8,1)
|
296
311
|
d.end_of_month
|
297
312
|
=> #<Date: 2016-08-31 ((2457632j,0s,0n),+0s,2299161j)>
|
298
313
|
```
|
@@ -301,7 +316,7 @@ d.end_of_month
|
|
301
316
|
|
302
317
|
If you are checking holidays regularly you can cache your results for improved performance. Run this before looking up a holiday (e.g. in an initializer):
|
303
318
|
|
304
|
-
```
|
319
|
+
```ruby
|
305
320
|
YEAR = 365 * 24 * 60 * 60
|
306
321
|
Holidays.cache_between(Time.now, Time.now + 2 * YEAR, :ca, :us, :observed)
|
307
322
|
```
|
data/holidays.gemspec
CHANGED
@@ -12,6 +12,11 @@ Gem::Specification.new do |gem|
|
|
12
12
|
gem.homepage = 'https://github.com/holidays/holidays'
|
13
13
|
gem.description = %q(A collection of Ruby methods to deal with statutory and other holidays. You deserve a holiday!)
|
14
14
|
gem.summary = %q(A collection of Ruby methods to deal with statutory and other holidays.)
|
15
|
+
gem.metadata = {
|
16
|
+
'changelog_uri' => "https://github.com/holidays/holidays/blob/master/CHANGELOG.md",
|
17
|
+
'source_code_uri' => 'https://github.com/holidays/holidays',
|
18
|
+
'bug_tracker_uri' => 'https://github.com/holidays/holidays/issues'
|
19
|
+
}
|
15
20
|
gem.files = `git ls-files`.split("\n") - ['.gitignore', '.travis.yml']
|
16
21
|
gem.test_files = gem.files.grep(/^test/)
|
17
22
|
gem.require_paths = ['lib']
|
@@ -30,6 +30,7 @@ The following definition files are included in this installation:
|
|
30
30
|
* generated_definitions/fr
|
31
31
|
* generated_definitions/gb
|
32
32
|
* generated_definitions/ge
|
33
|
+
* generated_definitions/gr
|
33
34
|
* generated_definitions/hk
|
34
35
|
* generated_definitions/hr
|
35
36
|
* generated_definitions/hu
|
@@ -37,6 +38,7 @@ The following definition files are included in this installation:
|
|
37
38
|
* generated_definitions/is
|
38
39
|
* generated_definitions/it
|
39
40
|
* generated_definitions/jp
|
41
|
+
* generated_definitions/ke
|
40
42
|
* generated_definitions/kr
|
41
43
|
* generated_definitions/kz
|
42
44
|
* generated_definitions/li
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# encoding: utf-8
|
2
2
|
module Holidays
|
3
|
-
REGIONS = [:ar, :at, :au, :au_nsw, :au_vic, :au_qld, :au_nt, :au_act, :au_sa, :au_wa, :au_tas, :au_tas_south, :au_qld_cairns, :au_qld_brisbane, :au_tas_north, :au_vic_melbourne, :be_fr, :be_nl, :br, :bg_en, :bg_bg, :ca, :ca_qc, :ca_ab, :ca_sk, :ca_on, :ca_bc, :ca_nb, :ca_mb, :ca_ns, :ca_pe, :ca_nl, :ca_nt, :ca_nu, :ca_yt, :us, :ch_zh, :ch_be, :ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_gl, :ch_zg, :ch_fr, :ch_so, :ch_bs, :ch_bl, :ch_sh, :ch_ar, :ch_ai, :ch_sg, :ch_gr, :ch_ag, :ch_tg, :ch_ti, :ch_vd, :ch_ne, :ch_ge, :ch_ju, :ch_vs, :ch, :cl, :co, :cr, :cz, :dk, :de, :de_bw, :de_by, :de_he, :de_nw, :de_rp, :de_sl, :de_sn_sorbian, :de_th_cath, :de_sn, :de_st, :de_be, :
|
3
|
+
REGIONS = [:ar, :at, :au, :au_nsw, :au_vic, :au_qld, :au_nt, :au_act, :au_sa, :au_wa, :au_tas, :au_tas_south, :au_qld_cairns, :au_qld_brisbane, :au_tas_north, :au_vic_melbourne, :be_fr, :be_nl, :br, :bg_en, :bg_bg, :ca, :ca_qc, :ca_ab, :ca_sk, :ca_on, :ca_bc, :ca_nb, :ca_mb, :ca_ns, :ca_pe, :ca_nl, :ca_nt, :ca_nu, :ca_yt, :us, :ch_zh, :ch_be, :ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_gl, :ch_zg, :ch_fr, :ch_so, :ch_bs, :ch_bl, :ch_sh, :ch_ar, :ch_ai, :ch_sg, :ch_gr, :ch_ag, :ch_tg, :ch_ti, :ch_vd, :ch_ne, :ch_ge, :ch_ju, :ch_vs, :ch, :cl, :co, :cr, :cz, :dk, :de, :de_bw, :de_by, :de_he, :de_nw, :de_rp, :de_sl, :de_sn_sorbian, :de_th_cath, :de_sn, :de_st, :de_be, :de_mv, :de_by_cath, :de_by_augsburg, :de_th, :de_bb, :de_hb, :de_hh, :de_ni, :de_sh, :ecbtarget, :ee, :es_pv, :es_na, :es_an, :es_ib, :es_cm, :es_mu, :es_m, :es_ar, :es_cl, :es_cn, :es_lo, :es_ga, :es_ce, :es_o, :es_ex, :es, :es_ct, :es_v, :es_vc, :federalreserve, :federalreservebanks, :fedex, :fi, :fr_a, :fr_m, :fr, :gb, :gb_eng, :gb_wls, :gb_eaw, :gb_nir, :je, :gb_jsy, :gg, :gb_gsy, :gb_sct, :gb_con, :im, :gb_iom, :ge, :gr, :hr, :hk, :hu, :ie, :is, :it, :it_ve, :it_tv, :it_vr, :it_pd, :it_fi, :it_ge, :it_to, :it_rm, :it_vi, :it_bl, :it_ro, :ke, :kr, :kz, :li, :lt, :lv, :ma, :mt_mt, :mt_en, :mx, :mx_pue, :nerc, :nl, :lu, :no, :nyse, :nz, :nz_sl, :nz_we, :nz_ak, :nz_nl, :nz_ne, :nz_ot, :nz_ta, :nz_sc, :nz_hb, :nz_mb, :nz_ca, :nz_ch, :nz_wl, :pe, :ph, :pl, :pt, :pt_li, :pt_po, :ro, :rs_cyrl, :rs_la, :ru, :se, :tn, :tr, :ua, :us_fl, :us_la, :us_ct, :us_de, :us_gu, :us_hi, :us_in, :us_ky, :us_nj, :us_nc, :us_nd, :us_pr, :us_tn, :us_ms, :us_id, :us_ar, :us_tx, :us_dc, :us_md, :us_va, :us_vt, :us_ak, :us_ca, :us_me, :us_ma, :us_al, :us_ga, :us_ne, :us_mo, :us_sc, :us_wv, :us_vi, :us_ut, :us_ri, :us_az, :us_co, :us_il, :us_mt, :us_nm, :us_ny, :us_oh, :us_pa, :us_mi, :us_mn, :us_nv, :us_or, :us_sd, :us_wa, :us_wi, :us_wy, :us_ia, :us_ks, :us_nh, :us_ok, :unitednations, :ups, :za, :ve, :sk, :si, :jp, :vi, :sg, :my, :th, :ng]
|
4
4
|
|
5
|
-
PARENT_REGION_LOOKUP = {:ar=>:ar, :at=>:at, :au=>:au, :au_nsw=>:au, :au_vic=>:au, :au_qld=>:au, :au_nt=>:au, :au_act=>:au, :au_sa=>:au, :au_wa=>:au, :au_tas=>:au, :au_tas_south=>:au, :au_qld_cairns=>:au, :au_qld_brisbane=>:au, :au_tas_north=>:au, :au_vic_melbourne=>:au, :be_fr=>:be_fr, :be_nl=>:be_nl, :br=>:br, :bg_en=>:bg, :bg_bg=>:bg, :ca=>:ca, :ca_qc=>:ca, :ca_ab=>:ca, :ca_sk=>:ca, :ca_on=>:ca, :ca_bc=>:ca, :ca_nb=>:ca, :ca_mb=>:ca, :ca_ns=>:ca, :ca_pe=>:ca, :ca_nl=>:ca, :ca_nt=>:ca, :ca_nu=>:ca, :ca_yt=>:ca, :us=>:us, :ch_zh=>:ch, :ch_be=>:ch, :ch_lu=>:ch, :ch_ur=>:ch, :ch_sz=>:ch, :ch_ow=>:ch, :ch_nw=>:ch, :ch_gl=>:ch, :ch_zg=>:ch, :ch_fr=>:ch, :ch_so=>:ch, :ch_bs=>:ch, :ch_bl=>:ch, :ch_sh=>:ch, :ch_ar=>:ch, :ch_ai=>:ch, :ch_sg=>:ch, :ch_gr=>:ch, :ch_ag=>:ch, :ch_tg=>:ch, :ch_ti=>:ch, :ch_vd=>:ch, :ch_ne=>:ch, :ch_ge=>:ch, :ch_ju=>:ch, :ch_vs=>:ch, :ch=>:ch, :cl=>:cl, :co=>:co, :cr=>:cr, :cz=>:cz, :dk=>:dk, :de=>:de, :de_bw=>:de, :de_by=>:de, :de_he=>:de, :de_nw=>:de, :de_rp=>:de, :de_sl=>:de, :de_sn_sorbian=>:de, :de_th_cath=>:de, :de_sn=>:de, :de_st=>:de, :de_be=>:de, :
|
5
|
+
PARENT_REGION_LOOKUP = {:ar=>:ar, :at=>:at, :au=>:au, :au_nsw=>:au, :au_vic=>:au, :au_qld=>:au, :au_nt=>:au, :au_act=>:au, :au_sa=>:au, :au_wa=>:au, :au_tas=>:au, :au_tas_south=>:au, :au_qld_cairns=>:au, :au_qld_brisbane=>:au, :au_tas_north=>:au, :au_vic_melbourne=>:au, :be_fr=>:be_fr, :be_nl=>:be_nl, :br=>:br, :bg_en=>:bg, :bg_bg=>:bg, :ca=>:ca, :ca_qc=>:ca, :ca_ab=>:ca, :ca_sk=>:ca, :ca_on=>:ca, :ca_bc=>:ca, :ca_nb=>:ca, :ca_mb=>:ca, :ca_ns=>:ca, :ca_pe=>:ca, :ca_nl=>:ca, :ca_nt=>:ca, :ca_nu=>:ca, :ca_yt=>:ca, :us=>:us, :ch_zh=>:ch, :ch_be=>:ch, :ch_lu=>:ch, :ch_ur=>:ch, :ch_sz=>:ch, :ch_ow=>:ch, :ch_nw=>:ch, :ch_gl=>:ch, :ch_zg=>:ch, :ch_fr=>:ch, :ch_so=>:ch, :ch_bs=>:ch, :ch_bl=>:ch, :ch_sh=>:ch, :ch_ar=>:ch, :ch_ai=>:ch, :ch_sg=>:ch, :ch_gr=>:ch, :ch_ag=>:ch, :ch_tg=>:ch, :ch_ti=>:ch, :ch_vd=>:ch, :ch_ne=>:ch, :ch_ge=>:ch, :ch_ju=>:ch, :ch_vs=>:ch, :ch=>:ch, :cl=>:cl, :co=>:co, :cr=>:cr, :cz=>:cz, :dk=>:dk, :de=>:de, :de_bw=>:de, :de_by=>:de, :de_he=>:de, :de_nw=>:de, :de_rp=>:de, :de_sl=>:de, :de_sn_sorbian=>:de, :de_th_cath=>:de, :de_sn=>:de, :de_st=>:de, :de_be=>:de, :de_mv=>:de, :de_by_cath=>:de, :de_by_augsburg=>:de, :de_th=>:de, :de_bb=>:de, :de_hb=>:de, :de_hh=>:de, :de_ni=>:de, :de_sh=>:de, :ecbtarget=>:ecbtarget, :ee=>:ee, :es_pv=>:es, :es_na=>:es, :es_an=>:es, :es_ib=>:es, :es_cm=>:es, :es_mu=>:es, :es_m=>:es, :es_ar=>:es, :es_cl=>:es, :es_cn=>:es, :es_lo=>:es, :es_ga=>:es, :es_ce=>:es, :es_o=>:es, :es_ex=>:es, :es=>:es, :es_ct=>:es, :es_v=>:es, :es_vc=>:es, :federalreserve=>:federalreserve, :federalreservebanks=>:federalreservebanks, :fedex=>:fedex, :fi=>:fi, :fr_a=>:fr, :fr_m=>:fr, :fr=>:fr, :gb=>:gb, :gb_eng=>:gb, :gb_wls=>:gb, :gb_eaw=>:gb, :gb_nir=>:gb, :je=>:gb, :gb_jsy=>:gb, :gg=>:gb, :gb_gsy=>:gb, :gb_sct=>:gb, :gb_con=>:gb, :im=>:gb, :gb_iom=>:gb, :ge=>:ge, :gr=>:gr, :hr=>:hr, :hk=>:hk, :hu=>:hu, :ie=>:ie, :is=>:is, :it=>:it, :it_ve=>:it, :it_tv=>:it, :it_vr=>:it, :it_pd=>:it, :it_fi=>:it, :it_ge=>:it, :it_to=>:it, :it_rm=>:it, :it_vi=>:it, :it_bl=>:it, :it_ro=>:it, :ke=>:ke, :kr=>:kr, :kz=>:kz, :li=>:li, :lt=>:lt, :lv=>:lv, :ma=>:ma, :mt_mt=>:mt_mt, :mt_en=>:mt_en, :mx=>:mx, :mx_pue=>:mx, :nerc=>:nerc, :nl=>:nl, :lu=>:lu, :no=>:no, :nyse=>:nyse, :nz=>:nz, :nz_sl=>:nz, :nz_we=>:nz, :nz_ak=>:nz, :nz_nl=>:nz, :nz_ne=>:nz, :nz_ot=>:nz, :nz_ta=>:nz, :nz_sc=>:nz, :nz_hb=>:nz, :nz_mb=>:nz, :nz_ca=>:nz, :nz_ch=>:nz, :nz_wl=>:nz, :pe=>:pe, :ph=>:ph, :pl=>:pl, :pt=>:pt, :pt_li=>:pt, :pt_po=>:pt, :ro=>:ro, :rs_cyrl=>:rs_cyrl, :rs_la=>:rs_la, :ru=>:ru, :se=>:se, :tn=>:tn, :tr=>:tr, :ua=>:ua, :us_fl=>:us, :us_la=>:us, :us_ct=>:us, :us_de=>:us, :us_gu=>:us, :us_hi=>:us, :us_in=>:us, :us_ky=>:us, :us_nj=>:us, :us_nc=>:us, :us_nd=>:us, :us_pr=>:us, :us_tn=>:us, :us_ms=>:us, :us_id=>:us, :us_ar=>:us, :us_tx=>:us, :us_dc=>:us, :us_md=>:us, :us_va=>:us, :us_vt=>:us, :us_ak=>:us, :us_ca=>:us, :us_me=>:us, :us_ma=>:us, :us_al=>:us, :us_ga=>:us, :us_ne=>:us, :us_mo=>:us, :us_sc=>:us, :us_wv=>:us, :us_vi=>:us, :us_ut=>:us, :us_ri=>:us, :us_az=>:us, :us_co=>:us, :us_il=>:us, :us_mt=>:us, :us_nm=>:us, :us_ny=>:us, :us_oh=>:us, :us_pa=>:us, :us_mi=>:us, :us_mn=>:us, :us_nv=>:us, :us_or=>:us, :us_sd=>:us, :us_wa=>:us, :us_wi=>:us, :us_wy=>:us, :us_ia=>:us, :us_ks=>:us, :us_nh=>:us, :us_ok=>:us, :unitednations=>:unitednations, :ups=>:ups, :za=>:za, :ve=>:southamerica, :sk=>:europe, :si=>:europe, :jp=>:jp, :vi=>:vi, :sg=>:sg, :my=>:my, :th=>:th, :ng=>:ng}
|
6
6
|
end
|
@@ -31,20 +31,24 @@ module Holidays
|
|
31
31
|
{:mday => 25, :observed => "to_monday_if_weekend(date)", :observed_arguments => [:date], :name => "ANZAC Day", :regions => [:au_wa]}],
|
32
32
|
5 => [{:function => "qld_labour_day_may(year)", :function_arguments => [:year], :name => "Labour Day", :regions => [:au_qld]},
|
33
33
|
{:wday => 1, :week => 1, :name => "May Day", :regions => [:au_nt]},
|
34
|
-
{:function => "may_pub_hol_sa(year)", :function_arguments => [:year], :name => "May Public Holiday", :regions => [:au_sa]}
|
34
|
+
{:function => "may_pub_hol_sa(year)", :function_arguments => [:year], :name => "May Public Holiday", :regions => [:au_sa]},
|
35
|
+
{:mday => 27, :function => "to_nearest_monday_after(date)", :function_arguments => [:date], :year_ranges => { :from => 2018 },:name => "Reconciliation Day", :regions => [:au_act]}],
|
35
36
|
6 => [{:wday => 1, :week => 1, :name => "Western Australia Day", :regions => [:au_wa]},
|
36
|
-
{:wday => 1, :week => 2, :name => "Queen's Birthday", :regions => [:au_act, :au_nsw, :au_sa, :au_tas, :au_nt, :au_vic]},
|
37
|
+
{:wday => 1, :week => 2, :year_ranges => { :until => 2022 },:name => "Queen's Birthday", :regions => [:au_act, :au_nsw, :au_sa, :au_tas, :au_nt, :au_vic]},
|
38
|
+
{:wday => 1, :week => 2, :year_ranges => { :from => 2023 },:name => "King's Birthday", :regions => [:au_act, :au_nsw, :au_sa, :au_tas, :au_nt, :au_vic]},
|
37
39
|
{:function => "qld_queens_birthday_june(year)", :function_arguments => [:year], :name => "Queen's Birthday", :regions => [:au_qld]},
|
38
40
|
{:mday => 6, :type => :informal, :name => "Queensland Day", :regions => [:au_qld]}],
|
39
41
|
7 => [{:wday => 5, :week => 3, :name => "Cairns Show", :regions => [:au_qld_cairns]}],
|
40
42
|
8 => [{:function => "qld_brisbane_ekka_holiday(year)", :function_arguments => [:year], :name => "Ekka", :regions => [:au_qld_brisbane]}],
|
41
43
|
9 => [{:mday => 22, :year_ranges => { :limited => [2022] },:name => "National Day of Mourning for Her Majesty Queen Elizabeth II", :regions => [:au]},
|
42
|
-
{:wday => 1, :week => -1, :name => "Queen's Birthday", :regions => [:au_wa]},
|
43
|
-
{:wday => 1, :week => -1, :
|
44
|
+
{:wday => 1, :week => -1, :year_ranges => { :until => 2021 },:name => "Queen's Birthday", :regions => [:au_wa]},
|
45
|
+
{:wday => 1, :week => -1, :year_ranges => { :from => 2022 },:name => "King's Birthday", :regions => [:au_wa]},
|
46
|
+
{:wday => 1, :week => -1, :year_ranges => { :until => 2017 },:name => "Family & Community Day", :regions => [:au_act]}],
|
44
47
|
10 => [{:function => "afl_grand_final(year)", :function_arguments => [:year], :name => "Friday before the AFL Grand Final", :regions => [:au_vic]},
|
45
48
|
{:wday => 1, :week => 1, :name => "Labour Day", :regions => [:au_act, :au_nsw, :au_sa]},
|
46
49
|
{:function => "qld_labour_day_october(year)", :function_arguments => [:year], :observed => "to_monday_if_weekend(date)", :observed_arguments => [:date], :name => "Labour Day", :regions => [:au_qld]},
|
47
|
-
{:function => "qld_queens_bday_october(year)", :function_arguments => [:year], :observed => "to_monday_if_weekend(date)", :observed_arguments => [:date], :name => "Queen's Birthday", :regions => [:au_qld]},
|
50
|
+
{:function => "qld_queens_bday_october(year)", :function_arguments => [:year], :year_ranges => { :until => 2022 },:observed => "to_monday_if_weekend(date)", :observed_arguments => [:date], :name => "Queen's Birthday", :regions => [:au_qld]},
|
51
|
+
{:function => "qld_kings_bday_october(year)", :function_arguments => [:year], :year_ranges => { :from => 2023 },:observed => "to_monday_if_weekend(date)", :observed_arguments => [:date], :name => "King's Birthday", :regions => [:au_qld]},
|
48
52
|
{:function => "hobart_show_day(year)", :function_arguments => [:year], :name => "Royal Hobart Show", :regions => [:au_tas_south]}],
|
49
53
|
11 => [{:function => "g20_day_2014_only(year)", :function_arguments => [:year], :name => "G20 Day", :regions => [:au_qld_brisbane]},
|
50
54
|
{:wday => 1, :week => 1, :name => "Recreation Day", :regions => [:au_tas_north]},
|
@@ -86,6 +90,14 @@ else
|
|
86
90
|
end
|
87
91
|
},
|
88
92
|
|
93
|
+
"qld_kings_bday_october(year)" => Proc.new { |year|
|
94
|
+
if year >= 2023
|
95
|
+
Holidays::Factory::DateCalculator.day_of_month_calculator.call(year, 10, 1, 1)
|
96
|
+
else
|
97
|
+
nil
|
98
|
+
end
|
99
|
+
},
|
100
|
+
|
89
101
|
"qld_queens_birthday_june(year)" => Proc.new { |year|
|
90
102
|
if year <= 2015
|
91
103
|
Holidays::Factory::DateCalculator.day_of_month_calculator.call(year, 6, 2, 1)
|
@@ -140,6 +152,24 @@ else
|
|
140
152
|
end
|
141
153
|
},
|
142
154
|
|
155
|
+
"to_nearest_monday_after(date)" => Proc.new { |date|
|
156
|
+
case date.wday
|
157
|
+
when 6
|
158
|
+
date += 2
|
159
|
+
when 5
|
160
|
+
date += 3
|
161
|
+
when 4
|
162
|
+
date += 4
|
163
|
+
when 3
|
164
|
+
date += 5
|
165
|
+
when 2
|
166
|
+
date += 6
|
167
|
+
when 0
|
168
|
+
date += 1
|
169
|
+
end
|
170
|
+
date
|
171
|
+
},
|
172
|
+
|
143
173
|
|
144
174
|
}
|
145
175
|
end
|
@@ -22,7 +22,8 @@ module Holidays
|
|
22
22
|
9 => [{:mday => 7, :name => "Proclamação da Independência", :regions => [:br]}],
|
23
23
|
10 => [{:mday => 12, :name => "Dia de Nossa Senhora Aparecida", :regions => [:br]}],
|
24
24
|
11 => [{:mday => 2, :name => "Dia de Finados", :regions => [:br]},
|
25
|
-
{:mday => 15, :name => "Proclamação da República", :regions => [:br]}
|
25
|
+
{:mday => 15, :name => "Proclamação da República", :regions => [:br]},
|
26
|
+
{:mday => 20, :year_ranges => { :from => 2024 },:name => "Dia Nacional de Zumbi e da Consciência Negra", :regions => [:br]}],
|
26
27
|
12 => [{:mday => 25, :name => "Natal", :regions => [:br]}]
|
27
28
|
}
|
28
29
|
end
|
@@ -53,7 +53,8 @@ module Holidays
|
|
53
53
|
{:wday => 1, :week => 1, :type => :informal, :name => "Terry Fox Day", :regions => [:ca_mb]},
|
54
54
|
{:wday => 1, :week => 3, :name => "Discovery Day", :regions => [:ca_yt]}],
|
55
55
|
9 => [{:wday => 1, :week => 1, :name => "Labour Day", :regions => [:ca]},
|
56
|
-
{:mday => 30, :year_ranges => { :from => 2021 },:name => "National Day for Truth and Reconciliation", :regions => [:
|
56
|
+
{:mday => 30, :year_ranges => { :from => 2021 },:observed => "to_monday_if_weekend(date)", :observed_arguments => [:date], :name => "National Day for Truth and Reconciliation", :regions => [:ca_bc, :ca_nt, :ca_pe, :ca_yt]},
|
57
|
+
{:mday => 30, :year_ranges => { :from => 2021 },:observed => "to_monday_if_weekend(date)", :observed_arguments => [:date], :type => :informal, :name => "National Day for Truth and Reconciliation", :regions => [:ca_ab, :ca_mb, :ca_nu]}],
|
57
58
|
10 => [{:wday => 1, :week => 2, :name => "Thanksgiving", :regions => [:ca_ab, :ca_bc, :ca_mb, :ca_nt, :ca_nu, :ca_on, :ca_qc, :ca_sk, :ca_yt]},
|
58
59
|
{:mday => 31, :type => :informal, :name => "Halloween", :regions => [:us, :ca]}],
|
59
60
|
11 => [{:mday => 11, :observed => "to_monday_if_weekend(date)", :observed_arguments => [:date], :name => "Remembrance Day", :regions => [:ca_ab, :ca_sk, :ca_bc, :ca_pe, :ca_nl, :ca_nt, :ca_nu, :ca_nb, :ca_yt]}],
|
@@ -7,7 +7,7 @@ module Holidays
|
|
7
7
|
# All the definitions are available at https://github.com/holidays/holidays
|
8
8
|
module DE # :nodoc:
|
9
9
|
def self.defined_regions
|
10
|
-
[:de, :de_bw, :de_by, :de_he, :de_nw, :de_rp, :de_sl, :de_sn_sorbian, :de_th_cath, :de_sn, :de_st, :de_be, :
|
10
|
+
[:de, :de_bw, :de_by, :de_he, :de_nw, :de_rp, :de_sl, :de_sn_sorbian, :de_th_cath, :de_sn, :de_st, :de_be, :de_mv, :de_by_cath, :de_by_augsburg, :de_th, :de_bb, :de_hb, :de_hh, :de_ni, :de_sh]
|
11
11
|
end
|
12
12
|
|
13
13
|
def self.holidays_by_month
|
@@ -24,12 +24,15 @@ module Holidays
|
|
24
24
|
{:function => "easter(year)", :function_arguments => [:year], :function_modifier => -46, :type => :informal, :name => "Aschermittwoch", :regions => [:de_bw, :de_by, :de_he, :de_nw, :de_rp, :de_sl, :de_sn]}],
|
25
25
|
1 => [{:mday => 1, :name => "Neujahrstag", :regions => [:de]},
|
26
26
|
{:mday => 6, :name => "Heilige Drei Könige", :regions => [:de_bw, :de_by, :de_st]}],
|
27
|
-
3 => [{:mday => 8, :year_ranges => { :from => 2019 },:name => "Internationaler Frauentag", :regions => [:de_be]}
|
27
|
+
3 => [{:mday => 8, :year_ranges => { :from => 2019 },:name => "Internationaler Frauentag", :regions => [:de_be]},
|
28
|
+
{:mday => 8, :year_ranges => { :from => 2023 },:name => "Internationaler Frauentag", :regions => [:de_mv]}],
|
28
29
|
5 => [{:mday => 1, :name => "Tag der Arbeit", :regions => [:de]},
|
29
30
|
{:mday => 8, :year_ranges => { :limited => [2020] },:name => "Tag der Befreiung", :regions => [:de_be]}],
|
31
|
+
6 => [{:mday => 17, :year_ranges => { :between => 1954..1990 },:name => "Tag der Deutschen Einheit", :regions => [:de]}],
|
30
32
|
8 => [{:mday => 15, :name => "Mariä Himmelfahrt", :regions => [:de_by_cath, :de_by_augsburg, :de_sl]},
|
31
33
|
{:mday => 8, :name => "Friedensfest", :regions => [:de_by_augsburg]}],
|
32
|
-
|
34
|
+
9 => [{:mday => 20, :year_ranges => { :from => 2019 },:name => "Weltkindertag", :regions => [:de_th]}],
|
35
|
+
10 => [{:mday => 3, :year_ranges => { :from => 1990 },:name => "Tag der Deutschen Einheit", :regions => [:de]},
|
33
36
|
{:mday => 31, :name => "Reformationstag", :regions => [:de_bb, :de_mv, :de_sn, :de_st, :de_th]},
|
34
37
|
{:mday => 31, :type => :informal, :name => "Reformationstag", :regions => [:de_bw]},
|
35
38
|
{:mday => 31, :year_ranges => { :limited => [2017] },:name => "Reformationstag", :regions => [:de]},
|
@@ -18,7 +18,7 @@ module Holidays
|
|
18
18
|
{:function => "easter(year)", :function_arguments => [:year], :function_modifier => -2, :name => "Langfredag", :regions => [:dk]},
|
19
19
|
{:function => "easter(year)", :function_arguments => [:year], :name => "Påskedag", :regions => [:dk]},
|
20
20
|
{:function => "easter(year)", :function_arguments => [:year], :function_modifier => 1, :name => "2. påskedag", :regions => [:dk]},
|
21
|
-
{:function => "easter(year)", :function_arguments => [:year], :function_modifier => 26, :name => "Store Bededag", :regions => [:dk]},
|
21
|
+
{:function => "easter(year)", :function_arguments => [:year], :function_modifier => 26, :year_ranges => { :until => 2023 },:name => "Store Bededag", :regions => [:dk]},
|
22
22
|
{:function => "easter(year)", :function_arguments => [:year], :function_modifier => 39, :name => "Kristi Himmelfartsdag", :regions => [:dk]},
|
23
23
|
{:function => "easter(year)", :function_arguments => [:year], :function_modifier => 49, :name => "Pinsedag", :regions => [:dk]},
|
24
24
|
{:function => "easter(year)", :function_arguments => [:year], :function_modifier => 50, :name => "2. Pinsedag", :regions => [:dk]}],
|