holidays 1.0.3 → 1.0.4
Sign up to get free protection for your applications and to get access to all the features.
- data/.travis.yml +8 -0
- data/CHANGELOG +3 -0
- data/Gemfile +8 -0
- data/data/build_defs.rb +12 -8
- data/data/index.yaml +3 -1
- data/data/li.yaml +102 -0
- data/data/pl.yaml +310 -0
- data/data/united_nations.yaml +186 -185
- data/holidays.gemspec +61 -11
- data/lib/holidays.rb +19 -2
- data/lib/holidays/MANIFEST +24 -23
- data/lib/holidays/at.rb +17 -13
- data/lib/holidays/au.rb +21 -17
- data/lib/holidays/br.rb +18 -14
- data/lib/holidays/ca.rb +27 -23
- data/lib/holidays/cz.rb +18 -14
- data/lib/holidays/de.rb +18 -14
- data/lib/holidays/dk.rb +20 -16
- data/lib/holidays/el.rb +17 -13
- data/lib/holidays/es.rb +27 -23
- data/lib/holidays/europe.rb +163 -95
- data/lib/holidays/fi.rb +20 -16
- data/lib/holidays/fr.rb +18 -14
- data/lib/holidays/gb.rb +20 -16
- data/lib/holidays/ie.rb +17 -13
- data/lib/holidays/is.rb +21 -17
- data/lib/holidays/it.rb +18 -14
- data/lib/holidays/jp.rb +54 -50
- data/lib/holidays/li.rb +48 -0
- data/lib/holidays/mx.rb +27 -23
- data/lib/holidays/nl.rb +16 -12
- data/lib/holidays/no.rb +14 -10
- data/lib/holidays/north_america.rb +47 -43
- data/lib/holidays/nyse.rb +17 -13
- data/lib/holidays/nz.rb +24 -20
- data/lib/holidays/pl.rb +80 -0
- data/lib/holidays/pt.rb +19 -15
- data/lib/holidays/scandinavia.rb +51 -47
- data/lib/holidays/se.rb +21 -17
- data/lib/holidays/united_nations.rb +68 -8
- data/lib/holidays/ups.rb +15 -11
- data/lib/holidays/us.rb +22 -18
- data/lib/holidays/za.rb +19 -15
- data/rakefile.rb +6 -4
- data/test/defs/test_defs_europe.rb +161 -1
- data/test/defs/test_defs_li.rb +35 -0
- data/test/defs/test_defs_pl.rb +145 -0
- data/test/test_all_regions.rb +48 -0
- metadata +190 -42
data/lib/holidays/li.rb
ADDED
@@ -0,0 +1,48 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
module Holidays
|
3
|
+
# This file is generated by the Ruby Holidays gem.
|
4
|
+
#
|
5
|
+
# Definitions loaded: data/li.yaml
|
6
|
+
#
|
7
|
+
# To use the definitions in this file, load it right after you load the
|
8
|
+
# Holiday gem:
|
9
|
+
#
|
10
|
+
# require 'holidays'
|
11
|
+
# require 'holidays/li'
|
12
|
+
#
|
13
|
+
# All the definitions are available at https://github.com/alexdunae/holidays
|
14
|
+
module LI # :nodoc:
|
15
|
+
def self.defined_regions
|
16
|
+
[:li]
|
17
|
+
end
|
18
|
+
|
19
|
+
def self.holidays_by_month
|
20
|
+
{
|
21
|
+
0 => [{:function => lambda { |year| Holidays.easter(year)-47 }, :function_id => "easter(year)-47", :name => "Fasnachtsdienstag", :regions => [:li]},
|
22
|
+
{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Karfreitag", :regions => [:li]},
|
23
|
+
{:function => lambda { |year| Holidays.easter(year) }, :function_id => "easter(year)", :type => :informal, :name => "Ostern", :regions => [:li]},
|
24
|
+
{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Ostermontag", :regions => [:li]},
|
25
|
+
{:function => lambda { |year| Holidays.easter(year)+39 }, :function_id => "easter(year)+39", :name => "Auffahrt", :regions => [:li]},
|
26
|
+
{:function => lambda { |year| Holidays.easter(year)+50 }, :function_id => "easter(year)+50", :name => "Pfingstmontag", :regions => [:li]},
|
27
|
+
{:function => lambda { |year| Holidays.easter(year)+60 }, :function_id => "easter(year)+60", :name => "Fronleichnam", :regions => [:li]}],
|
28
|
+
1 => [{:mday => 1, :name => "Neujahrstag", :regions => [:li]},
|
29
|
+
{:mday => 6, :name => "Heilige Drei Könige", :regions => [:li]}],
|
30
|
+
2 => [{:mday => 2, :name => "Maria Lichtmess", :regions => [:li]}],
|
31
|
+
3 => [{:mday => 19, :name => "St. Josef", :regions => [:li]}],
|
32
|
+
5 => [{:mday => 1, :name => "Tag der Arbeit", :regions => [:li]}],
|
33
|
+
8 => [{:mday => 15, :name => "Staatsfeiertag", :regions => [:li]}],
|
34
|
+
9 => [{:mday => 8, :name => "Maria Geburt", :regions => [:li]}],
|
35
|
+
11 => [{:mday => 1, :name => "Allerheiligen", :regions => [:li]}],
|
36
|
+
12 => [{:mday => 8, :name => "Maria Empfängnis", :regions => [:li]},
|
37
|
+
{:mday => 24, :name => "Heilig Abend", :regions => [:li]},
|
38
|
+
{:mday => 25, :name => "Weihnachten", :regions => [:li]},
|
39
|
+
{:mday => 26, :name => "Stefanstag", :regions => [:li]},
|
40
|
+
{:mday => 31, :name => "Silvester", :regions => [:li]}]
|
41
|
+
}
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
|
46
|
+
end
|
47
|
+
|
48
|
+
Holidays.merge_defs(Holidays::LI.defined_regions, Holidays::LI.holidays_by_month)
|
data/lib/holidays/mx.rb
CHANGED
@@ -1,52 +1,56 @@
|
|
1
1
|
# encoding: utf-8
|
2
2
|
module Holidays
|
3
|
-
# This file is generated by the Ruby
|
3
|
+
# This file is generated by the Ruby Holidays gem.
|
4
4
|
#
|
5
5
|
# Definitions loaded: data/mx.yaml, data/north_america_informal.yaml
|
6
6
|
#
|
7
|
-
# To use the definitions in this file, load
|
7
|
+
# To use the definitions in this file, load it right after you load the
|
8
8
|
# Holiday gem:
|
9
9
|
#
|
10
10
|
# require 'holidays'
|
11
11
|
# require 'holidays/mx'
|
12
12
|
#
|
13
|
-
#
|
13
|
+
# All the definitions are available at https://github.com/alexdunae/holidays
|
14
14
|
module MX # :nodoc:
|
15
|
-
|
15
|
+
def self.defined_regions
|
16
|
+
[:mx, :mx_pue, :us, :ca]
|
17
|
+
end
|
16
18
|
|
17
|
-
|
19
|
+
def self.holidays_by_month
|
20
|
+
{
|
21
|
+
1 => [{:mday => 1, :name => "Año nuevo", :regions => [:mx]},
|
22
|
+
{:mday => 6, :name => "Dia de los Santos Reyes", :regions => [:mx]}],
|
23
|
+
2 => [{:wday => 1, :week => 1, :name => "Día de la Constitución", :regions => [:mx]},
|
24
|
+
{:mday => 2, :type => :informal, :name => "Groundhog Day", :regions => [:us, :ca]},
|
25
|
+
{:mday => 14, :type => :informal, :name => "Valentine's Day", :regions => [:us, :ca]}],
|
26
|
+
3 => [{:wday => 1, :week => 3, :name => "Natalicio de Benito Juárez", :regions => [:mx]},
|
27
|
+
{:mday => 17, :type => :informal, :name => "St. Patrick's Day", :regions => [:us, :ca]}],
|
28
|
+
4 => [{:mday => 30, :type => :informal, :name => "Día del Niño", :regions => [:mx]},
|
29
|
+
{:mday => 1, :type => :informal, :name => "April Fool's Day", :regions => [:us, :ca]},
|
30
|
+
{:mday => 22, :type => :informal, :name => "Earth Day", :regions => [:us, :ca]}],
|
18
31
|
5 => [{:mday => 1, :name => "Día del Trabajo", :regions => [:mx]},
|
19
32
|
{:mday => 5, :type => :informal, :name => "Cinco de Mayo", :regions => [:mx]},
|
20
33
|
{:mday => 5, :name => "La Batalla de Puebla", :regions => [:mx_pue]},
|
21
34
|
{:mday => 10, :type => :informal, :name => "Día de la Madre", :regions => [:mx]},
|
22
35
|
{:mday => 15, :type => :informal, :name => "Día del Maestro", :regions => [:mx]},
|
23
36
|
{:wday => 0, :week => 3, :type => :informal, :name => "Father's Day", :regions => [:us, :ca]}],
|
37
|
+
6 => [{:wday => 0, :week => 3, :type => :informal, :name => "Día del Padre", :regions => [:mx]}],
|
38
|
+
9 => [{:mday => 15, :name => "Grito de Dolores", :regions => [:mx]},
|
39
|
+
{:mday => 16, :name => "Día de la Independencia", :regions => [:mx]}],
|
40
|
+
10 => [{:mday => 12, :type => :informal, :name => "Día de la Raza", :regions => [:mx]},
|
41
|
+
{:mday => 31, :type => :informal, :name => "Halloween", :regions => [:us, :ca]}],
|
24
42
|
11 => [{:mday => 1, :type => :informal, :name => "Todos los Santos", :regions => [:mx]},
|
25
43
|
{:mday => 2, :type => :informal, :name => "Los Fieles Difuntos", :regions => [:mx]},
|
26
44
|
{:wday => 1, :week => 3, :name => "Día de la Revolución", :regions => [:mx]}],
|
27
|
-
6 => [{:wday => 0, :week => 3, :type => :informal, :name => "Día del Padre", :regions => [:mx]}],
|
28
|
-
1 => [{:mday => 1, :name => "Año nuevo", :regions => [:mx]},
|
29
|
-
{:mday => 6, :name => "Dia de los Santos Reyes", :regions => [:mx]}],
|
30
45
|
12 => [{:mday => 12, :type => :informal, :name => "Día de la Virgen de Guadalupe", :regions => [:mx]},
|
31
46
|
{:mday => 24, :type => :informal, :name => "Nochebuena", :regions => [:mx]},
|
32
47
|
{:mday => 25, :name => "Navidad", :regions => [:mx]},
|
33
|
-
{:mday => 28, :name => "Los Santos Inocentes", :regions => [:mx]}]
|
34
|
-
|
35
|
-
|
36
|
-
{:mday => 14, :type => :informal, :name => "Valentine's Day", :regions => [:us, :ca]}],
|
37
|
-
3 => [{:wday => 1, :week => 3, :name => "Natalicio de Benito Juárez", :regions => [:mx]},
|
38
|
-
{:mday => 17, :type => :informal, :name => "St. Patrick's Day", :regions => [:us, :ca]}],
|
39
|
-
9 => [{:mday => 15, :name => "Grito de Dolores", :regions => [:mx]},
|
40
|
-
{:mday => 16, :name => "Día de la Independencia", :regions => [:mx]}],
|
41
|
-
4 => [{:mday => 30, :type => :informal, :name => "Día del Niño", :regions => [:mx]},
|
42
|
-
{:mday => 1, :type => :informal, :name => "April Fool's Day", :regions => [:us, :ca]},
|
43
|
-
{:mday => 22, :type => :informal, :name => "Earth Day", :regions => [:us, :ca]}],
|
44
|
-
10 => [{:mday => 12, :type => :informal, :name => "Día de la Raza", :regions => [:mx]},
|
45
|
-
{:mday => 31, :type => :informal, :name => "Halloween", :regions => [:us, :ca]}]
|
46
|
-
}
|
48
|
+
{:mday => 28, :name => "Los Santos Inocentes", :regions => [:mx]}]
|
49
|
+
}
|
50
|
+
end
|
47
51
|
end
|
48
52
|
|
49
53
|
|
50
54
|
end
|
51
55
|
|
52
|
-
Holidays.merge_defs(Holidays::MX
|
56
|
+
Holidays.merge_defs(Holidays::MX.defined_regions, Holidays::MX.holidays_by_month)
|
data/lib/holidays/nl.rb
CHANGED
@@ -1,37 +1,41 @@
|
|
1
1
|
# encoding: utf-8
|
2
2
|
module Holidays
|
3
|
-
# This file is generated by the Ruby
|
3
|
+
# This file is generated by the Ruby Holidays gem.
|
4
4
|
#
|
5
5
|
# Definitions loaded: data/nl.yaml
|
6
6
|
#
|
7
|
-
# To use the definitions in this file, load
|
7
|
+
# To use the definitions in this file, load it right after you load the
|
8
8
|
# Holiday gem:
|
9
9
|
#
|
10
10
|
# require 'holidays'
|
11
11
|
# require 'holidays/nl'
|
12
12
|
#
|
13
|
-
#
|
13
|
+
# All the definitions are available at https://github.com/alexdunae/holidays
|
14
14
|
module NL # :nodoc:
|
15
|
-
|
15
|
+
def self.defined_regions
|
16
|
+
[:nl]
|
17
|
+
end
|
16
18
|
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
0 => [{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Goede Vrijdag", :regions => [:nl]},
|
19
|
+
def self.holidays_by_month
|
20
|
+
{
|
21
|
+
0 => [{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Goede Vrijdag", :regions => [:nl]},
|
21
22
|
{:function => lambda { |year| Holidays.easter(year) }, :function_id => "easter(year)", :name => "Pasen", :regions => [:nl]},
|
22
23
|
{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Pasen", :regions => [:nl]},
|
23
24
|
{:function => lambda { |year| Holidays.easter(year)+39 }, :function_id => "easter(year)+39", :name => "Hemelvaartsdag", :regions => [:nl]},
|
24
25
|
{:function => lambda { |year| Holidays.easter(year)+49 }, :function_id => "easter(year)+49", :name => "Pinksteren", :regions => [:nl]},
|
25
26
|
{:function => lambda { |year| Holidays.easter(year)+50 }, :function_id => "easter(year)+50", :name => "Pinksteren", :regions => [:nl]}],
|
26
27
|
1 => [{:mday => 1, :name => "Nieuwjaar", :regions => [:nl]}],
|
28
|
+
4 => [{:mday => 30, :name => "Koninginnedag", :regions => [:nl]}],
|
29
|
+
5 => [{:mday => 4, :name => "Dodenherdenking", :regions => [:nl]},
|
30
|
+
{:mday => 5, :name => "Bevrijdingsdag", :regions => [:nl]}],
|
27
31
|
12 => [{:mday => 5, :type => :informal, :name => "Sinterklaas", :regions => [:nl]},
|
28
32
|
{:mday => 25, :name => "Kerstmis", :regions => [:nl]},
|
29
|
-
{:mday => 26, :name => "Kerstmis", :regions => [:nl]}]
|
30
|
-
|
31
|
-
|
33
|
+
{:mday => 26, :name => "Kerstmis", :regions => [:nl]}]
|
34
|
+
}
|
35
|
+
end
|
32
36
|
end
|
33
37
|
|
34
38
|
|
35
39
|
end
|
36
40
|
|
37
|
-
Holidays.merge_defs(Holidays::NL
|
41
|
+
Holidays.merge_defs(Holidays::NL.defined_regions, Holidays::NL.holidays_by_month)
|
data/lib/holidays/no.rb
CHANGED
@@ -1,23 +1,24 @@
|
|
1
1
|
# encoding: utf-8
|
2
2
|
module Holidays
|
3
|
-
# This file is generated by the Ruby
|
3
|
+
# This file is generated by the Ruby Holidays gem.
|
4
4
|
#
|
5
5
|
# Definitions loaded: data/no.yaml
|
6
6
|
#
|
7
|
-
# To use the definitions in this file, load
|
7
|
+
# To use the definitions in this file, load it right after you load the
|
8
8
|
# Holiday gem:
|
9
9
|
#
|
10
10
|
# require 'holidays'
|
11
11
|
# require 'holidays/no'
|
12
12
|
#
|
13
|
-
#
|
13
|
+
# All the definitions are available at https://github.com/alexdunae/holidays
|
14
14
|
module NO # :nodoc:
|
15
|
-
|
15
|
+
def self.defined_regions
|
16
|
+
[:no]
|
17
|
+
end
|
16
18
|
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
0 => [{:function => lambda { |year| Holidays.easter(year)-49 }, :function_id => "easter(year)-49", :type => :informal, :name => "Fastelavn", :regions => [:no]},
|
19
|
+
def self.holidays_by_month
|
20
|
+
{
|
21
|
+
0 => [{:function => lambda { |year| Holidays.easter(year)-49 }, :function_id => "easter(year)-49", :type => :informal, :name => "Fastelavn", :regions => [:no]},
|
21
22
|
{:function => lambda { |year| Holidays.easter(year)-7 }, :function_id => "easter(year)-7", :name => "Palmesøndag", :regions => [:no]},
|
22
23
|
{:function => lambda { |year| Holidays.easter(year)-3 }, :function_id => "easter(year)-3", :name => "Skjærtorsdag", :regions => [:no]},
|
23
24
|
{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Langfredag", :regions => [:no]},
|
@@ -27,14 +28,17 @@ module Holidays
|
|
27
28
|
{:function => lambda { |year| Holidays.easter(year)+49 }, :function_id => "easter(year)+49", :name => "1. pinsedag", :regions => [:no]},
|
28
29
|
{:function => lambda { |year| Holidays.easter(year)+50 }, :function_id => "easter(year)+50", :name => "2. pinsedag", :regions => [:no]}],
|
29
30
|
1 => [{:mday => 1, :name => "Nyttårsdag", :regions => [:no]}],
|
31
|
+
5 => [{:mday => 1, :name => "1. mai", :regions => [:no]},
|
32
|
+
{:mday => 17, :name => "17. mai", :regions => [:no]}],
|
30
33
|
12 => [{:mday => 24, :type => :informal, :name => "Julaften", :regions => [:no]},
|
31
34
|
{:mday => 25, :name => "1. juledag", :regions => [:no]},
|
32
35
|
{:mday => 26, :name => "2. juledag", :regions => [:no]},
|
33
36
|
{:mday => 31, :type => :informal, :name => "Nyttårsaften", :regions => [:no]}]
|
34
|
-
|
37
|
+
}
|
38
|
+
end
|
35
39
|
end
|
36
40
|
|
37
41
|
|
38
42
|
end
|
39
43
|
|
40
|
-
Holidays.merge_defs(Holidays::NO
|
44
|
+
Holidays.merge_defs(Holidays::NO.defined_regions, Holidays::NO.holidays_by_month)
|
@@ -1,20 +1,42 @@
|
|
1
1
|
# encoding: utf-8
|
2
2
|
module Holidays
|
3
|
-
# This file is generated by the Ruby
|
3
|
+
# This file is generated by the Ruby Holidays gem.
|
4
4
|
#
|
5
5
|
# Definitions loaded: data/ca.yaml, data/mx.yaml, data/us.yaml, data/north_america_informal.yaml
|
6
6
|
#
|
7
|
-
# To use the definitions in this file, load
|
7
|
+
# To use the definitions in this file, load it right after you load the
|
8
8
|
# Holiday gem:
|
9
9
|
#
|
10
10
|
# require 'holidays'
|
11
11
|
# require 'holidays/north_america'
|
12
12
|
#
|
13
|
-
#
|
13
|
+
# All the definitions are available at https://github.com/alexdunae/holidays
|
14
14
|
module North_America # :nodoc:
|
15
|
-
|
15
|
+
def self.defined_regions
|
16
|
+
[:ca, :ca_qc, :ca_ab, :ca_on, :ca_sk, :ca_mb, :ca_nf, :ca_nt, :ca_nu, :ca_bc, :ca_ns, :ca_yk, :mx, :mx_pue, :us, :us_dc]
|
17
|
+
end
|
16
18
|
|
17
|
-
|
19
|
+
def self.holidays_by_month
|
20
|
+
{
|
21
|
+
0 => [{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Good Friday", :regions => [:ca]},
|
22
|
+
{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :type => :informal, :name => "Easter Monday", :regions => [:ca]},
|
23
|
+
{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :type => :informal, :name => "Good Friday", :regions => [:us]}],
|
24
|
+
1 => [{:mday => 1, :name => "New Year's Day", :regions => [:ca]},
|
25
|
+
{:mday => 2, :name => "New Year's", :regions => [:ca_qc]},
|
26
|
+
{:mday => 1, :name => "Año nuevo", :regions => [:mx]},
|
27
|
+
{:mday => 6, :name => "Dia de los Santos Reyes", :regions => [:mx]},
|
28
|
+
{:mday => 1, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "New Year's Day", :regions => [:us]},
|
29
|
+
{:wday => 1, :week => 3, :name => "Martin Luther King, Jr. Day", :regions => [:us]},
|
30
|
+
{:function => lambda { |year| Holidays.us_inauguration_day(year) }, :function_id => "us_inauguration_day(year)", :name => "Inauguration Day", :regions => [:us_dc]}],
|
31
|
+
2 => [{:wday => 1, :week => 3, :name => "Family Day", :regions => [:ca_ab, :ca_on, :ca_sk]},
|
32
|
+
{:wday => 1, :week => 3, :name => "Louis Riel Day", :regions => [:ca_mb]},
|
33
|
+
{:wday => 1, :week => 1, :name => "Día de la Constitución", :regions => [:mx]},
|
34
|
+
{:wday => 1, :week => 3, :name => "Presidents' Day", :regions => [:us]},
|
35
|
+
{:mday => 2, :type => :informal, :name => "Groundhog Day", :regions => [:us, :ca]},
|
36
|
+
{:mday => 14, :type => :informal, :name => "Valentine's Day", :regions => [:us, :ca]}],
|
37
|
+
3 => [{:mday => 23, :name => "St. George's Day", :regions => [:ca_nf]},
|
38
|
+
{:wday => 1, :week => 3, :name => "Natalicio de Benito Juárez", :regions => [:mx]},
|
39
|
+
{:mday => 17, :type => :informal, :name => "St. Patrick's Day", :regions => [:us, :ca]}],
|
18
40
|
5 => [{:function => lambda { |year| Holidays.ca_victoria_day(year) }, :function_id => "ca_victoria_day(year)", :name => "Victoria Day", :regions => [:ca]},
|
19
41
|
{:function => lambda { |year| Holidays.ca_victoria_day(year) }, :function_id => "ca_victoria_day(year)", :name => "National Patriotes Day", :regions => [:ca_qc]},
|
20
42
|
{:mday => 1, :name => "Día del Trabajo", :regions => [:mx]},
|
@@ -24,64 +46,46 @@ module Holidays
|
|
24
46
|
{:mday => 15, :type => :informal, :name => "Día del Maestro", :regions => [:mx]},
|
25
47
|
{:wday => 1, :week => -1, :name => "Memorial Day", :regions => [:us]},
|
26
48
|
{:wday => 0, :week => 3, :type => :informal, :name => "Father's Day", :regions => [:us, :ca]}],
|
27
|
-
0 => [{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Good Friday", :regions => [:ca]},
|
28
|
-
{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :type => :informal, :name => "Easter Monday", :regions => [:ca]},
|
29
|
-
{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :type => :informal, :name => "Good Friday", :regions => [:us]}],
|
30
|
-
11 => [{:mday => 11, :name => "Remembrance Day", :regions => [:ca]},
|
31
|
-
{:mday => 1, :type => :informal, :name => "Todos los Santos", :regions => [:mx]},
|
32
|
-
{:mday => 2, :type => :informal, :name => "Los Fieles Difuntos", :regions => [:mx]},
|
33
|
-
{:wday => 1, :week => 3, :name => "Día de la Revolución", :regions => [:mx]},
|
34
|
-
{:mday => 11, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "Veterans Day", :regions => [:us]},
|
35
|
-
{:wday => 4, :week => 4, :name => "Thanksgiving", :regions => [:us]}],
|
36
49
|
6 => [{:mday => 24, :name => "Discovery Day", :regions => [:ca_nf]},
|
37
50
|
{:mday => 24, :name => "Fête Nationale", :regions => [:ca_qc]},
|
38
51
|
{:mday => 21, :name => "National Aboriginal Day", :regions => [:ca_nt]},
|
39
52
|
{:wday => 0, :week => 3, :type => :informal, :name => "Día del Padre", :regions => [:mx]}],
|
40
|
-
1 => [{:mday => 1, :name => "New Year's Day", :regions => [:ca]},
|
41
|
-
{:mday => 2, :name => "New Year's", :regions => [:ca_qc]},
|
42
|
-
{:mday => 1, :name => "Año nuevo", :regions => [:mx]},
|
43
|
-
{:mday => 6, :name => "Dia de los Santos Reyes", :regions => [:mx]},
|
44
|
-
{:mday => 1, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "New Year's Day", :regions => [:us]},
|
45
|
-
{:wday => 1, :week => 3, :name => "Martin Luther King, Jr. Day", :regions => [:us]},
|
46
|
-
{:function => lambda { |year| Holidays.us_inauguration_day(year) }, :function_id => "us_inauguration_day(year)", :name => "Inauguration Day", :regions => [:us_dc]}],
|
47
|
-
12 => [{:mday => 25, :name => "Christmas Day", :regions => [:ca]},
|
48
|
-
{:mday => 26, :name => "Boxing Day", :regions => [:ca]},
|
49
|
-
{:mday => 12, :type => :informal, :name => "Día de la Virgen de Guadalupe", :regions => [:mx]},
|
50
|
-
{:mday => 24, :type => :informal, :name => "Nochebuena", :regions => [:mx]},
|
51
|
-
{:mday => 25, :name => "Navidad", :regions => [:mx]},
|
52
|
-
{:mday => 28, :name => "Los Santos Inocentes", :regions => [:mx]},
|
53
|
-
{:mday => 25, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "Christmas Day", :regions => [:us]}],
|
54
53
|
7 => [{:mday => 1, :observed => lambda { |date| Holidays.to_monday_if_sunday(date) }, :observed_id => "to_monday_if_sunday", :name => "Canada Day", :regions => [:ca]},
|
55
54
|
{:mday => 12, :name => "Orangemen's Day", :regions => [:ca_nf]},
|
56
55
|
{:mday => 9, :name => "Nunavut Day", :regions => [:ca_nu]},
|
57
56
|
{:mday => 4, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "Independence Day", :regions => [:us]}],
|
58
|
-
2 => [{:wday => 1, :week => 3, :name => "Family Day", :regions => [:ca_ab, :ca_on, :ca_sk]},
|
59
|
-
{:wday => 1, :week => 3, :name => "Louis Riel Day", :regions => [:ca_mb]},
|
60
|
-
{:wday => 1, :week => 1, :name => "Día de la Constitución", :regions => [:mx]},
|
61
|
-
{:wday => 1, :week => 3, :name => "Presidents' Day", :regions => [:us]},
|
62
|
-
{:mday => 2, :type => :informal, :name => "Groundhog Day", :regions => [:us, :ca]},
|
63
|
-
{:mday => 14, :type => :informal, :name => "Valentine's Day", :regions => [:us, :ca]}],
|
64
57
|
8 => [{:wday => 1, :week => 1, :name => "BC Day", :regions => [:ca_bc]},
|
65
58
|
{:wday => 1, :week => 1, :name => "Saskatchewan Day", :regions => [:ca_sk]},
|
66
59
|
{:wday => 1, :week => 1, :name => "Heritage Day", :regions => [:ca_ab]},
|
67
60
|
{:wday => 1, :week => 1, :name => "Natal Day", :regions => [:ca_ns]},
|
68
61
|
{:wday => 1, :week => 1, :name => "Civic Holiday", :regions => [:ca_on]},
|
69
62
|
{:wday => 1, :week => 3, :name => "Discovery Day", :regions => [:ca_yk]}],
|
70
|
-
3 => [{:mday => 23, :name => "St. George's Day", :regions => [:ca_nf]},
|
71
|
-
{:wday => 1, :week => 3, :name => "Natalicio de Benito Juárez", :regions => [:mx]},
|
72
|
-
{:mday => 17, :type => :informal, :name => "St. Patrick's Day", :regions => [:us, :ca]}],
|
73
63
|
9 => [{:wday => 1, :week => 1, :name => "Labour Day", :regions => [:ca]},
|
74
64
|
{:mday => 15, :name => "Grito de Dolores", :regions => [:mx]},
|
75
65
|
{:mday => 16, :name => "Día de la Independencia", :regions => [:mx]},
|
76
66
|
{:wday => 1, :week => 1, :name => "Labor Day", :regions => [:us]}],
|
77
|
-
4 => [{:mday => 30, :type => :informal, :name => "Día del Niño", :regions => [:mx]},
|
78
|
-
{:mday => 1, :type => :informal, :name => "April Fool's Day", :regions => [:us, :ca]},
|
79
|
-
{:mday => 22, :type => :informal, :name => "Earth Day", :regions => [:us, :ca]}],
|
80
67
|
10 => [{:wday => 1, :week => 2, :name => "Thanksgiving", :regions => [:ca]},
|
81
68
|
{:mday => 12, :type => :informal, :name => "Día de la Raza", :regions => [:mx]},
|
82
69
|
{:wday => 1, :week => 2, :name => "Columbus Day", :regions => [:us]},
|
83
|
-
{:mday => 31, :type => :informal, :name => "Halloween", :regions => [:us, :ca]}]
|
84
|
-
|
70
|
+
{:mday => 31, :type => :informal, :name => "Halloween", :regions => [:us, :ca]}],
|
71
|
+
11 => [{:mday => 11, :name => "Remembrance Day", :regions => [:ca]},
|
72
|
+
{:mday => 1, :type => :informal, :name => "Todos los Santos", :regions => [:mx]},
|
73
|
+
{:mday => 2, :type => :informal, :name => "Los Fieles Difuntos", :regions => [:mx]},
|
74
|
+
{:wday => 1, :week => 3, :name => "Día de la Revolución", :regions => [:mx]},
|
75
|
+
{:mday => 11, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "Veterans Day", :regions => [:us]},
|
76
|
+
{:wday => 4, :week => 4, :name => "Thanksgiving", :regions => [:us]}],
|
77
|
+
12 => [{:mday => 25, :name => "Christmas Day", :regions => [:ca]},
|
78
|
+
{:mday => 26, :name => "Boxing Day", :regions => [:ca]},
|
79
|
+
{:mday => 12, :type => :informal, :name => "Día de la Virgen de Guadalupe", :regions => [:mx]},
|
80
|
+
{:mday => 24, :type => :informal, :name => "Nochebuena", :regions => [:mx]},
|
81
|
+
{:mday => 25, :name => "Navidad", :regions => [:mx]},
|
82
|
+
{:mday => 28, :name => "Los Santos Inocentes", :regions => [:mx]},
|
83
|
+
{:mday => 25, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "Christmas Day", :regions => [:us]}],
|
84
|
+
4 => [{:mday => 30, :type => :informal, :name => "Día del Niño", :regions => [:mx]},
|
85
|
+
{:mday => 1, :type => :informal, :name => "April Fool's Day", :regions => [:us, :ca]},
|
86
|
+
{:mday => 22, :type => :informal, :name => "Earth Day", :regions => [:us, :ca]}]
|
87
|
+
}
|
88
|
+
end
|
85
89
|
end
|
86
90
|
|
87
91
|
# Monday on or before May 24
|
@@ -105,4 +109,4 @@ end
|
|
105
109
|
|
106
110
|
end
|
107
111
|
|
108
|
-
Holidays.merge_defs(Holidays::North_America
|
112
|
+
Holidays.merge_defs(Holidays::North_America.defined_regions, Holidays::North_America.holidays_by_month)
|
data/lib/holidays/nyse.rb
CHANGED
@@ -1,33 +1,37 @@
|
|
1
1
|
# encoding: utf-8
|
2
2
|
module Holidays
|
3
|
-
# This file is generated by the Ruby
|
3
|
+
# This file is generated by the Ruby Holidays gem.
|
4
4
|
#
|
5
5
|
# Definitions loaded: data/nyse.yaml
|
6
6
|
#
|
7
|
-
# To use the definitions in this file, load
|
7
|
+
# To use the definitions in this file, load it right after you load the
|
8
8
|
# Holiday gem:
|
9
9
|
#
|
10
10
|
# require 'holidays'
|
11
11
|
# require 'holidays/nyse'
|
12
12
|
#
|
13
|
-
#
|
13
|
+
# All the definitions are available at https://github.com/alexdunae/holidays
|
14
14
|
module NYSE # :nodoc:
|
15
|
-
|
15
|
+
def self.defined_regions
|
16
|
+
[:nyse]
|
17
|
+
end
|
16
18
|
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
11 => [{:wday => 4, :week => 4, :name => "Thanksgiving", :regions => [:nyse]}],
|
19
|
+
def self.holidays_by_month
|
20
|
+
{
|
21
|
+
0 => [{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Good Friday", :regions => [:nyse]}],
|
21
22
|
1 => [{:mday => 1, :name => "New Year's Day", :regions => [:nyse]},
|
22
23
|
{:wday => 1, :week => 3, :name => "Martin Luther King, Jr. Day", :regions => [:nyse]}],
|
23
|
-
12 => [{:mday => 25, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "Christmas Day", :regions => [:nyse]}],
|
24
|
-
7 => [{:mday => 4, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "Independence Day", :regions => [:nyse]}],
|
25
24
|
2 => [{:wday => 1, :week => 3, :name => "Presidents' Day", :regions => [:nyse]}],
|
26
|
-
|
27
|
-
|
25
|
+
5 => [{:wday => 1, :week => -1, :name => "Memorial Day", :regions => [:nyse]}],
|
26
|
+
7 => [{:mday => 4, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "Independence Day", :regions => [:nyse]}],
|
27
|
+
9 => [{:wday => 1, :week => 1, :name => "Labor Day", :regions => [:nyse]}],
|
28
|
+
11 => [{:wday => 4, :week => 4, :name => "Thanksgiving", :regions => [:nyse]}],
|
29
|
+
12 => [{:mday => 25, :observed => lambda { |date| Holidays.to_weekday_if_weekend(date) }, :observed_id => "to_weekday_if_weekend", :name => "Christmas Day", :regions => [:nyse]}]
|
30
|
+
}
|
31
|
+
end
|
28
32
|
end
|
29
33
|
|
30
34
|
|
31
35
|
end
|
32
36
|
|
33
|
-
Holidays.merge_defs(Holidays::NYSE
|
37
|
+
Holidays.merge_defs(Holidays::NYSE.defined_regions, Holidays::NYSE.holidays_by_month)
|
data/lib/holidays/nz.rb
CHANGED
@@ -1,45 +1,49 @@
|
|
1
1
|
# encoding: utf-8
|
2
2
|
module Holidays
|
3
|
-
# This file is generated by the Ruby
|
3
|
+
# This file is generated by the Ruby Holidays gem.
|
4
4
|
#
|
5
5
|
# Definitions loaded: data/nz.yaml
|
6
6
|
#
|
7
|
-
# To use the definitions in this file, load
|
7
|
+
# To use the definitions in this file, load it right after you load the
|
8
8
|
# Holiday gem:
|
9
9
|
#
|
10
10
|
# require 'holidays'
|
11
11
|
# require 'holidays/nz'
|
12
12
|
#
|
13
|
-
#
|
13
|
+
# All the definitions are available at https://github.com/alexdunae/holidays
|
14
14
|
module NZ # :nodoc:
|
15
|
-
|
15
|
+
def self.defined_regions
|
16
|
+
[:nz, :nz_sl, :nz_we, :nz_ak, :nz_nl, :nz_ot, :nz_sc, :nz_hb, :nz_mb, :nz_ca, :nz_ch, :nz_wl]
|
17
|
+
end
|
16
18
|
|
17
|
-
|
18
|
-
|
19
|
+
def self.holidays_by_month
|
20
|
+
{
|
21
|
+
0 => [{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Good Friday", :regions => [:nz]},
|
19
22
|
{:function => lambda { |year| Holidays.easter(year)-1 }, :function_id => "easter(year)-1", :name => "Easter Saturday", :regions => [:nz]},
|
20
23
|
{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Easter Monday", :regions => [:nz]}],
|
21
|
-
11 => [{:wday => 5, :week => 2, :name => "Canterbury Anniversary Day", :regions => [:nz_ca]},
|
22
|
-
{:mday => 30, :observed => lambda { |date| Holidays.closest_monday(date) }, :observed_id => "closest_monday", :name => "Chatham Island Anniversary Day", :regions => [:nz_ch]}],
|
23
|
-
6 => [{:wday => 1, :week => 1, :name => "Queen's Birthday", :regions => [:nz]}],
|
24
24
|
1 => [{:mday => 1, :observed => lambda { |date| Holidays.to_monday_if_weekend(date) }, :observed_id => "to_monday_if_weekend", :name => "New Year's Day", :regions => [:nz]},
|
25
25
|
{:mday => 2, :observed => lambda { |date| Holidays.to_weekday_if_boxing_weekend(date) }, :observed_id => "to_weekday_if_boxing_weekend", :name => "Day after New Year's Day", :regions => [:nz]},
|
26
26
|
{:mday => 17, :name => "Southland Anniversary Day", :regions => [:nz_sl]},
|
27
27
|
{:mday => 22, :observed => lambda { |date| Holidays.closest_monday(date) }, :observed_id => "closest_monday", :name => "Wellington Anniversary Day", :regions => [:nz_we]},
|
28
28
|
{:mday => 29, :observed => lambda { |date| Holidays.closest_monday(date) }, :observed_id => "closest_monday", :name => "Auckland Anniversary Day", :regions => [:nz_ak]},
|
29
29
|
{:mday => 29, :observed => lambda { |date| Holidays.closest_monday(date) }, :observed_id => "closest_monday", :name => "Northland Anniversary Day", :regions => [:nz_nl]}],
|
30
|
-
12 => [{:mday => 1, :observed => lambda { |date| Holidays.closest_monday(date) }, :observed_id => "closest_monday", :name => "Westland Anniversary Day", :regions => [:nz_wl]},
|
31
|
-
{:mday => 25, :observed => lambda { |date| Holidays.to_monday_if_weekend(date) }, :observed_id => "to_monday_if_weekend", :name => "Christmas Day", :regions => [:nz]},
|
32
|
-
{:mday => 26, :observed => lambda { |date| Holidays.to_weekday_if_boxing_weekend(date) }, :observed_id => "to_weekday_if_boxing_weekend", :name => "Boxing Day", :regions => [:nz]}],
|
33
30
|
2 => [{:mday => 1, :observed => lambda { |date| Holidays.closest_monday(date) }, :observed_id => "closest_monday", :name => "Nelson Anniversary Day", :regions => [:nz_ak]},
|
34
31
|
{:mday => 6, :name => "Waitangi Day", :regions => [:nz]}],
|
35
32
|
3 => [{:mday => 23, :observed => lambda { |date| Holidays.closest_monday(date) }, :observed_id => "closest_monday", :name => "Otago Anniversary Day", :regions => [:nz_ot]},
|
36
33
|
{:wday => 1, :week => 2, :name => "Taranaki Anniversary Day", :regions => [:nz_ak]}],
|
37
|
-
9 => [{:wday => 1, :week => 4, :name => "Dominion Day", :regions => [:nz_sc]}],
|
38
34
|
4 => [{:mday => 25, :name => "ANZAC Day", :regions => [:nz]}],
|
35
|
+
6 => [{:wday => 1, :week => 1, :name => "Queen's Birthday", :regions => [:nz]}],
|
36
|
+
9 => [{:wday => 1, :week => 4, :name => "Dominion Day", :regions => [:nz_sc]}],
|
39
37
|
10 => [{:wday => 1, :week => 1, :observed => lambda { |date| Holidays.previous_friday(date) }, :observed_id => "previous_friday", :name => "Hawke's bay Anniversary Day", :regions => [:nz_hb]},
|
40
38
|
{:wday => 1, :week => 4, :name => "Labour Day", :regions => [:nz]},
|
41
|
-
{:wday => 1, :week => 4, :observed => lambda { |date| Holidays.next_week(date) }, :observed_id => "next_week", :name => "Marlborough Anniversary Day", :regions => [:nz_mb]}]
|
42
|
-
|
39
|
+
{:wday => 1, :week => 4, :observed => lambda { |date| Holidays.next_week(date) }, :observed_id => "next_week", :name => "Marlborough Anniversary Day", :regions => [:nz_mb]}],
|
40
|
+
11 => [{:wday => 5, :week => 2, :name => "Canterbury Anniversary Day", :regions => [:nz_ca]},
|
41
|
+
{:mday => 30, :observed => lambda { |date| Holidays.closest_monday(date) }, :observed_id => "closest_monday", :name => "Chatham Island Anniversary Day", :regions => [:nz_ch]}],
|
42
|
+
12 => [{:mday => 1, :observed => lambda { |date| Holidays.closest_monday(date) }, :observed_id => "closest_monday", :name => "Westland Anniversary Day", :regions => [:nz_wl]},
|
43
|
+
{:mday => 25, :observed => lambda { |date| Holidays.to_monday_if_weekend(date) }, :observed_id => "to_monday_if_weekend", :name => "Christmas Day", :regions => [:nz]},
|
44
|
+
{:mday => 26, :observed => lambda { |date| Holidays.to_weekday_if_boxing_weekend(date) }, :observed_id => "to_weekday_if_boxing_weekend", :name => "Boxing Day", :regions => [:nz]}]
|
45
|
+
}
|
46
|
+
end
|
43
47
|
end
|
44
48
|
|
45
49
|
def self.closest_monday(date)
|
@@ -54,16 +58,16 @@ def self.closest_monday(date)
|
|
54
58
|
end
|
55
59
|
|
56
60
|
|
57
|
-
def self.next_week(date)
|
58
|
-
date + 7
|
59
|
-
end
|
60
|
-
|
61
61
|
def self.previous_friday(date)
|
62
62
|
date - 3
|
63
63
|
end
|
64
64
|
|
65
65
|
|
66
|
+
def self.next_week(date)
|
67
|
+
date + 7
|
68
|
+
end
|
69
|
+
|
66
70
|
|
67
71
|
end
|
68
72
|
|
69
|
-
Holidays.merge_defs(Holidays::NZ
|
73
|
+
Holidays.merge_defs(Holidays::NZ.defined_regions, Holidays::NZ.holidays_by_month)
|