holidays 0.55__py3-none-any.whl → 0.56__py3-none-any.whl
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.
- holidays/__init__.py +1 -1
- holidays/countries/__init__.py +2 -0
- holidays/countries/australia.py +1 -1
- holidays/countries/austria.py +10 -10
- holidays/countries/bosnia_and_herzegovina.py +8 -12
- holidays/countries/brunei.py +6 -0
- holidays/countries/cambodia.py +20 -3
- holidays/countries/canada.py +6 -6
- holidays/countries/croatia.py +1 -1
- holidays/countries/cyprus.py +1 -1
- holidays/countries/dominica.py +130 -0
- holidays/countries/dominican_republic.py +7 -12
- holidays/countries/haiti.py +134 -0
- holidays/countries/hongkong.py +1 -1
- holidays/countries/hungary.py +6 -0
- holidays/countries/ireland.py +6 -6
- holidays/countries/isle_of_man.py +1 -0
- holidays/countries/italy.py +113 -5
- holidays/countries/laos.py +24 -62
- holidays/countries/liechtenstein.py +1 -1
- holidays/countries/luxembourg.py +1 -1
- holidays/countries/malaysia.py +16 -38
- holidays/countries/malta.py +3 -3
- holidays/countries/new_zealand.py +68 -43
- holidays/countries/philippines.py +215 -26
- holidays/countries/portugal.py +7 -7
- holidays/countries/russia.py +382 -3
- holidays/countries/slovakia.py +1 -1
- holidays/countries/spain.py +8 -8
- holidays/countries/switzerland.py +3 -3
- holidays/countries/united_kingdom.py +12 -22
- holidays/countries/united_states.py +2 -2
- holidays/groups/christian.py +19 -0
- holidays/locale/ar/LC_MESSAGES/CA.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/CA.po +6 -6
- holidays/locale/de/LC_MESSAGES/AT.po +6 -6
- holidays/locale/de/LC_MESSAGES/CH.po +3 -3
- holidays/locale/de/LC_MESSAGES/LI.po +1 -1
- holidays/locale/de/LC_MESSAGES/LU.po +1 -1
- holidays/locale/en_CA/LC_MESSAGES/CA.po +6 -6
- holidays/locale/en_US/LC_MESSAGES/AT.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AT.po +14 -14
- holidays/locale/en_US/LC_MESSAGES/BG.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BG.po +3 -3
- holidays/locale/en_US/LC_MESSAGES/CA.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CA.po +11 -11
- holidays/locale/en_US/LC_MESSAGES/CH.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CH.po +9 -8
- holidays/locale/en_US/LC_MESSAGES/ES.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/ES.po +16 -16
- holidays/locale/en_US/LC_MESSAGES/HR.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/HR.po +4 -4
- holidays/locale/en_US/LC_MESSAGES/HT.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/HT.po +127 -0
- holidays/locale/en_US/LC_MESSAGES/LI.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/LI.po +4 -4
- holidays/locale/en_US/LC_MESSAGES/LU.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/LU.po +4 -4
- holidays/locale/en_US/LC_MESSAGES/MT.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MT.po +8 -8
- holidays/locale/en_US/LC_MESSAGES/PT.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/PT.po +16 -16
- holidays/locale/en_US/LC_MESSAGES/SK.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/SK.po +4 -4
- holidays/locale/es/LC_MESSAGES/ES.po +7 -7
- holidays/locale/es/LC_MESSAGES/HT.mo +0 -0
- holidays/locale/es/LC_MESSAGES/HT.po +127 -0
- holidays/locale/fr/LC_MESSAGES/CA.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/CA.po +6 -6
- holidays/locale/fr/LC_MESSAGES/CH.po +3 -3
- holidays/locale/fr/LC_MESSAGES/LU.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/LU.po +2 -2
- holidays/locale/fr_HT/LC_MESSAGES/HT.mo +0 -0
- holidays/locale/fr_HT/LC_MESSAGES/HT.po +127 -0
- holidays/locale/hr/LC_MESSAGES/HR.po +1 -1
- holidays/locale/ht/LC_MESSAGES/HT.mo +0 -0
- holidays/locale/ht/LC_MESSAGES/HT.po +127 -0
- holidays/locale/it/LC_MESSAGES/CH.po +3 -3
- holidays/locale/lb/LC_MESSAGES/LU.po +1 -1
- holidays/locale/mt/LC_MESSAGES/MT.po +3 -3
- holidays/locale/pt_PT/LC_MESSAGES/PT.po +7 -7
- holidays/locale/sk/LC_MESSAGES/SK.po +1 -1
- holidays/locale/th/LC_MESSAGES/CA.mo +0 -0
- holidays/locale/th/LC_MESSAGES/CA.po +6 -6
- holidays/locale/uk/LC_MESSAGES/AT.po +6 -6
- holidays/locale/uk/LC_MESSAGES/CH.po +3 -3
- holidays/locale/uk/LC_MESSAGES/ES.po +7 -7
- holidays/locale/uk/LC_MESSAGES/HR.po +1 -1
- holidays/locale/uk/LC_MESSAGES/LI.po +1 -1
- holidays/locale/uk/LC_MESSAGES/LU.po +1 -1
- holidays/locale/uk/LC_MESSAGES/PT.po +7 -7
- holidays/locale/uk/LC_MESSAGES/SK.po +1 -1
- holidays/registry.py +2 -0
- {holidays-0.55.dist-info → holidays-0.56.dist-info}/METADATA +17 -7
- {holidays-0.55.dist-info → holidays-0.56.dist-info}/RECORD +99 -89
- {holidays-0.55.dist-info → holidays-0.56.dist-info}/WHEEL +1 -1
- {holidays-0.55.dist-info → holidays-0.56.dist-info}/AUTHORS +0 -0
- {holidays-0.55.dist-info → holidays-0.56.dist-info}/LICENSE +0 -0
- {holidays-0.55.dist-info → holidays-0.56.dist-info}/top_level.txt +0 -0
holidays/countries/italy.py
CHANGED
|
@@ -141,8 +141,119 @@ class Italy(HolidayBase, ChristianHolidays, InternationalHolidays, StaticHoliday
|
|
|
141
141
|
"Trani",
|
|
142
142
|
"Urbino",
|
|
143
143
|
)
|
|
144
|
-
|
|
145
|
-
|
|
144
|
+
subdivisions_aliases = {
|
|
145
|
+
# Provinces.
|
|
146
|
+
"Agrigento": "AG",
|
|
147
|
+
"Alessandria": "AL",
|
|
148
|
+
"Ancona": "AN",
|
|
149
|
+
"Aosta": "AO",
|
|
150
|
+
"Ascoli Piceno": "AP",
|
|
151
|
+
"L'Aquila": "AQ",
|
|
152
|
+
"Arezzo": "AR",
|
|
153
|
+
"Asti": "AT",
|
|
154
|
+
"Avellino": "AV",
|
|
155
|
+
"Bari": "BA",
|
|
156
|
+
"Bergamo": "BG",
|
|
157
|
+
"Biella": "BI",
|
|
158
|
+
"Belluno": "BL",
|
|
159
|
+
"Benevento": "BN",
|
|
160
|
+
"Bologna": "BO",
|
|
161
|
+
"Brindisi": "BR",
|
|
162
|
+
"Brescia": "BS",
|
|
163
|
+
"Barletta-Andria-Trani": "BT",
|
|
164
|
+
"Bolzano": "BZ",
|
|
165
|
+
"Cagliari": "CA",
|
|
166
|
+
"Campobasso": "CB",
|
|
167
|
+
"Caserta": "CE",
|
|
168
|
+
"Chieti": "CH",
|
|
169
|
+
"Caltanissetta": "CL",
|
|
170
|
+
"Cuneo": "CN",
|
|
171
|
+
"Como": "CO",
|
|
172
|
+
"Cremona": "CR",
|
|
173
|
+
"Cosenza": "CS",
|
|
174
|
+
"Catania": "CT",
|
|
175
|
+
"Catanzaro": "CZ",
|
|
176
|
+
"Enna": "EN",
|
|
177
|
+
"Forli-Cesena": "FC",
|
|
178
|
+
"Forlì-Cesena": "FC",
|
|
179
|
+
"Ferrara": "FE",
|
|
180
|
+
"Foggia": "FG",
|
|
181
|
+
"Firenze": "FI",
|
|
182
|
+
"Fermo": "FM",
|
|
183
|
+
"Frosinone": "FR",
|
|
184
|
+
"Genova": "GE",
|
|
185
|
+
"Gorizia": "GO",
|
|
186
|
+
"Grosseto": "GR",
|
|
187
|
+
"Imperia": "IM",
|
|
188
|
+
"Isernia": "IS",
|
|
189
|
+
"Crotone": "KR",
|
|
190
|
+
"Lecco": "LC",
|
|
191
|
+
"Lecce": "LE",
|
|
192
|
+
"Livorno": "LI",
|
|
193
|
+
"Lodi": "LO",
|
|
194
|
+
"Latina": "LT",
|
|
195
|
+
"Lucca": "LU",
|
|
196
|
+
"Monza e Brianza": "MB",
|
|
197
|
+
"Macerata": "MC",
|
|
198
|
+
"Messina": "ME",
|
|
199
|
+
"Milano": "MI",
|
|
200
|
+
"Mantova": "MN",
|
|
201
|
+
"Modena": "MO",
|
|
202
|
+
"Massa-Carrara": "MS",
|
|
203
|
+
"Matera": "MT",
|
|
204
|
+
"Napoli": "NA",
|
|
205
|
+
"Novara": "NO",
|
|
206
|
+
"Nuoro": "NU",
|
|
207
|
+
"Oristano": "OR",
|
|
208
|
+
"Palermo": "PA",
|
|
209
|
+
"Piacenza": "PC",
|
|
210
|
+
"Padova": "PD",
|
|
211
|
+
"Pescara": "PE",
|
|
212
|
+
"Perugia": "PG",
|
|
213
|
+
"Pisa": "PI",
|
|
214
|
+
"Pordenone": "PN",
|
|
215
|
+
"Prato": "PO",
|
|
216
|
+
"Parma": "PR",
|
|
217
|
+
"Pistoia": "PT",
|
|
218
|
+
"Pesaro e Urbino": "PU",
|
|
219
|
+
"Pavia": "PV",
|
|
220
|
+
"Potenza": "PZ",
|
|
221
|
+
"Ravenna": "RA",
|
|
222
|
+
"Reggio Calabria": "RC",
|
|
223
|
+
"Reggio Emilia": "RE",
|
|
224
|
+
"Ragusa": "RG",
|
|
225
|
+
"Rieti": "RI",
|
|
226
|
+
"Roma": "RM",
|
|
227
|
+
"Rimini": "RN",
|
|
228
|
+
"Rovigo": "RO",
|
|
229
|
+
"Salerno": "SA",
|
|
230
|
+
"Siena": "SI",
|
|
231
|
+
"Sondrio": "SO",
|
|
232
|
+
"La Spezia": "SP",
|
|
233
|
+
"Siracusa": "SR",
|
|
234
|
+
"Sassari": "SS",
|
|
235
|
+
"Sud Sardegna": "SU",
|
|
236
|
+
"Savona": "SV",
|
|
237
|
+
"Taranto": "TA",
|
|
238
|
+
"Teramo": "TE",
|
|
239
|
+
"Trento": "TN",
|
|
240
|
+
"Torino": "TO",
|
|
241
|
+
"Trapani": "TP",
|
|
242
|
+
"Terni": "TR",
|
|
243
|
+
"Trieste": "TS",
|
|
244
|
+
"Treviso": "TV",
|
|
245
|
+
"Udine": "UD",
|
|
246
|
+
"Varese": "VA",
|
|
247
|
+
"Verbano-Cusio-Ossola": "VB",
|
|
248
|
+
"Vercelli": "VC",
|
|
249
|
+
"Venezia": "VE",
|
|
250
|
+
"Vicenza": "VI",
|
|
251
|
+
"Verona": "VR",
|
|
252
|
+
"Viterbo": "VT",
|
|
253
|
+
"Vibo Valentia": "VV",
|
|
254
|
+
# Cities.
|
|
255
|
+
"Forlì": "Forli",
|
|
256
|
+
}
|
|
146
257
|
|
|
147
258
|
def __init__(self, *args, **kwargs):
|
|
148
259
|
ChristianHolidays.__init__(self)
|
|
@@ -208,9 +319,6 @@ class Italy(HolidayBase, ChristianHolidays, InternationalHolidays, StaticHoliday
|
|
|
208
319
|
# Saint Stephen's Day.
|
|
209
320
|
self._add_christmas_day_two("Santo Stefano")
|
|
210
321
|
|
|
211
|
-
if self.subdiv == "Forlì":
|
|
212
|
-
self._populate_subdiv_forli_public_holidays()
|
|
213
|
-
|
|
214
322
|
def _populate_subdiv_ag_public_holidays(self):
|
|
215
323
|
self._add_holiday_feb_25("San Gerlando")
|
|
216
324
|
|
holidays/countries/laos.py
CHANGED
|
@@ -12,18 +12,11 @@
|
|
|
12
12
|
|
|
13
13
|
from gettext import gettext as tr
|
|
14
14
|
|
|
15
|
-
from holidays.calendars.gregorian import JAN,
|
|
15
|
+
from holidays.calendars.gregorian import JAN, APR, JUL
|
|
16
16
|
from holidays.calendars.thai import KHMER_CALENDAR
|
|
17
17
|
from holidays.constants import BANK, PUBLIC, SCHOOL, WORKDAY
|
|
18
18
|
from holidays.groups import InternationalHolidays, ThaiCalendarHolidays, StaticHolidays
|
|
19
|
-
from holidays.observed_holiday_base import
|
|
20
|
-
ObservedHolidayBase,
|
|
21
|
-
THU_FRI_TO_NEXT_MON,
|
|
22
|
-
FRI_TO_NEXT_TUE,
|
|
23
|
-
SAT_TO_NEXT_TUE,
|
|
24
|
-
SAT_SUN_TO_NEXT_MON,
|
|
25
|
-
SAT_SUN_TO_NEXT_WED,
|
|
26
|
-
)
|
|
19
|
+
from holidays.observed_holiday_base import ObservedHolidayBase, SAT_SUN_TO_NEXT_WORKDAY
|
|
27
20
|
|
|
28
21
|
|
|
29
22
|
class Laos(ObservedHolidayBase, InternationalHolidays, StaticHolidays, ThaiCalendarHolidays):
|
|
@@ -40,7 +33,8 @@ class Laos(ObservedHolidayBase, InternationalHolidays, StaticHolidays, ThaiCalen
|
|
|
40
33
|
https://asean.org/wp-content/uploads/2022/12/ASEAN-Public-Holidays-2023.pdf
|
|
41
34
|
https://www.timeanddate.com/holidays/laos/
|
|
42
35
|
https://www.bcel.com.la/bcel/bcel-calendar.html?y=2022
|
|
43
|
-
https://www.bcel.com.la/bcel/bcel-calendar.html?
|
|
36
|
+
https://www.bcel.com.la/bcel/bcel-calendar.html?y=2023
|
|
37
|
+
https://www.bcel.com.la/bcel/bcel-calendar.html?y=2024
|
|
44
38
|
http://www.lsx.com.la/cal/getStockCalendar.do?lang=lo (from 2011 onwards)
|
|
45
39
|
|
|
46
40
|
!!! If Public Holiday falls on weekends, (in lieu) on workday !!!
|
|
@@ -51,6 +45,8 @@ class Laos(ObservedHolidayBase, InternationalHolidays, StaticHolidays, ThaiCalen
|
|
|
51
45
|
- Saturdays and Sundays shall be restdays each week.
|
|
52
46
|
- In-Lieu holidays shall be given if it fall on the weekends.
|
|
53
47
|
|
|
48
|
+
Although in-lieus has been de facto observed since at least 2012.
|
|
49
|
+
|
|
54
50
|
Limitations:
|
|
55
51
|
|
|
56
52
|
- Laotian holidays only works from 1976 onwards, and are only 100% accurate from 2018 onwards.
|
|
@@ -75,8 +71,8 @@ class Laos(ObservedHolidayBase, InternationalHolidays, StaticHolidays, ThaiCalen
|
|
|
75
71
|
InternationalHolidays.__init__(self)
|
|
76
72
|
ThaiCalendarHolidays.__init__(self, KHMER_CALENDAR)
|
|
77
73
|
StaticHolidays.__init__(self, cls=LaosStaticHolidays)
|
|
78
|
-
kwargs.setdefault("observed_rule",
|
|
79
|
-
kwargs.setdefault("observed_since",
|
|
74
|
+
kwargs.setdefault("observed_rule", SAT_SUN_TO_NEXT_WORKDAY)
|
|
75
|
+
kwargs.setdefault("observed_since", 2012)
|
|
80
76
|
super().__init__(*args, **kwargs)
|
|
81
77
|
|
|
82
78
|
def _populate_bank_holidays(self):
|
|
@@ -126,27 +122,31 @@ class Laos(ObservedHolidayBase, InternationalHolidays, StaticHolidays, ThaiCalen
|
|
|
126
122
|
# ວັນແມ່ຍິງສາກົນ
|
|
127
123
|
# Status: In-Use.
|
|
128
124
|
# Only acts as day off for Women.
|
|
125
|
+
# No in-lieus are observed in 2014.
|
|
129
126
|
|
|
130
127
|
# International Women's Rights Day.
|
|
131
|
-
self.
|
|
128
|
+
womens_day = self._add_womens_day(tr("ວັນແມ່ຍິງສາກົນ"))
|
|
129
|
+
if self._year != 2014:
|
|
130
|
+
self._add_observed(womens_day)
|
|
132
131
|
|
|
133
132
|
# ບຸນປີໃໝ່ລາວ
|
|
134
133
|
# Status: In-Use.
|
|
135
134
|
# Celebrated for 3 days from 14-16 April annualy.
|
|
136
135
|
# Observed dates prior to 2018 are assigned manually.
|
|
137
|
-
# - CASE 1: THU-FRI-SAT -> in lieu on MON.
|
|
138
|
-
# - CASE 2: FRI-SAT-SUN -> in lieu on MON-TUE.
|
|
139
|
-
# - CASE 3: SAT-SUN-MON -> in lieu on TUE-WED.
|
|
140
|
-
# - CASE 4: SUN-MON-TUE -> in lieu on WED.
|
|
141
136
|
|
|
142
137
|
# Lao New Year's Day.
|
|
143
138
|
name = tr("ບຸນປີໃໝ່ລາວ")
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
self.
|
|
139
|
+
songkran_years_apr_13_15 = {2012, 2017}
|
|
140
|
+
songkran_years_apr_13_16 = {2016, 2020, 2024}
|
|
141
|
+
dts_observed = set()
|
|
142
|
+
if self._year in songkran_years_apr_13_15.union(songkran_years_apr_13_16):
|
|
143
|
+
dts_observed.add(self._add_holiday_apr_13(name))
|
|
144
|
+
dts_observed.add(self._add_holiday_apr_14(name))
|
|
145
|
+
dts_observed.add(self._add_holiday_apr_15(name))
|
|
146
|
+
if self._year not in songkran_years_apr_13_15:
|
|
147
|
+
dts_observed.add(self._add_holiday_apr_16(name))
|
|
148
|
+
for dt in dts_observed:
|
|
149
|
+
self._add_observed(dt)
|
|
150
150
|
|
|
151
151
|
# ວັນກຳມະກອນສາກົນ
|
|
152
152
|
# Status: In-Use.
|
|
@@ -377,9 +377,6 @@ class LaosStaticHolidays:
|
|
|
377
377
|
# Special Bank Holiday.
|
|
378
378
|
special_bank_day_off = tr("ມື້ປິດການໃຫ້ບໍລິການຂອງທະນາຄານຕົວແທນ")
|
|
379
379
|
|
|
380
|
-
# New Year's Day.
|
|
381
|
-
new_year_day = tr("ວັນປີໃໝ່ສາກົນ")
|
|
382
|
-
|
|
383
380
|
# International Women's Rights Day.
|
|
384
381
|
international_womens_rights_day = tr("ວັນແມ່ຍິງສາກົນ")
|
|
385
382
|
|
|
@@ -389,55 +386,20 @@ class LaosStaticHolidays:
|
|
|
389
386
|
# Lao New Year's Day (Special).
|
|
390
387
|
lao_new_year_special = tr("ພັກບຸນປີໃໝ່ລາວ")
|
|
391
388
|
|
|
392
|
-
# International Labor Day.
|
|
393
|
-
international_labor_day = tr("ວັນກຳມະກອນສາກົນ")
|
|
394
|
-
|
|
395
389
|
# Establishment Day of the Lao Women's Union.
|
|
396
390
|
lao_womens_union = tr("ວັນສ້າງຕັ້ງສະຫະພັນແມ່ຍິງລາວ")
|
|
397
391
|
|
|
398
|
-
# Establishment Day of the BOL.
|
|
399
|
-
establishment_day_of_bol = tr("ວັນສ້າງຕັ້ງທະນາຄານແຫ່ງ ສປປ ລາວ")
|
|
400
|
-
|
|
401
|
-
# Lao National Day.
|
|
402
|
-
lao_national_day = tr("ວັນຊາດ")
|
|
403
|
-
|
|
404
392
|
special_bank_holidays = {
|
|
405
393
|
2015: (JAN, 2, special_bank_day_off),
|
|
406
394
|
}
|
|
407
395
|
|
|
408
|
-
special_bank_holidays_observed = {
|
|
409
|
-
2017: (OCT, 9, establishment_day_of_bol),
|
|
410
|
-
}
|
|
411
|
-
|
|
412
396
|
special_public_holidays = {
|
|
413
397
|
2015: (APR, 17, lao_new_year_special),
|
|
414
|
-
2016: (
|
|
415
|
-
(APR, 13, lao_new_year_special),
|
|
416
|
-
(APR, 18, lao_new_year_special),
|
|
417
|
-
),
|
|
418
|
-
2020: (
|
|
419
|
-
(APR, 13, lao_new_year_special),
|
|
420
|
-
(APR, 17, lao_new_year_special),
|
|
421
|
-
),
|
|
422
398
|
}
|
|
423
399
|
|
|
424
400
|
special_public_holidays_observed = {
|
|
425
401
|
2011: (APR, 13, lao_new_year),
|
|
426
|
-
|
|
427
|
-
(JAN, 2, new_year_day),
|
|
428
|
-
(APR, 13, lao_new_year),
|
|
429
|
-
(APR, 17, lao_new_year),
|
|
430
|
-
(DEC, 3, lao_national_day),
|
|
431
|
-
),
|
|
432
|
-
2013: (APR, 17, lao_new_year),
|
|
433
|
-
2015: (MAR, 9, international_womens_rights_day),
|
|
434
|
-
2016: (MAY, 2, international_labor_day),
|
|
435
|
-
2017: (
|
|
436
|
-
(JAN, 2, new_year_day),
|
|
437
|
-
(APR, 13, lao_new_year),
|
|
438
|
-
(APR, 17, lao_new_year),
|
|
439
|
-
(DEC, 4, lao_national_day),
|
|
440
|
-
),
|
|
402
|
+
2020: (APR, 17, lao_new_year),
|
|
441
403
|
}
|
|
442
404
|
|
|
443
405
|
special_workday_holidays_observed = {
|
|
@@ -84,7 +84,7 @@ class Liechtenstein(HolidayBase, ChristianHolidays, InternationalHolidays):
|
|
|
84
84
|
# Christmas Day.
|
|
85
85
|
self._add_christmas_day(tr("Weihnachten"))
|
|
86
86
|
|
|
87
|
-
#
|
|
87
|
+
# Saint Stephen's Day.
|
|
88
88
|
self._add_christmas_day_two(tr("Stephanstag"))
|
|
89
89
|
|
|
90
90
|
def _populate_bank_holidays(self):
|
holidays/countries/luxembourg.py
CHANGED
holidays/countries/malaysia.py
CHANGED
|
@@ -87,41 +87,39 @@ class Malaysia(
|
|
|
87
87
|
"15",
|
|
88
88
|
"16",
|
|
89
89
|
)
|
|
90
|
-
_deprecated_subdivisions = (
|
|
91
|
-
"JHR",
|
|
92
|
-
"KDH",
|
|
93
|
-
"KTN",
|
|
94
|
-
"KUL",
|
|
95
|
-
"LBN",
|
|
96
|
-
"MLK",
|
|
97
|
-
"NSN",
|
|
98
|
-
"PHG",
|
|
99
|
-
"PJY",
|
|
100
|
-
"PLS",
|
|
101
|
-
"PNG",
|
|
102
|
-
"PRK",
|
|
103
|
-
"SBH",
|
|
104
|
-
"SGR",
|
|
105
|
-
"SWK",
|
|
106
|
-
"TRG",
|
|
107
|
-
)
|
|
108
90
|
subdivisions_aliases = {
|
|
109
91
|
"Johor": "01",
|
|
92
|
+
"JHR": "01",
|
|
110
93
|
"Kedah": "02",
|
|
94
|
+
"KDH": "02",
|
|
111
95
|
"Kelantan": "03",
|
|
96
|
+
"KTN": "03",
|
|
112
97
|
"Melaka": "04",
|
|
98
|
+
"MLK": "04",
|
|
113
99
|
"Negeri Sembilan": "05",
|
|
100
|
+
"NSN": "05",
|
|
114
101
|
"Pahang": "06",
|
|
102
|
+
"PHG": "06",
|
|
115
103
|
"Pulau Pinang": "07",
|
|
104
|
+
"PNG": "07",
|
|
116
105
|
"Perak": "08",
|
|
106
|
+
"PRK": "08",
|
|
117
107
|
"Perlis": "09",
|
|
108
|
+
"PLS": "09",
|
|
118
109
|
"Selangor": "10",
|
|
110
|
+
"SGR": "10",
|
|
119
111
|
"Terengganu": "11",
|
|
112
|
+
"TRG": "11",
|
|
120
113
|
"Sabah": "12",
|
|
114
|
+
"SBH": "12",
|
|
121
115
|
"Sarawak": "13",
|
|
116
|
+
"SWK": "13",
|
|
122
117
|
"WP Kuala Lumpur": "14",
|
|
118
|
+
"KUL": "14",
|
|
123
119
|
"WP Labuan": "15",
|
|
120
|
+
"LBN": "15",
|
|
124
121
|
"WP Putrajaya": "16",
|
|
122
|
+
"PJY": "16",
|
|
125
123
|
}
|
|
126
124
|
supported_languages = ("en_US", "ms_MY")
|
|
127
125
|
|
|
@@ -216,26 +214,6 @@ class Malaysia(
|
|
|
216
214
|
if self._year <= 1951:
|
|
217
215
|
return None
|
|
218
216
|
|
|
219
|
-
deprecated_mapping = {
|
|
220
|
-
"JHR": "01",
|
|
221
|
-
"KDH": "02",
|
|
222
|
-
"KTN": "03",
|
|
223
|
-
"KUL": "14",
|
|
224
|
-
"LBN": "15",
|
|
225
|
-
"MLK": "04",
|
|
226
|
-
"NSN": "05",
|
|
227
|
-
"PHG": "06",
|
|
228
|
-
"PJY": "16",
|
|
229
|
-
"PLS": "09",
|
|
230
|
-
"PNG": "07",
|
|
231
|
-
"PRK": "08",
|
|
232
|
-
"SBH": "12",
|
|
233
|
-
"SGR": "10",
|
|
234
|
-
"SWK": "13",
|
|
235
|
-
"TRG": "11",
|
|
236
|
-
}
|
|
237
|
-
self.subdiv = deprecated_mapping.get(self.subdiv, self.subdiv)
|
|
238
|
-
|
|
239
217
|
if self.subdiv and self.subdiv not in {"13", "15"}:
|
|
240
218
|
# Deepavali.
|
|
241
219
|
self.dts_observed.add(self._add_diwali(tr("Hari Deepavali")))
|
holidays/countries/malta.py
CHANGED
|
@@ -62,7 +62,7 @@ class Malta(HolidayBase, ChristianHolidays, InternationalHolidays):
|
|
|
62
62
|
# Started in 1987 via Act LX of 1987.
|
|
63
63
|
|
|
64
64
|
if self._year >= 1987:
|
|
65
|
-
# Feast of
|
|
65
|
+
# Feast of Saint Paul's Shipwreck.
|
|
66
66
|
self._add_holiday_feb_10(tr("Il-Festa tan-Nawfraġju ta' San Pawl"))
|
|
67
67
|
|
|
68
68
|
# Il-Festa ta' San Ġużepp
|
|
@@ -70,7 +70,7 @@ class Malta(HolidayBase, ChristianHolidays, InternationalHolidays):
|
|
|
70
70
|
# Started in 1987 via Act LX of 1987.
|
|
71
71
|
|
|
72
72
|
if self._year >= 1987:
|
|
73
|
-
# Feast of
|
|
73
|
+
# Feast of Saint Joseph.
|
|
74
74
|
self._add_saint_josephs_day(tr("Il-Festa ta' San Ġużepp"))
|
|
75
75
|
|
|
76
76
|
# Jum il-Ħelsien
|
|
@@ -107,7 +107,7 @@ class Malta(HolidayBase, ChristianHolidays, InternationalHolidays):
|
|
|
107
107
|
# Started in 1987 via Act LX of 1987.
|
|
108
108
|
|
|
109
109
|
if self._year >= 1987:
|
|
110
|
-
# Feast of
|
|
110
|
+
# Feast of Saint Peter and Saint Paul.
|
|
111
111
|
self._add_saints_peter_and_paul_day(tr("Il-Festa ta' San Pietru u San Pawl"))
|
|
112
112
|
|
|
113
113
|
# Il-Festa ta' Santa Marija
|
|
@@ -27,6 +27,7 @@ class NewZealand(ObservedHolidayBase, ChristianHolidays, InternationalHolidays,
|
|
|
27
27
|
country = "NZ"
|
|
28
28
|
observed_label = "%s (observed)"
|
|
29
29
|
subdivisions = (
|
|
30
|
+
# ISO 3166-2: Regions and Special Island Authorities.
|
|
30
31
|
# https://en.wikipedia.org/wiki/ISO_3166-2:NZ
|
|
31
32
|
"AUK", # Auckland / Tāmaki-makaurau
|
|
32
33
|
"BOP", # Bay of Plenty / Toi Moana
|
|
@@ -35,7 +36,7 @@ class NewZealand(ObservedHolidayBase, ChristianHolidays, InternationalHolidays,
|
|
|
35
36
|
"GIS", # Gisborne / Te Tairāwhiti
|
|
36
37
|
"HKB", # Hawke's Bay / Te Matau a Māui
|
|
37
38
|
"MBH", # Marlborough
|
|
38
|
-
"MWT", # Manawatū Whanganui
|
|
39
|
+
"MWT", # Manawatū-Whanganui / Manawatū Whanganui
|
|
39
40
|
"NSN", # Nelson / Whakatū
|
|
40
41
|
"NTL", # Northland / Te Tai tokerau
|
|
41
42
|
"OTA", # Otago / Ō Tākou
|
|
@@ -45,27 +46,71 @@ class NewZealand(ObservedHolidayBase, ChristianHolidays, InternationalHolidays,
|
|
|
45
46
|
"WGN", # Greater Wellington / Te Pane Matua Taiao
|
|
46
47
|
"WKO", # Waikato
|
|
47
48
|
"WTC", # West Coast / Te Tai o Poutini
|
|
49
|
+
# Subregions:
|
|
50
|
+
# https://www.govt.nz/browse/work/public-holidays-and-work/public-holidays-and-anniversary-dates/
|
|
51
|
+
"South Canterbury",
|
|
48
52
|
)
|
|
49
|
-
|
|
53
|
+
subdivisions_aliases = {
|
|
54
|
+
# Fullnames in English and Maori, as well as HASC.
|
|
55
|
+
"Auckland": "AUK",
|
|
56
|
+
"Tāmaki-Makaurau": "AUK",
|
|
57
|
+
"AU": "AUK",
|
|
58
|
+
"Bay of Plenty": "BOP",
|
|
59
|
+
"Toi Moana": "BOP",
|
|
60
|
+
"BP": "BOP",
|
|
61
|
+
"Canterbury": "CAN",
|
|
62
|
+
"Waitaha": "CAN",
|
|
63
|
+
"CA": "CAN",
|
|
64
|
+
"Chatham Islands Territory": "CIT",
|
|
65
|
+
"Chatham Islands": "CIT", # 1901-1994, as County
|
|
66
|
+
"Wharekauri": "CIT",
|
|
67
|
+
"CI": "CIT",
|
|
68
|
+
"Gisborne": "GIS",
|
|
69
|
+
"Te Tairāwhiti": "GIS",
|
|
70
|
+
"GI": "GIS",
|
|
71
|
+
"Hawke's Bay": "HKB",
|
|
72
|
+
"Te Matau-a-Māui": "HKB",
|
|
73
|
+
"HB": "HKB",
|
|
74
|
+
"Marlborough": "MBH",
|
|
75
|
+
"MA": "MBH",
|
|
76
|
+
"Manawatū Whanganui": "MWT",
|
|
77
|
+
"Manawatū-Whanganui": "MWT",
|
|
78
|
+
"MW": "MWT",
|
|
79
|
+
"Nelson": "NSN",
|
|
80
|
+
"Whakatū": "NSN",
|
|
81
|
+
"NE": "NSN",
|
|
82
|
+
"Northland": "NTL",
|
|
83
|
+
"Te Taitokerau": "NTL",
|
|
84
|
+
"NO": "NTL",
|
|
85
|
+
"Otago": "OTA",
|
|
86
|
+
"Ō Tākou": "OTA",
|
|
87
|
+
"OT": "OTA",
|
|
88
|
+
"Southland": "STL",
|
|
89
|
+
"Te Taiao Tonga": "STL",
|
|
90
|
+
"SO": "STL",
|
|
91
|
+
"Tasman": "TAS",
|
|
92
|
+
"Te tai o Aorere": "TAS",
|
|
93
|
+
"TS": "TAS",
|
|
94
|
+
"Taranaki": "TKI",
|
|
95
|
+
"TK": "TKI",
|
|
96
|
+
"Greater Wellington": "WGN",
|
|
97
|
+
"Te Pane Matua Taiao": "WGN",
|
|
98
|
+
"Wellington": "WGN", # Prev. ISO code from 2010-2015.
|
|
99
|
+
"Te Whanganui-a-Tara": "WGN", # Prev. ISO code from 2010-2015.
|
|
100
|
+
"WG": "WGN",
|
|
101
|
+
"Waikato": "WKO",
|
|
102
|
+
"WK": "WKO",
|
|
103
|
+
"West Coast": "WTC",
|
|
104
|
+
"Te Tai o Poutini": "WTC",
|
|
105
|
+
"WC": "WTC",
|
|
106
|
+
}
|
|
50
107
|
_deprecated_subdivisions = (
|
|
51
|
-
|
|
52
|
-
"
|
|
53
|
-
"
|
|
54
|
-
|
|
55
|
-
"
|
|
56
|
-
"
|
|
57
|
-
"New Plymouth",
|
|
58
|
-
"Northland",
|
|
59
|
-
"Otago",
|
|
60
|
-
"South Canterbury",
|
|
61
|
-
"STC",
|
|
62
|
-
"Southland",
|
|
63
|
-
"Taranaki",
|
|
64
|
-
"Waitangi",
|
|
65
|
-
"Wellington",
|
|
66
|
-
"West Coast",
|
|
67
|
-
"Westland", # Correct name is West Coast
|
|
68
|
-
"WTL", # Correct code is WTC
|
|
108
|
+
# Pre-1893 Naming in Previous Implementations.
|
|
109
|
+
"New Plymouth", # 1853-1859, Now Taranaki.
|
|
110
|
+
"Westland", # 1873-1876, Now West Coast.
|
|
111
|
+
# Unofficial Code.
|
|
112
|
+
"STC", # For 'South Canterbury' Subregional Holidays.
|
|
113
|
+
"WTL", # Westland, Correct code is WTC (for West Coast).
|
|
69
114
|
)
|
|
70
115
|
|
|
71
116
|
def __init__(self, *args, **kwargs):
|
|
@@ -186,31 +231,11 @@ class NewZealand(ObservedHolidayBase, ChristianHolidays, InternationalHolidays,
|
|
|
186
231
|
# Boxing Day
|
|
187
232
|
self._add_observed(self._add_christmas_day_two("Boxing Day"), rule=SAT_SUN_TO_NEXT_MON_TUE)
|
|
188
233
|
|
|
189
|
-
if self.subdiv == "
|
|
190
|
-
self._populate_subdiv_auk_public_holidays()
|
|
191
|
-
elif self.subdiv == "Canterbury":
|
|
192
|
-
self._populate_subdiv_can_public_holidays()
|
|
193
|
-
elif self.subdiv == "Chatham Islands":
|
|
194
|
-
self._populate_subdiv_cit_public_holidays()
|
|
195
|
-
elif self.subdiv == "Hawke's Bay":
|
|
196
|
-
self._populate_subdiv_hkb_public_holidays()
|
|
197
|
-
elif self.subdiv == "Marlborough":
|
|
198
|
-
self._populate_subdiv_mbh_public_holidays()
|
|
199
|
-
elif self.subdiv == "Nelson":
|
|
200
|
-
self._populate_subdiv_nsn_public_holidays()
|
|
201
|
-
elif self.subdiv == "Northland":
|
|
202
|
-
self._populate_subdiv_ntl_public_holidays()
|
|
203
|
-
elif self.subdiv == "Otago":
|
|
204
|
-
self._populate_subdiv_ota_public_holidays()
|
|
205
|
-
elif self.subdiv in {"New Plymouth", "Taranaki"}:
|
|
234
|
+
if self.subdiv == "New Plymouth":
|
|
206
235
|
self._populate_subdiv_tki_public_holidays()
|
|
207
236
|
elif self.subdiv == "South Canterbury":
|
|
208
237
|
self._populate_subdiv_stc_public_holidays()
|
|
209
|
-
elif self.subdiv
|
|
210
|
-
self._populate_subdiv_stl_public_holidays()
|
|
211
|
-
elif self.subdiv == "Wellington":
|
|
212
|
-
self._populate_subdiv_wgn_public_holidays()
|
|
213
|
-
elif self.subdiv in {"West Coast", "WTL", "Westland"}:
|
|
238
|
+
elif self.subdiv in {"WTL", "Westland"}:
|
|
214
239
|
self._populate_subdiv_wtc_public_holidays()
|
|
215
240
|
|
|
216
241
|
def _populate_subdiv_auk_public_holidays(self):
|
|
@@ -253,7 +278,7 @@ class NewZealand(ObservedHolidayBase, ChristianHolidays, InternationalHolidays,
|
|
|
253
278
|
def _populate_subdiv_stl_public_holidays(self):
|
|
254
279
|
name = "Southland Anniversary Day"
|
|
255
280
|
if self._year >= 2012:
|
|
256
|
-
self.
|
|
281
|
+
self._add_easter_tuesday(name)
|
|
257
282
|
else:
|
|
258
283
|
self._add_holiday(name, self._get_nearest_monday(JAN, 17))
|
|
259
284
|
|