holidays 0.82__py3-none-any.whl → 0.84__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/calendars/balinese_saka.py +2 -3
- holidays/calendars/buddhist.py +3 -4
- holidays/calendars/burmese.py +9 -10
- holidays/calendars/chinese.py +8 -9
- holidays/calendars/hebrew.py +10 -11
- holidays/calendars/hindu.py +27 -28
- holidays/calendars/islamic.py +26 -6
- holidays/calendars/mandaean.py +2 -3
- holidays/calendars/mongolian.py +4 -5
- holidays/calendars/persian.py +2 -3
- holidays/calendars/sinhala.py +25 -14
- holidays/calendars/thai.py +13 -14
- holidays/calendars/tibetan.py +12 -13
- holidays/countries/__init__.py +1 -0
- holidays/countries/angola.py +1 -2
- holidays/countries/austria.py +1 -1
- holidays/countries/azerbaijan.py +1 -1
- holidays/countries/canada.py +27 -13
- holidays/countries/denmark.py +18 -6
- holidays/countries/fiji.py +2 -3
- holidays/countries/finland.py +3 -6
- holidays/countries/guernsey.py +1 -2
- holidays/countries/guyana.py +24 -32
- holidays/countries/india.py +21 -78
- holidays/countries/iran.py +133 -269
- holidays/countries/ireland.py +1 -1
- holidays/countries/israel.py +1 -1
- holidays/countries/italy.py +2 -2
- holidays/countries/jersey.py +1 -2
- holidays/countries/macau.py +5 -8
- holidays/countries/malta.py +1 -1
- holidays/countries/mauritius.py +10 -9
- holidays/countries/montserrat.py +1 -1
- holidays/countries/myanmar.py +9 -10
- holidays/countries/nepal.py +11 -30
- holidays/countries/netherlands.py +28 -24
- holidays/countries/new_zealand.py +75 -31
- holidays/countries/nigeria.py +53 -75
- holidays/countries/norway.py +1 -1
- holidays/countries/portugal.py +6 -3
- holidays/countries/rwanda.py +2 -2
- holidays/countries/sint_maarten.py +1 -1
- holidays/countries/slovakia.py +23 -4
- holidays/countries/spain.py +418 -214
- holidays/countries/sri_lanka.py +58 -91
- holidays/countries/suriname.py +1 -2
- holidays/countries/sweden.py +1 -1
- holidays/countries/switzerland.py +86 -3
- holidays/countries/taiwan.py +3 -3
- holidays/countries/tanzania.py +19 -29
- holidays/countries/thailand.py +8 -7
- holidays/countries/trinidad_and_tobago.py +1 -1
- holidays/countries/ukraine.py +1 -1
- holidays/countries/united_kingdom.py +2 -3
- holidays/countries/united_states.py +3 -4
- holidays/countries/western_sahara.py +92 -0
- holidays/groups/balinese_saka.py +2 -3
- holidays/groups/buddhist.py +6 -7
- holidays/groups/burmese.py +11 -12
- holidays/groups/chinese.py +23 -21
- holidays/groups/christian.py +30 -0
- holidays/groups/eastern.py +5 -4
- holidays/groups/hebrew.py +7 -10
- holidays/groups/hindu.py +45 -40
- holidays/groups/international.py +1 -1
- holidays/groups/islamic.py +10 -3
- holidays/groups/mandaean.py +13 -14
- holidays/groups/mongolian.py +12 -10
- holidays/groups/persian.py +14 -15
- holidays/groups/sinhala.py +19 -17
- holidays/groups/thai.py +12 -13
- holidays/groups/tibetan.py +21 -19
- holidays/holiday_base.py +54 -54
- holidays/ical.py +1 -2
- holidays/locale/ar/LC_MESSAGES/EH.mo +0 -0
- holidays/locale/ca/LC_MESSAGES/ES.mo +0 -0
- holidays/locale/de/LC_MESSAGES/CH.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CH.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/EH.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/ES.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/LK.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/NL.mo +0 -0
- holidays/locale/es/LC_MESSAGES/EH.mo +0 -0
- holidays/locale/es/LC_MESSAGES/ES.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/CH.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/EH.mo +0 -0
- holidays/locale/fy/LC_MESSAGES/NL.mo +0 -0
- holidays/locale/it/LC_MESSAGES/CH.mo +0 -0
- holidays/locale/nl/LC_MESSAGES/NL.mo +0 -0
- holidays/locale/si_LK/LC_MESSAGES/LK.mo +0 -0
- holidays/locale/ta_LK/LC_MESSAGES/LK.mo +0 -0
- holidays/locale/th/LC_MESSAGES/CH.mo +0 -0
- holidays/locale/th/LC_MESSAGES/CN.mo +0 -0
- holidays/locale/th/LC_MESSAGES/DK.mo +0 -0
- holidays/locale/th/LC_MESSAGES/ES.mo +0 -0
- holidays/locale/th/LC_MESSAGES/HK.mo +0 -0
- holidays/locale/th/LC_MESSAGES/KR.mo +0 -0
- holidays/locale/th/LC_MESSAGES/MO.mo +0 -0
- holidays/locale/th/LC_MESSAGES/NL.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/CH.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/ES.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/NL.mo +0 -0
- holidays/mixins/child_entity.py +1 -3
- holidays/observed_holiday_base.py +25 -14
- holidays/registry.py +5 -3
- holidays/utils.py +13 -14
- holidays/version.py +1 -1
- {holidays-0.82.dist-info → holidays-0.84.dist-info}/METADATA +20 -19
- {holidays-0.82.dist-info → holidays-0.84.dist-info}/RECORD +113 -104
- {holidays-0.82.dist-info → holidays-0.84.dist-info}/WHEEL +0 -0
- {holidays-0.82.dist-info → holidays-0.84.dist-info}/licenses/CONTRIBUTORS +0 -0
- {holidays-0.82.dist-info → holidays-0.84.dist-info}/licenses/LICENSE +0 -0
- {holidays-0.82.dist-info → holidays-0.84.dist-info}/top_level.txt +0 -0
holidays/groups/hindu.py
CHANGED
|
@@ -12,7 +12,6 @@
|
|
|
12
12
|
|
|
13
13
|
from collections.abc import Iterable
|
|
14
14
|
from datetime import date
|
|
15
|
-
from typing import Optional
|
|
16
15
|
|
|
17
16
|
from holidays.calendars.hindu import _HinduLunisolar
|
|
18
17
|
from holidays.groups.eastern import EasternCalendarHolidays
|
|
@@ -23,13 +22,13 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
23
22
|
Hindu lunisolar calendar holidays.
|
|
24
23
|
"""
|
|
25
24
|
|
|
26
|
-
def __init__(self, cls=None, show_estimated=False) -> None:
|
|
25
|
+
def __init__(self, cls=None, *, show_estimated=False) -> None:
|
|
27
26
|
self._hindu_calendar = cls() if cls else _HinduLunisolar()
|
|
28
27
|
self._hindu_calendar_show_estimated = show_estimated
|
|
29
28
|
|
|
30
29
|
def _add_hindu_calendar_holiday(
|
|
31
|
-
self, name: str, dt_estimated: tuple[
|
|
32
|
-
) ->
|
|
30
|
+
self, name: str, dt_estimated: tuple[date | None, bool], days_delta: int = 0
|
|
31
|
+
) -> date | None:
|
|
33
32
|
"""
|
|
34
33
|
Add Hindu calendar holiday.
|
|
35
34
|
|
|
@@ -38,7 +37,10 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
38
37
|
"""
|
|
39
38
|
|
|
40
39
|
return self._add_eastern_calendar_holiday(
|
|
41
|
-
name,
|
|
40
|
+
name,
|
|
41
|
+
dt_estimated,
|
|
42
|
+
show_estimated=self._hindu_calendar_show_estimated,
|
|
43
|
+
days_delta=days_delta,
|
|
42
44
|
)
|
|
43
45
|
|
|
44
46
|
def _add_hindu_calendar_holiday_set(
|
|
@@ -51,10 +53,13 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
51
53
|
is an estimation.
|
|
52
54
|
"""
|
|
53
55
|
return self._add_eastern_calendar_holiday_set(
|
|
54
|
-
name,
|
|
56
|
+
name,
|
|
57
|
+
dts_estimated,
|
|
58
|
+
show_estimated=self._hindu_calendar_show_estimated,
|
|
59
|
+
days_delta=days_delta,
|
|
55
60
|
)
|
|
56
61
|
|
|
57
|
-
def _add_bhai_dooj(self, name) ->
|
|
62
|
+
def _add_bhai_dooj(self, name) -> date | None:
|
|
58
63
|
"""
|
|
59
64
|
Add Bhai Dooj.
|
|
60
65
|
|
|
@@ -66,7 +71,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
66
71
|
name, self._hindu_calendar.govardhan_puja_date(self._year), days_delta=+1
|
|
67
72
|
)
|
|
68
73
|
|
|
69
|
-
def _add_buddha_purnima(self, name) ->
|
|
74
|
+
def _add_buddha_purnima(self, name) -> date | None:
|
|
70
75
|
"""
|
|
71
76
|
Add Buddha Purnima.
|
|
72
77
|
|
|
@@ -79,7 +84,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
79
84
|
name, self._hindu_calendar.buddha_purnima_date(self._year)
|
|
80
85
|
)
|
|
81
86
|
|
|
82
|
-
def _add_chhath_puja(self, name) ->
|
|
87
|
+
def _add_chhath_puja(self, name) -> date | None:
|
|
83
88
|
"""
|
|
84
89
|
Add Chhath Puja.
|
|
85
90
|
|
|
@@ -91,7 +96,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
91
96
|
name, self._hindu_calendar.chhath_puja_date(self._year)
|
|
92
97
|
)
|
|
93
98
|
|
|
94
|
-
def _add_diwali(self, name) ->
|
|
99
|
+
def _add_diwali(self, name) -> date | None:
|
|
95
100
|
"""
|
|
96
101
|
Add Diwali Festival.
|
|
97
102
|
|
|
@@ -103,12 +108,12 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
103
108
|
"""
|
|
104
109
|
return self._add_hindu_calendar_holiday(name, self._hindu_calendar.diwali_date(self._year))
|
|
105
110
|
|
|
106
|
-
def _add_diwali_india(self, name) ->
|
|
111
|
+
def _add_diwali_india(self, name) -> date | None:
|
|
107
112
|
return self._add_hindu_calendar_holiday(
|
|
108
113
|
name, self._hindu_calendar.diwali_india_date(self._year)
|
|
109
114
|
)
|
|
110
115
|
|
|
111
|
-
def _add_dussehra(self, name) ->
|
|
116
|
+
def _add_dussehra(self, name) -> date | None:
|
|
112
117
|
"""
|
|
113
118
|
Add Dussehra Festival.
|
|
114
119
|
|
|
@@ -121,7 +126,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
121
126
|
name, self._hindu_calendar.dussehra_date(self._year)
|
|
122
127
|
)
|
|
123
128
|
|
|
124
|
-
def _add_ganesh_chaturthi(self, name) ->
|
|
129
|
+
def _add_ganesh_chaturthi(self, name) -> date | None:
|
|
125
130
|
"""
|
|
126
131
|
Add Ganesh Chaturthi.
|
|
127
132
|
|
|
@@ -133,7 +138,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
133
138
|
name, self._hindu_calendar.ganesh_chaturthi_date(self._year)
|
|
134
139
|
)
|
|
135
140
|
|
|
136
|
-
def _add_gau_krida(self, name) ->
|
|
141
|
+
def _add_gau_krida(self, name) -> date | None:
|
|
137
142
|
"""
|
|
138
143
|
Add Gau Krida.
|
|
139
144
|
|
|
@@ -143,7 +148,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
143
148
|
name, self._hindu_calendar.govardhan_puja_date(self._year), days_delta=-1
|
|
144
149
|
)
|
|
145
150
|
|
|
146
|
-
def _add_govardhan_puja(self, name) ->
|
|
151
|
+
def _add_govardhan_puja(self, name) -> date | None:
|
|
147
152
|
"""
|
|
148
153
|
Add Govardhan Puja.
|
|
149
154
|
|
|
@@ -155,7 +160,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
155
160
|
name, self._hindu_calendar.govardhan_puja_date(self._year)
|
|
156
161
|
)
|
|
157
162
|
|
|
158
|
-
def _add_gudi_padwa(self, name) ->
|
|
163
|
+
def _add_gudi_padwa(self, name) -> date | None:
|
|
159
164
|
"""
|
|
160
165
|
Add Gudi Padwa / Ugadi.
|
|
161
166
|
|
|
@@ -186,7 +191,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
186
191
|
name, self._hindu_calendar.guru_gobind_singh_jayanti_date(self._year)
|
|
187
192
|
)
|
|
188
193
|
|
|
189
|
-
def _add_guru_nanak_jayanti(self, name) ->
|
|
194
|
+
def _add_guru_nanak_jayanti(self, name) -> date | None:
|
|
190
195
|
"""
|
|
191
196
|
Add Guru Nanak Jayanti.
|
|
192
197
|
|
|
@@ -199,7 +204,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
199
204
|
name, self._hindu_calendar.guru_nanak_jayanti_date(self._year)
|
|
200
205
|
)
|
|
201
206
|
|
|
202
|
-
def _add_gyalpo_losar(self, name) ->
|
|
207
|
+
def _add_gyalpo_losar(self, name) -> date | None:
|
|
203
208
|
"""
|
|
204
209
|
Add Gyalpo Losar.
|
|
205
210
|
|
|
@@ -212,7 +217,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
212
217
|
name, self._hindu_calendar.gyalpo_losar_date(self._year)
|
|
213
218
|
)
|
|
214
219
|
|
|
215
|
-
def _add_nepal_holi(self, name) ->
|
|
220
|
+
def _add_nepal_holi(self, name) -> date | None:
|
|
216
221
|
"""
|
|
217
222
|
Add Holi Festival for Nepal (Mountain & Hilly).
|
|
218
223
|
|
|
@@ -225,7 +230,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
225
230
|
name, self._hindu_calendar.holi_date(self._year), days_delta=-1
|
|
226
231
|
)
|
|
227
232
|
|
|
228
|
-
def _add_holi(self, name) ->
|
|
233
|
+
def _add_holi(self, name) -> date | None:
|
|
229
234
|
"""
|
|
230
235
|
Add Holi Festival.
|
|
231
236
|
|
|
@@ -236,7 +241,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
236
241
|
"""
|
|
237
242
|
return self._add_hindu_calendar_holiday(name, self._hindu_calendar.holi_date(self._year))
|
|
238
243
|
|
|
239
|
-
def _add_janmashtami(self, name) ->
|
|
244
|
+
def _add_janmashtami(self, name) -> date | None:
|
|
240
245
|
"""
|
|
241
246
|
Add Janmashtami.
|
|
242
247
|
|
|
@@ -248,7 +253,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
248
253
|
name, self._hindu_calendar.janmashtami_date(self._year)
|
|
249
254
|
)
|
|
250
255
|
|
|
251
|
-
def _add_maha_saptami(self, name) ->
|
|
256
|
+
def _add_maha_saptami(self, name) -> date | None:
|
|
252
257
|
"""
|
|
253
258
|
Add Maha Saptami.
|
|
254
259
|
|
|
@@ -260,7 +265,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
260
265
|
name, self._hindu_calendar.maha_ashtami_date(self._year), days_delta=-1
|
|
261
266
|
)
|
|
262
267
|
|
|
263
|
-
def _add_maha_ashtami(self, name) ->
|
|
268
|
+
def _add_maha_ashtami(self, name) -> date | None:
|
|
264
269
|
"""
|
|
265
270
|
Add Maha Ashtami.
|
|
266
271
|
|
|
@@ -272,7 +277,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
272
277
|
name, self._hindu_calendar.maha_ashtami_date(self._year)
|
|
273
278
|
)
|
|
274
279
|
|
|
275
|
-
def _add_maha_navami(self, name) ->
|
|
280
|
+
def _add_maha_navami(self, name) -> date | None:
|
|
276
281
|
"""
|
|
277
282
|
Add Maha Navami.
|
|
278
283
|
|
|
@@ -284,7 +289,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
284
289
|
name, self._hindu_calendar.maha_navami_date(self._year)
|
|
285
290
|
)
|
|
286
291
|
|
|
287
|
-
def _add_maha_shivaratri(self, name) ->
|
|
292
|
+
def _add_maha_shivaratri(self, name) -> date | None:
|
|
288
293
|
"""
|
|
289
294
|
Add Maha Shivaratri.
|
|
290
295
|
|
|
@@ -296,7 +301,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
296
301
|
name, self._hindu_calendar.maha_shivaratri_date(self._year)
|
|
297
302
|
)
|
|
298
303
|
|
|
299
|
-
def _add_mahavir_jayanti(self, name) ->
|
|
304
|
+
def _add_mahavir_jayanti(self, name) -> date | None:
|
|
300
305
|
"""
|
|
301
306
|
Add Mahavir Jayanti.
|
|
302
307
|
|
|
@@ -308,7 +313,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
308
313
|
name, self._hindu_calendar.mahavir_jayanti_date(self._year)
|
|
309
314
|
)
|
|
310
315
|
|
|
311
|
-
def _add_makar_sankranti(self, name) ->
|
|
316
|
+
def _add_makar_sankranti(self, name) -> date | None:
|
|
312
317
|
"""
|
|
313
318
|
Add Makar Sankranti.
|
|
314
319
|
|
|
@@ -320,7 +325,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
320
325
|
name, self._hindu_calendar.makar_sankranti_date(self._year)
|
|
321
326
|
)
|
|
322
327
|
|
|
323
|
-
def _add_onam(self, name) ->
|
|
328
|
+
def _add_onam(self, name) -> date | None:
|
|
324
329
|
"""
|
|
325
330
|
Add Onam.
|
|
326
331
|
|
|
@@ -330,7 +335,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
330
335
|
"""
|
|
331
336
|
return self._add_hindu_calendar_holiday(name, self._hindu_calendar.onam_date(self._year))
|
|
332
337
|
|
|
333
|
-
def _add_papankusha_ekadashi(self, name) ->
|
|
338
|
+
def _add_papankusha_ekadashi(self, name) -> date | None:
|
|
334
339
|
"""
|
|
335
340
|
Add Papankusha Ekadashi.
|
|
336
341
|
|
|
@@ -342,7 +347,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
342
347
|
name, self._hindu_calendar.dussehra_date(self._year), days_delta=+1
|
|
343
348
|
)
|
|
344
349
|
|
|
345
|
-
def _add_papankusha_duwadashi(self, name) ->
|
|
350
|
+
def _add_papankusha_duwadashi(self, name) -> date | None:
|
|
346
351
|
"""
|
|
347
352
|
Add Papankusha Duwadashi.
|
|
348
353
|
|
|
@@ -353,7 +358,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
353
358
|
name, self._hindu_calendar.dussehra_date(self._year), days_delta=+2
|
|
354
359
|
)
|
|
355
360
|
|
|
356
|
-
def _add_pongal(self, name) ->
|
|
361
|
+
def _add_pongal(self, name) -> date | None:
|
|
357
362
|
"""
|
|
358
363
|
Add Pongal.
|
|
359
364
|
|
|
@@ -365,7 +370,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
365
370
|
"""
|
|
366
371
|
return self._add_hindu_calendar_holiday(name, self._hindu_calendar.pongal_date(self._year))
|
|
367
372
|
|
|
368
|
-
def _add_raksha_bandhan(self, name) ->
|
|
373
|
+
def _add_raksha_bandhan(self, name) -> date | None:
|
|
369
374
|
"""
|
|
370
375
|
Add Raksha Bandhan.
|
|
371
376
|
|
|
@@ -378,7 +383,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
378
383
|
name, self._hindu_calendar.raksha_bandhan_date(self._year)
|
|
379
384
|
)
|
|
380
385
|
|
|
381
|
-
def _add_ram_navami(self, name) ->
|
|
386
|
+
def _add_ram_navami(self, name) -> date | None:
|
|
382
387
|
"""
|
|
383
388
|
Add Ram Navami.
|
|
384
389
|
|
|
@@ -390,7 +395,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
390
395
|
name, self._hindu_calendar.ram_navami_date(self._year)
|
|
391
396
|
)
|
|
392
397
|
|
|
393
|
-
def _add_sharad_navratri(self, name) ->
|
|
398
|
+
def _add_sharad_navratri(self, name) -> date | None:
|
|
394
399
|
"""
|
|
395
400
|
Add Navratri / Sharad Navratri.
|
|
396
401
|
|
|
@@ -403,7 +408,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
403
408
|
name, self._hindu_calendar.sharad_navratri_date(self._year)
|
|
404
409
|
)
|
|
405
410
|
|
|
406
|
-
def _add_sonam_losar(self, name) ->
|
|
411
|
+
def _add_sonam_losar(self, name) -> date | None:
|
|
407
412
|
"""
|
|
408
413
|
Add Sonam Losar.
|
|
409
414
|
|
|
@@ -416,7 +421,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
416
421
|
name, self._hindu_calendar.sonam_losar_date(self._year)
|
|
417
422
|
)
|
|
418
423
|
|
|
419
|
-
def _add_tamu_losar(self, name) ->
|
|
424
|
+
def _add_tamu_losar(self, name) -> date | None:
|
|
420
425
|
"""
|
|
421
426
|
Add Tamu Losar.
|
|
422
427
|
|
|
@@ -428,7 +433,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
428
433
|
name, self._hindu_calendar.tamu_losar_date(self._year)
|
|
429
434
|
)
|
|
430
435
|
|
|
431
|
-
def _add_thaipusam(self, name) ->
|
|
436
|
+
def _add_thaipusam(self, name) -> date | None:
|
|
432
437
|
"""
|
|
433
438
|
Add Thaipusam.
|
|
434
439
|
|
|
@@ -440,7 +445,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
440
445
|
name, self._hindu_calendar.thaipusam_date(self._year)
|
|
441
446
|
)
|
|
442
447
|
|
|
443
|
-
def _add_thiruvalluvar_day(self, name) ->
|
|
448
|
+
def _add_thiruvalluvar_day(self, name) -> date | None:
|
|
444
449
|
"""
|
|
445
450
|
Add Thiruvalluvar Day and Mattu Pongal.
|
|
446
451
|
|
|
@@ -456,7 +461,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
456
461
|
name, self._hindu_calendar.pongal_date(self._year), days_delta=+1
|
|
457
462
|
)
|
|
458
463
|
|
|
459
|
-
def _add_uzhavar_thirunal(self, name) ->
|
|
464
|
+
def _add_uzhavar_thirunal(self, name) -> date | None:
|
|
460
465
|
"""
|
|
461
466
|
Add Uzhavar Thirunal.
|
|
462
467
|
|
|
@@ -470,7 +475,7 @@ class HinduCalendarHolidays(EasternCalendarHolidays):
|
|
|
470
475
|
name, self._hindu_calendar.pongal_date(self._year), days_delta=+2
|
|
471
476
|
)
|
|
472
477
|
|
|
473
|
-
def _add_vaisakhi(self, name) ->
|
|
478
|
+
def _add_vaisakhi(self, name) -> date | None:
|
|
474
479
|
"""
|
|
475
480
|
Add Vaisakhi.
|
|
476
481
|
|
holidays/groups/international.py
CHANGED
|
@@ -212,7 +212,7 @@ class InternationalHolidays:
|
|
|
212
212
|
"""
|
|
213
213
|
return self._add_holiday_mar_8(name)
|
|
214
214
|
|
|
215
|
-
def _add_world_war_two_victory_day(self, name, is_western=True):
|
|
215
|
+
def _add_world_war_two_victory_day(self, name, *, is_western=True):
|
|
216
216
|
"""
|
|
217
217
|
Add Day of Victory in World War II in Europe (May 8).
|
|
218
218
|
https://en.wikipedia.org/wiki/Victory_in_Europe_Day
|
holidays/groups/islamic.py
CHANGED
|
@@ -25,8 +25,12 @@ class IslamicHolidays(EasternCalendarHolidays):
|
|
|
25
25
|
calendar consisting of 12 lunar months in a year of 354 or 355 days.
|
|
26
26
|
"""
|
|
27
27
|
|
|
28
|
-
def __init__(self, cls=None, show_estimated=True) -> None:
|
|
29
|
-
self._islamic_calendar =
|
|
28
|
+
def __init__(self, cls=None, *, show_estimated=True, calendar_delta_days=0) -> None:
|
|
29
|
+
self._islamic_calendar = (
|
|
30
|
+
cls(calendar_delta_days=calendar_delta_days)
|
|
31
|
+
if cls
|
|
32
|
+
else _IslamicLunar(calendar_delta_days=calendar_delta_days)
|
|
33
|
+
)
|
|
30
34
|
self._islamic_calendar_show_estimated = show_estimated
|
|
31
35
|
|
|
32
36
|
def _add_ali_al_rida_death_day(self, name) -> set[date]:
|
|
@@ -282,7 +286,10 @@ class IslamicHolidays(EasternCalendarHolidays):
|
|
|
282
286
|
holiday date is an estimation.
|
|
283
287
|
"""
|
|
284
288
|
return self._add_eastern_calendar_holiday_set(
|
|
285
|
-
name,
|
|
289
|
+
name,
|
|
290
|
+
dts_estimated,
|
|
291
|
+
show_estimated=self._islamic_calendar_show_estimated,
|
|
292
|
+
days_delta=days_delta,
|
|
286
293
|
)
|
|
287
294
|
|
|
288
295
|
def _add_islamic_new_year_day(self, name) -> set[date]:
|
holidays/groups/mandaean.py
CHANGED
|
@@ -11,7 +11,6 @@
|
|
|
11
11
|
# License: MIT (see LICENSE file)
|
|
12
12
|
|
|
13
13
|
from datetime import date
|
|
14
|
-
from typing import Optional
|
|
15
14
|
|
|
16
15
|
from holidays.calendars.gregorian import _timedelta
|
|
17
16
|
from holidays.calendars.mandaean import _Mandaean
|
|
@@ -37,7 +36,7 @@ class MandaeanHolidays:
|
|
|
37
36
|
def _parwanaya(self):
|
|
38
37
|
return self._mandaean.mandaean_to_gregorian(self._year - 1, 13, 1)
|
|
39
38
|
|
|
40
|
-
def _add_mandaean_holiday(self, name: str, dt:
|
|
39
|
+
def _add_mandaean_holiday(self, name: str, dt: date | None) -> date | None:
|
|
41
40
|
"""
|
|
42
41
|
Add a Mandaean holiday.
|
|
43
42
|
"""
|
|
@@ -45,7 +44,7 @@ class MandaeanHolidays:
|
|
|
45
44
|
return None
|
|
46
45
|
return self._add_holiday(name, dt)
|
|
47
46
|
|
|
48
|
-
def _add_parwanaya_day(self, name) ->
|
|
47
|
+
def _add_parwanaya_day(self, name) -> date | None:
|
|
49
48
|
"""
|
|
50
49
|
Add Parwanaya (Feast of Creation).
|
|
51
50
|
A major Mandaean holiday celebrated over five days after the 8th month.
|
|
@@ -55,19 +54,19 @@ class MandaeanHolidays:
|
|
|
55
54
|
"""
|
|
56
55
|
return self._add_mandaean_holiday(name, self._parwanaya)
|
|
57
56
|
|
|
58
|
-
def _add_parwanaya_day_two(self, name) ->
|
|
57
|
+
def _add_parwanaya_day_two(self, name) -> date | None:
|
|
59
58
|
return self._add_mandaean_holiday(name, _timedelta(self._parwanaya, +1))
|
|
60
59
|
|
|
61
|
-
def _add_parwanaya_day_three(self, name) ->
|
|
60
|
+
def _add_parwanaya_day_three(self, name) -> date | None:
|
|
62
61
|
return self._add_mandaean_holiday(name, _timedelta(self._parwanaya, +2))
|
|
63
62
|
|
|
64
|
-
def _add_parwanaya_day_four(self, name) ->
|
|
63
|
+
def _add_parwanaya_day_four(self, name) -> date | None:
|
|
65
64
|
return self._add_mandaean_holiday(name, _timedelta(self._parwanaya, +3))
|
|
66
65
|
|
|
67
|
-
def _add_parwanaya_day_five(self, name) ->
|
|
66
|
+
def _add_parwanaya_day_five(self, name) -> date | None:
|
|
68
67
|
return self._add_mandaean_holiday(name, _timedelta(self._parwanaya, +4))
|
|
69
68
|
|
|
70
|
-
def _add_dehwa_daimana_day(self, name) ->
|
|
69
|
+
def _add_dehwa_daimana_day(self, name) -> date | None:
|
|
71
70
|
"""
|
|
72
71
|
Add Dehwa Daimana (Birthday of Prophet Yahya).
|
|
73
72
|
Celebrated on 1st day of Mandaean 11th month.
|
|
@@ -77,7 +76,7 @@ class MandaeanHolidays:
|
|
|
77
76
|
name, self._mandaean.mandaean_to_gregorian(self._year - 1, 11, 1)
|
|
78
77
|
)
|
|
79
78
|
|
|
80
|
-
def _add_dehwa_hanina_day(self, name) ->
|
|
79
|
+
def _add_dehwa_hanina_day(self, name) -> date | None:
|
|
81
80
|
"""
|
|
82
81
|
Add Dehwa Hanina (Little Feast / Day of Victory).
|
|
83
82
|
Commemorates spiritual triumph and deliverance.
|
|
@@ -86,10 +85,10 @@ class MandaeanHolidays:
|
|
|
86
85
|
"""
|
|
87
86
|
return self._add_mandaean_holiday(name, self._dehwa_hanina)
|
|
88
87
|
|
|
89
|
-
def _add_dehwa_hanina_day_two(self, name) ->
|
|
88
|
+
def _add_dehwa_hanina_day_two(self, name) -> date | None:
|
|
90
89
|
return self._add_mandaean_holiday(name, _timedelta(self._dehwa_hanina, +1))
|
|
91
90
|
|
|
92
|
-
def _add_great_feast_day(self, name) ->
|
|
91
|
+
def _add_great_feast_day(self, name) -> date | None:
|
|
93
92
|
"""
|
|
94
93
|
Add Great Feast (Feast of the Great Shishlam).
|
|
95
94
|
Celebrated on the 6th day of the first month of the Mandaean calendar.
|
|
@@ -97,11 +96,11 @@ class MandaeanHolidays:
|
|
|
97
96
|
"""
|
|
98
97
|
return self._add_mandaean_holiday(name, self._great_feast)
|
|
99
98
|
|
|
100
|
-
def _add_great_feast_day_two(self, name) ->
|
|
99
|
+
def _add_great_feast_day_two(self, name) -> date | None:
|
|
101
100
|
return self._add_mandaean_holiday(name, _timedelta(self._great_feast, +1))
|
|
102
101
|
|
|
103
|
-
def _add_great_feast_day_three(self, name) ->
|
|
102
|
+
def _add_great_feast_day_three(self, name) -> date | None:
|
|
104
103
|
return self._add_mandaean_holiday(name, _timedelta(self._great_feast, +2))
|
|
105
104
|
|
|
106
|
-
def _add_great_feast_day_four(self, name) ->
|
|
105
|
+
def _add_great_feast_day_four(self, name) -> date | None:
|
|
107
106
|
return self._add_mandaean_holiday(name, _timedelta(self._great_feast, +3))
|
holidays/groups/mongolian.py
CHANGED
|
@@ -11,7 +11,6 @@
|
|
|
11
11
|
# License: MIT (see LICENSE file)
|
|
12
12
|
|
|
13
13
|
from datetime import date
|
|
14
|
-
from typing import Optional
|
|
15
14
|
|
|
16
15
|
from holidays.calendars.mongolian import _MongolianLunisolar
|
|
17
16
|
from holidays.groups.eastern import EasternCalendarHolidays
|
|
@@ -22,13 +21,13 @@ class MongolianCalendarHolidays(EasternCalendarHolidays):
|
|
|
22
21
|
Mongolian lunisolar calendar holidays.
|
|
23
22
|
"""
|
|
24
23
|
|
|
25
|
-
def __init__(self, cls=None, show_estimated=False) -> None:
|
|
24
|
+
def __init__(self, cls=None, *, show_estimated=False) -> None:
|
|
26
25
|
self._mongolian_calendar = cls() if cls else _MongolianLunisolar()
|
|
27
26
|
self._mongolian_calendar_show_estimated = show_estimated
|
|
28
27
|
|
|
29
28
|
def _add_mongolian_calendar_holiday(
|
|
30
|
-
self, name: str, dt_estimated: tuple[
|
|
31
|
-
) ->
|
|
29
|
+
self, name: str, dt_estimated: tuple[date | None, bool], days_delta: int = 0
|
|
30
|
+
) -> date | None:
|
|
32
31
|
"""
|
|
33
32
|
Add Mongolian calendar holiday.
|
|
34
33
|
|
|
@@ -37,10 +36,13 @@ class MongolianCalendarHolidays(EasternCalendarHolidays):
|
|
|
37
36
|
"""
|
|
38
37
|
|
|
39
38
|
return self._add_eastern_calendar_holiday(
|
|
40
|
-
name,
|
|
39
|
+
name,
|
|
40
|
+
dt_estimated,
|
|
41
|
+
show_estimated=self._mongolian_calendar_show_estimated,
|
|
42
|
+
days_delta=days_delta,
|
|
41
43
|
)
|
|
42
44
|
|
|
43
|
-
def _add_buddha_day(self, name) ->
|
|
45
|
+
def _add_buddha_day(self, name) -> date | None:
|
|
44
46
|
"""
|
|
45
47
|
Add Buddha Day.
|
|
46
48
|
|
|
@@ -53,7 +55,7 @@ class MongolianCalendarHolidays(EasternCalendarHolidays):
|
|
|
53
55
|
name, self._mongolian_calendar.buddha_day_date(self._year)
|
|
54
56
|
)
|
|
55
57
|
|
|
56
|
-
def _add_genghis_khan_day(self, name) ->
|
|
58
|
+
def _add_genghis_khan_day(self, name) -> date | None:
|
|
57
59
|
"""
|
|
58
60
|
Add Genghis Khan's Birthday.
|
|
59
61
|
|
|
@@ -66,7 +68,7 @@ class MongolianCalendarHolidays(EasternCalendarHolidays):
|
|
|
66
68
|
name, self._mongolian_calendar.genghis_khan_day_date(self._year)
|
|
67
69
|
)
|
|
68
70
|
|
|
69
|
-
def _add_tsagaan_sar(self, name) ->
|
|
71
|
+
def _add_tsagaan_sar(self, name) -> date | None:
|
|
70
72
|
"""
|
|
71
73
|
Add Tsagaan Sar (Mongolian Lunar New Year).
|
|
72
74
|
|
|
@@ -78,7 +80,7 @@ class MongolianCalendarHolidays(EasternCalendarHolidays):
|
|
|
78
80
|
name, self._mongolian_calendar.tsagaan_sar_date(self._year)
|
|
79
81
|
)
|
|
80
82
|
|
|
81
|
-
def _add_tsagaan_sar_day_2(self, name) ->
|
|
83
|
+
def _add_tsagaan_sar_day_2(self, name) -> date | None:
|
|
82
84
|
"""
|
|
83
85
|
Add Tsagaan Sar Day 2 (Mongolian Lunar New Year).
|
|
84
86
|
|
|
@@ -90,7 +92,7 @@ class MongolianCalendarHolidays(EasternCalendarHolidays):
|
|
|
90
92
|
name, self._mongolian_calendar.tsagaan_sar_date(self._year), days_delta=+1
|
|
91
93
|
)
|
|
92
94
|
|
|
93
|
-
def _add_tsagaan_sar_day_3(self, name) ->
|
|
95
|
+
def _add_tsagaan_sar_day_3(self, name) -> date | None:
|
|
94
96
|
"""
|
|
95
97
|
Add Tsagaan Sar Day 3 (Mongolian Lunar New Year).
|
|
96
98
|
|
holidays/groups/persian.py
CHANGED
|
@@ -11,7 +11,6 @@
|
|
|
11
11
|
# License: MIT (see LICENSE file)
|
|
12
12
|
|
|
13
13
|
from datetime import date
|
|
14
|
-
from typing import Optional
|
|
15
14
|
|
|
16
15
|
from holidays.calendars.gregorian import _timedelta
|
|
17
16
|
from holidays.calendars.persian import _Persian
|
|
@@ -25,7 +24,7 @@ class PersianCalendarHolidays:
|
|
|
25
24
|
def __init__(self) -> None:
|
|
26
25
|
self._persian_calendar = _Persian()
|
|
27
26
|
|
|
28
|
-
def _add_death_of_khomeini_day(self, name: str) ->
|
|
27
|
+
def _add_death_of_khomeini_day(self, name: str) -> date | None:
|
|
29
28
|
"""
|
|
30
29
|
Add Death of Ruhollah Khomeini Day (14th day of the 3rd month).
|
|
31
30
|
|
|
@@ -36,7 +35,7 @@ class PersianCalendarHolidays:
|
|
|
36
35
|
name, self._persian_calendar.persian_to_gregorian(self._year, 3, 14)
|
|
37
36
|
)
|
|
38
37
|
|
|
39
|
-
def _add_islamic_emirat_victory_day(self, name: str) ->
|
|
38
|
+
def _add_islamic_emirat_victory_day(self, name: str) -> date | None:
|
|
40
39
|
"""
|
|
41
40
|
Add Islamic Emirate Victory Day (24th day of the 5th month).
|
|
42
41
|
|
|
@@ -47,7 +46,7 @@ class PersianCalendarHolidays:
|
|
|
47
46
|
name, self._persian_calendar.persian_to_gregorian(self._year, 5, 24)
|
|
48
47
|
)
|
|
49
48
|
|
|
50
|
-
def _add_islamic_republic_day(self, name: str) ->
|
|
49
|
+
def _add_islamic_republic_day(self, name: str) -> date | None:
|
|
51
50
|
"""
|
|
52
51
|
Add Islamic Republic Day (12th day of the 1st month).
|
|
53
52
|
|
|
@@ -59,7 +58,7 @@ class PersianCalendarHolidays:
|
|
|
59
58
|
name, self._persian_calendar.persian_to_gregorian(self._year, 1, 12)
|
|
60
59
|
)
|
|
61
60
|
|
|
62
|
-
def _add_islamic_revolution_day(self, name: str) ->
|
|
61
|
+
def _add_islamic_revolution_day(self, name: str) -> date | None:
|
|
63
62
|
"""
|
|
64
63
|
Add Islamic Revolution Day (22nd day of the 11th month).
|
|
65
64
|
|
|
@@ -72,7 +71,7 @@ class PersianCalendarHolidays:
|
|
|
72
71
|
name, self._persian_calendar.persian_to_gregorian(self._year - 1, 11, 22)
|
|
73
72
|
)
|
|
74
73
|
|
|
75
|
-
def _add_khordad_uprising_day(self, name: str) ->
|
|
74
|
+
def _add_khordad_uprising_day(self, name: str) -> date | None:
|
|
76
75
|
"""
|
|
77
76
|
Add 15 Khordad uprising Day (15th day of the 3rd month).
|
|
78
77
|
|
|
@@ -85,7 +84,7 @@ class PersianCalendarHolidays:
|
|
|
85
84
|
name, self._persian_calendar.persian_to_gregorian(self._year, 3, 15)
|
|
86
85
|
)
|
|
87
86
|
|
|
88
|
-
def _add_last_day_of_year(self, name: str) ->
|
|
87
|
+
def _add_last_day_of_year(self, name: str) -> date | None:
|
|
89
88
|
"""
|
|
90
89
|
If previous year is a leap year, its 12th month (Esfand) has 30 days,
|
|
91
90
|
and this 30th day is a holiday.
|
|
@@ -97,7 +96,7 @@ class PersianCalendarHolidays:
|
|
|
97
96
|
else:
|
|
98
97
|
return None
|
|
99
98
|
|
|
100
|
-
def _add_natures_day(self, name: str) ->
|
|
99
|
+
def _add_natures_day(self, name: str) -> date | None:
|
|
101
100
|
"""
|
|
102
101
|
Add Nature's Day, or Sizdah Bedar (13th day of the 1st month).
|
|
103
102
|
|
|
@@ -108,7 +107,7 @@ class PersianCalendarHolidays:
|
|
|
108
107
|
name, self._persian_calendar.persian_to_gregorian(self._year, 1, 13)
|
|
109
108
|
)
|
|
110
109
|
|
|
111
|
-
def _add_nowruz_day(self, name: str) ->
|
|
110
|
+
def _add_nowruz_day(self, name: str) -> date | None:
|
|
112
111
|
"""
|
|
113
112
|
Add Nowruz Day (1st day of the 1st month).
|
|
114
113
|
|
|
@@ -120,7 +119,7 @@ class PersianCalendarHolidays:
|
|
|
120
119
|
name, self._persian_calendar.new_year_date(self._year)
|
|
121
120
|
)
|
|
122
121
|
|
|
123
|
-
def _add_nowruz_day_two(self, name: str) ->
|
|
122
|
+
def _add_nowruz_day_two(self, name: str) -> date | None:
|
|
124
123
|
"""
|
|
125
124
|
Add Nowruz Day Two.
|
|
126
125
|
"""
|
|
@@ -128,7 +127,7 @@ class PersianCalendarHolidays:
|
|
|
128
127
|
name, self._persian_calendar.new_year_date(self._year), days_delta=+1
|
|
129
128
|
)
|
|
130
129
|
|
|
131
|
-
def _add_nowruz_day_three(self, name: str) ->
|
|
130
|
+
def _add_nowruz_day_three(self, name: str) -> date | None:
|
|
132
131
|
"""
|
|
133
132
|
Add Nowruz Day Three.
|
|
134
133
|
"""
|
|
@@ -136,7 +135,7 @@ class PersianCalendarHolidays:
|
|
|
136
135
|
name, self._persian_calendar.new_year_date(self._year), days_delta=+2
|
|
137
136
|
)
|
|
138
137
|
|
|
139
|
-
def _add_nowruz_day_four(self, name: str) ->
|
|
138
|
+
def _add_nowruz_day_four(self, name: str) -> date | None:
|
|
140
139
|
"""
|
|
141
140
|
Add Nowruz Day Four.
|
|
142
141
|
"""
|
|
@@ -144,7 +143,7 @@ class PersianCalendarHolidays:
|
|
|
144
143
|
name, self._persian_calendar.new_year_date(self._year), days_delta=+3
|
|
145
144
|
)
|
|
146
145
|
|
|
147
|
-
def _add_oil_nationalization_day(self, name: str) ->
|
|
146
|
+
def _add_oil_nationalization_day(self, name: str) -> date | None:
|
|
148
147
|
"""
|
|
149
148
|
Add Iranian Oil Industry Nationalization Day (29th day of the 12th month).
|
|
150
149
|
|
|
@@ -157,8 +156,8 @@ class PersianCalendarHolidays:
|
|
|
157
156
|
)
|
|
158
157
|
|
|
159
158
|
def _add_persian_calendar_holiday(
|
|
160
|
-
self, name: str, dt:
|
|
161
|
-
) ->
|
|
159
|
+
self, name: str, dt: date | None, days_delta: int = 0
|
|
160
|
+
) -> date | None:
|
|
162
161
|
"""
|
|
163
162
|
Add Persian calendar holiday.
|
|
164
163
|
"""
|