holidays 0.78__py3-none-any.whl → 0.80__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/__init__.py +1 -0
- holidays/calendars/chinese.py +14 -4
- holidays/calendars/ethiopian.py +31 -0
- holidays/calendars/hindu.py +1 -0
- holidays/calendars/islamic.py +16 -4
- holidays/calendars/julian.py +14 -0
- holidays/calendars/mandaean.py +59 -0
- holidays/calendars/tibetan.py +1466 -0
- holidays/constants.py +2 -1
- holidays/countries/__init__.py +20 -0
- holidays/countries/afghanistan.py +6 -39
- holidays/countries/albania.py +3 -22
- holidays/countries/argentina.py +7 -18
- holidays/countries/australia.py +191 -295
- holidays/countries/azerbaijan.py +6 -39
- holidays/countries/bahrain.py +29 -38
- holidays/countries/bhutan.py +194 -0
- holidays/countries/bosnia_and_herzegovina.py +7 -28
- holidays/countries/brunei.py +7 -117
- holidays/countries/burkina_faso.py +9 -15
- holidays/countries/burundi.py +95 -40
- holidays/countries/cameroon.py +8 -34
- holidays/countries/canada.py +9 -1
- holidays/countries/central_african_republic.py +3 -16
- holidays/countries/chad.py +9 -17
- holidays/countries/chile.py +20 -4
- holidays/countries/christmas_island.py +10 -15
- holidays/countries/cocos_islands.py +5 -24
- holidays/countries/comoros.py +121 -0
- holidays/countries/egypt.py +5 -37
- holidays/countries/eritrea.py +104 -0
- holidays/countries/ethiopia.py +18 -47
- holidays/countries/fiji.py +1 -2
- holidays/countries/gabon.py +5 -23
- holidays/countries/gambia.py +168 -0
- holidays/countries/georgia.py +9 -7
- holidays/countries/guinea.py +5 -27
- holidays/countries/guinea_bissau.py +96 -0
- holidays/countries/guyana.py +2 -17
- holidays/countries/india.py +12 -25
- holidays/countries/indonesia.py +6 -158
- holidays/countries/iran.py +16 -126
- holidays/countries/iraq.py +276 -0
- holidays/countries/kazakhstan.py +2 -18
- holidays/countries/kenya.py +2 -8
- holidays/countries/kiribati.py +124 -0
- holidays/countries/kyrgyzstan.py +2 -0
- holidays/countries/lebanon.py +5 -87
- holidays/countries/liberia.py +80 -0
- holidays/countries/libya.py +5 -37
- holidays/countries/macau.py +65 -63
- holidays/countries/malaysia.py +9 -130
- holidays/countries/maldives.py +2 -0
- holidays/countries/mali.py +4 -9
- holidays/countries/mauritania.py +2 -0
- holidays/countries/mauritius.py +1 -2
- holidays/countries/montenegro.py +3 -18
- holidays/countries/nepal.py +42 -44
- holidays/countries/niger.py +14 -74
- holidays/countries/nigeria.py +198 -27
- holidays/countries/north_macedonia.py +3 -39
- holidays/countries/oman.py +6 -28
- holidays/countries/pakistan.py +5 -30
- holidays/countries/palestine.py +2 -5
- holidays/countries/philippines.py +3 -33
- holidays/countries/qatar.py +3 -45
- holidays/countries/rwanda.py +162 -0
- holidays/countries/saudi_arabia.py +3 -0
- holidays/countries/senegal.py +6 -16
- holidays/countries/sierra_leone.py +5 -21
- holidays/countries/singapore.py +7 -59
- holidays/countries/somalia.py +79 -0
- holidays/countries/south_georgia_and_the_south_sandwich_islands.py +160 -0
- holidays/countries/south_sudan.py +133 -0
- holidays/countries/spain.py +7 -10
- holidays/countries/sri_lanka.py +3 -14
- holidays/countries/suriname.py +11 -19
- holidays/countries/syrian_arab_republic.py +134 -0
- holidays/countries/tajikistan.py +116 -0
- holidays/countries/tanzania.py +291 -153
- holidays/countries/timor_leste.py +2 -17
- holidays/countries/togo.py +4 -29
- holidays/countries/trinidad_and_tobago.py +2 -9
- holidays/countries/turkey.py +2 -116
- holidays/countries/turkmenistan.py +164 -0
- holidays/countries/uganda.py +101 -0
- holidays/countries/united_arab_emirates.py +5 -29
- holidays/countries/uzbekistan.py +3 -31
- holidays/countries/yemen.py +8 -52
- holidays/financial/__init__.py +5 -0
- holidays/financial/national_stock_exchange_of_india.py +169 -0
- holidays/groups/__init__.py +2 -0
- holidays/groups/christian.py +48 -12
- holidays/groups/eastern.py +1 -1
- holidays/groups/international.py +17 -1
- holidays/groups/islamic.py +1 -1
- holidays/groups/mandaean.py +107 -0
- holidays/groups/tibetan.py +153 -0
- holidays/holiday_base.py +14 -0
- holidays/locale/ar/LC_MESSAGES/BH.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/IQ.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/SY.mo +0 -0
- holidays/locale/bs/LC_MESSAGES/BA.mo +0 -0
- holidays/locale/en_GM/LC_MESSAGES/GM.mo +0 -0
- holidays/locale/en_GS/LC_MESSAGES/GS.mo +0 -0
- holidays/locale/en_IN/LC_MESSAGES/XNSE.mo +0 -0
- holidays/locale/en_MO/LC_MESSAGES/MO.mo +0 -0
- holidays/locale/en_NG/LC_MESSAGES/NG.mo +0 -0
- holidays/locale/en_SG/LC_MESSAGES/SG.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AR.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BA.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BH.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BI.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CL.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/ES.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/GE.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/GM.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/GS.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/GW.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/IQ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MO.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/NG.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/RW.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/SG.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/SY.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TJ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TM.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TZ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/XNSE.mo +0 -0
- holidays/locale/es/LC_MESSAGES/AR.mo +0 -0
- holidays/locale/es/LC_MESSAGES/ES.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/RW.mo +0 -0
- holidays/locale/fr_BI/LC_MESSAGES/BI.mo +0 -0
- holidays/locale/hi/LC_MESSAGES/XNSE.mo +0 -0
- holidays/locale/ka/LC_MESSAGES/GE.mo +0 -0
- holidays/locale/pt_GW/LC_MESSAGES/GW.mo +0 -0
- holidays/locale/pt_MO/LC_MESSAGES/MO.mo +0 -0
- holidays/locale/ru/LC_MESSAGES/TJ.mo +0 -0
- holidays/locale/ru/LC_MESSAGES/TM.mo +0 -0
- holidays/locale/rw/LC_MESSAGES/RW.mo +0 -0
- holidays/locale/sr/LC_MESSAGES/BA.mo +0 -0
- holidays/locale/sw/LC_MESSAGES/TZ.mo +0 -0
- holidays/locale/tg/LC_MESSAGES/TJ.mo +0 -0
- holidays/locale/th/LC_MESSAGES/MO.mo +0 -0
- holidays/locale/th/LC_MESSAGES/SG.mo +0 -0
- holidays/locale/tk/LC_MESSAGES/TM.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/AR.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/BA.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/CL.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/ES.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/GE.mo +0 -0
- holidays/locale/zh_CN/LC_MESSAGES/MO.mo +0 -0
- holidays/locale/zh_MO/LC_MESSAGES/MO.mo +0 -0
- holidays/registry.py +46 -14
- holidays/version.py +1 -1
- {holidays-0.78.dist-info → holidays-0.80.dist-info}/METADATA +127 -9
- {holidays-0.78.dist-info → holidays-0.80.dist-info}/RECORD +161 -113
- {holidays-0.78.dist-info → holidays-0.80.dist-info}/licenses/CONTRIBUTORS +2 -0
- {holidays-0.78.dist-info → holidays-0.80.dist-info}/WHEEL +0 -0
- {holidays-0.78.dist-info → holidays-0.80.dist-info}/licenses/LICENSE +0 -0
- {holidays-0.78.dist-info → holidays-0.80.dist-info}/top_level.txt +0 -0
holidays/countries/lebanon.py
CHANGED
|
@@ -190,10 +190,10 @@ class LBN(Lebanon):
|
|
|
190
190
|
|
|
191
191
|
class LebanonIslamicHolidays(_CustomIslamicHolidays):
|
|
192
192
|
# https://web.archive.org/web/20250426220233/https://www.timeanddate.com/holidays/lebanon/first-day-ashura
|
|
193
|
+
ASHURA_DATES_CONFIRMED_YEARS = (1978, 2024)
|
|
193
194
|
ASHURA_DATES = {
|
|
194
195
|
1978: (DEC, 11),
|
|
195
196
|
1979: (NOV, 30),
|
|
196
|
-
1980: (NOV, 18),
|
|
197
197
|
1981: (NOV, 8),
|
|
198
198
|
1982: (OCT, 28),
|
|
199
199
|
1983: (OCT, 17),
|
|
@@ -206,28 +206,15 @@ class LebanonIslamicHolidays(_CustomIslamicHolidays):
|
|
|
206
206
|
1990: (AUG, 2),
|
|
207
207
|
1991: (JUL, 22),
|
|
208
208
|
1992: (JUL, 11),
|
|
209
|
-
1993: (JUN, 30),
|
|
210
|
-
1994: (JUN, 19),
|
|
211
209
|
1995: (JUN, 9),
|
|
212
210
|
1996: (MAY, 28),
|
|
213
211
|
1997: (MAY, 18),
|
|
214
212
|
1998: (MAY, 7),
|
|
215
|
-
1999: (APR, 26),
|
|
216
|
-
2000: (APR, 15),
|
|
217
|
-
2001: (APR, 4),
|
|
218
|
-
2002: (MAR, 24),
|
|
219
213
|
2003: (MAR, 14),
|
|
220
214
|
2004: (MAR, 2),
|
|
221
|
-
2005: (FEB, 19),
|
|
222
|
-
2006: (FEB, 9),
|
|
223
|
-
2007: (JAN, 29),
|
|
224
|
-
2008: (JAN, 19),
|
|
225
|
-
2009: ((JAN, 7), (DEC, 27)),
|
|
226
215
|
2010: (DEC, 17),
|
|
227
216
|
2011: (DEC, 6),
|
|
228
|
-
2012: (NOV, 24),
|
|
229
217
|
2013: (NOV, 14),
|
|
230
|
-
2014: (NOV, 3),
|
|
231
218
|
2015: (OCT, 24),
|
|
232
219
|
2016: (OCT, 12),
|
|
233
220
|
2017: (OCT, 1),
|
|
@@ -236,11 +223,10 @@ class LebanonIslamicHolidays(_CustomIslamicHolidays):
|
|
|
236
223
|
2020: (AUG, 30),
|
|
237
224
|
2021: (AUG, 19),
|
|
238
225
|
2022: (AUG, 9),
|
|
239
|
-
2023: (JUL, 28),
|
|
240
|
-
2024: (JUL, 16),
|
|
241
226
|
}
|
|
242
227
|
|
|
243
228
|
# https://web.archive.org/web/20250316072400/https://www.timeanddate.com/holidays/lebanon/eid-al-adha
|
|
229
|
+
EID_AL_ADHA_DATES_CONFIRMED_YEARS = (1978, 2025)
|
|
244
230
|
EID_AL_ADHA_DATES = {
|
|
245
231
|
1978: (NOV, 11),
|
|
246
232
|
1979: (NOV, 1),
|
|
@@ -256,7 +242,6 @@ class LebanonIslamicHolidays(_CustomIslamicHolidays):
|
|
|
256
242
|
1989: (JUL, 14),
|
|
257
243
|
1990: (JUL, 4),
|
|
258
244
|
1991: (JUN, 23),
|
|
259
|
-
1992: (JUN, 11),
|
|
260
245
|
1993: (JUN, 1),
|
|
261
246
|
1994: (MAY, 21),
|
|
262
247
|
1995: (MAY, 10),
|
|
@@ -264,35 +249,24 @@ class LebanonIslamicHolidays(_CustomIslamicHolidays):
|
|
|
264
249
|
1997: (APR, 18),
|
|
265
250
|
1998: (APR, 8),
|
|
266
251
|
1999: (MAR, 28),
|
|
267
|
-
2000: (MAR, 16),
|
|
268
252
|
2001: (MAR, 6),
|
|
269
253
|
2002: (FEB, 23),
|
|
270
254
|
2003: (FEB, 12),
|
|
271
255
|
2004: (FEB, 2),
|
|
272
|
-
2005: (JAN, 21),
|
|
273
|
-
2006: ((JAN, 10), (DEC, 31)),
|
|
274
|
-
2007: (DEC, 20),
|
|
275
256
|
2008: (DEC, 9),
|
|
276
257
|
2009: (NOV, 28),
|
|
277
258
|
2010: (NOV, 17),
|
|
278
259
|
2011: (NOV, 7),
|
|
279
|
-
2012: (OCT, 26),
|
|
280
|
-
2013: (OCT, 15),
|
|
281
260
|
2014: (OCT, 5),
|
|
282
261
|
2015: (SEP, 24),
|
|
283
262
|
2016: (SEP, 13),
|
|
284
263
|
2017: (SEP, 2),
|
|
285
264
|
2018: (AUG, 22),
|
|
286
265
|
2019: (AUG, 12),
|
|
287
|
-
2020: (JUL, 31),
|
|
288
|
-
2021: (JUL, 20),
|
|
289
|
-
2022: (JUL, 9),
|
|
290
|
-
2023: (JUN, 28),
|
|
291
|
-
2024: (JUN, 16),
|
|
292
|
-
2025: (JUN, 6),
|
|
293
266
|
}
|
|
294
267
|
|
|
295
268
|
# https://web.archive.org/web/20250216042303/https://www.timeanddate.com/holidays/lebanon/eid-al-fitr
|
|
269
|
+
EID_AL_FITR_DATES_CONFIRMED_YEARS = (1978, 2025)
|
|
296
270
|
EID_AL_FITR_DATES = {
|
|
297
271
|
1978: (SEP, 4),
|
|
298
272
|
1979: (AUG, 25),
|
|
@@ -300,7 +274,6 @@ class LebanonIslamicHolidays(_CustomIslamicHolidays):
|
|
|
300
274
|
1981: (AUG, 2),
|
|
301
275
|
1982: (JUL, 23),
|
|
302
276
|
1983: (JUL, 12),
|
|
303
|
-
1984: (JUN, 30),
|
|
304
277
|
1985: (JUN, 20),
|
|
305
278
|
1986: (JUN, 9),
|
|
306
279
|
1987: (MAY, 30),
|
|
@@ -308,7 +281,6 @@ class LebanonIslamicHolidays(_CustomIslamicHolidays):
|
|
|
308
281
|
1989: (MAY, 7),
|
|
309
282
|
1990: (APR, 27),
|
|
310
283
|
1991: (APR, 16),
|
|
311
|
-
1992: (APR, 4),
|
|
312
284
|
1993: (MAR, 25),
|
|
313
285
|
1994: (MAR, 14),
|
|
314
286
|
1995: (MAR, 3),
|
|
@@ -320,35 +292,21 @@ class LebanonIslamicHolidays(_CustomIslamicHolidays):
|
|
|
320
292
|
2001: (DEC, 17),
|
|
321
293
|
2002: (DEC, 6),
|
|
322
294
|
2003: (NOV, 26),
|
|
323
|
-
2004: (NOV, 14),
|
|
324
295
|
2005: (NOV, 4),
|
|
325
296
|
2006: (OCT, 24),
|
|
326
|
-
2007: (OCT, 13),
|
|
327
297
|
2008: (OCT, 2),
|
|
328
298
|
2009: (SEP, 21),
|
|
329
|
-
2010: (SEP, 10),
|
|
330
299
|
2011: (AUG, 31),
|
|
331
|
-
2012: (AUG, 19),
|
|
332
|
-
2013: (AUG, 8),
|
|
333
300
|
2014: (JUL, 29),
|
|
334
|
-
2015: (JUL, 17),
|
|
335
301
|
2016: (JUL, 7),
|
|
336
302
|
2017: (JUN, 26),
|
|
337
|
-
2018: (JUN, 15),
|
|
338
|
-
2019: (JUN, 4),
|
|
339
|
-
2020: (MAY, 24),
|
|
340
|
-
2021: (MAY, 13),
|
|
341
|
-
2022: (MAY, 2),
|
|
342
|
-
2023: (APR, 21),
|
|
343
|
-
2024: (APR, 10),
|
|
344
|
-
2025: (MAR, 30),
|
|
345
303
|
}
|
|
346
304
|
|
|
347
305
|
# https://web.archive.org/web/20250428034326/https://www.timeanddate.com/holidays/lebanon/muharram
|
|
306
|
+
HIJRI_NEW_YEAR_DATES_CONFIRMED_YEARS = (1978, 2025)
|
|
348
307
|
HIJRI_NEW_YEAR_DATES = {
|
|
349
308
|
1978: (DEC, 2),
|
|
350
309
|
1979: (NOV, 21),
|
|
351
|
-
1980: (NOV, 9),
|
|
352
310
|
1981: (OCT, 30),
|
|
353
311
|
1982: (OCT, 19),
|
|
354
312
|
1983: (OCT, 8),
|
|
@@ -361,47 +319,24 @@ class LebanonIslamicHolidays(_CustomIslamicHolidays):
|
|
|
361
319
|
1990: (JUL, 24),
|
|
362
320
|
1991: (JUL, 13),
|
|
363
321
|
1992: (JUL, 2),
|
|
364
|
-
1993: (JUN, 21),
|
|
365
|
-
1994: (JUN, 10),
|
|
366
322
|
1995: (MAY, 31),
|
|
367
323
|
1996: (MAY, 19),
|
|
368
324
|
1997: (MAY, 9),
|
|
369
325
|
1998: (APR, 28),
|
|
370
|
-
1999: (APR, 17),
|
|
371
|
-
2000: (APR, 6),
|
|
372
|
-
2001: (MAR, 26),
|
|
373
|
-
2002: (MAR, 15),
|
|
374
326
|
2003: (MAR, 5),
|
|
375
327
|
2004: (FEB, 22),
|
|
376
|
-
2005: (FEB, 10),
|
|
377
|
-
2006: (JAN, 31),
|
|
378
|
-
2007: (JAN, 20),
|
|
379
|
-
2008: ((JAN, 10), (DEC, 29)),
|
|
380
|
-
2009: (DEC, 18),
|
|
381
328
|
2010: (DEC, 8),
|
|
382
329
|
2011: (NOV, 27),
|
|
383
|
-
2012: (NOV, 15),
|
|
384
330
|
2013: (NOV, 5),
|
|
385
|
-
2014: (OCT, 25),
|
|
386
|
-
2015: (OCT, 14),
|
|
387
331
|
2016: (OCT, 3),
|
|
388
332
|
2017: (SEP, 22),
|
|
389
|
-
2018: (SEP, 11),
|
|
390
|
-
2019: (AUG, 31),
|
|
391
|
-
2020: (AUG, 20),
|
|
392
|
-
2021: (AUG, 9),
|
|
393
|
-
2022: (JUL, 30),
|
|
394
|
-
2023: (JUL, 19),
|
|
395
|
-
2024: (JUL, 7),
|
|
396
|
-
2025: (JUN, 26),
|
|
397
333
|
}
|
|
398
334
|
|
|
399
335
|
# https://web.archive.org/web/20240908071444/https://www.timeanddate.com/holidays/lebanon/prophet-birthday
|
|
336
|
+
MAWLID_DATES_CONFIRMED_YEARS = (1978, 2024)
|
|
400
337
|
MAWLID_DATES = {
|
|
401
338
|
1978: (FEB, 20),
|
|
402
339
|
1979: (FEB, 10),
|
|
403
|
-
1980: (JAN, 30),
|
|
404
|
-
1981: (JAN, 18),
|
|
405
340
|
1982: ((JAN, 8), (DEC, 28)),
|
|
406
341
|
1983: (DEC, 17),
|
|
407
342
|
1984: (DEC, 6),
|
|
@@ -414,35 +349,18 @@ class LebanonIslamicHolidays(_CustomIslamicHolidays):
|
|
|
414
349
|
1991: (SEP, 21),
|
|
415
350
|
1992: (SEP, 10),
|
|
416
351
|
1993: (AUG, 30),
|
|
417
|
-
1994: (AUG, 19),
|
|
418
352
|
1995: (AUG, 9),
|
|
419
353
|
1996: (JUL, 28),
|
|
420
354
|
1997: (JUL, 18),
|
|
421
355
|
1998: (JUL, 7),
|
|
422
|
-
1999: (JUN, 26),
|
|
423
356
|
2000: (JUN, 15),
|
|
424
|
-
2001: (JUN, 4),
|
|
425
|
-
2002: (MAY, 24),
|
|
426
357
|
2003: (MAY, 14),
|
|
427
358
|
2004: (MAY, 2),
|
|
428
|
-
2005: (APR, 21),
|
|
429
359
|
2006: (APR, 11),
|
|
430
|
-
2007: (MAR, 31),
|
|
431
|
-
2008: (MAR, 20),
|
|
432
|
-
2009: (MAR, 9),
|
|
433
|
-
2010: (FEB, 26),
|
|
434
360
|
2011: (FEB, 16),
|
|
435
361
|
2012: (FEB, 5),
|
|
436
|
-
2013: (JAN, 24),
|
|
437
362
|
2014: (JAN, 14),
|
|
438
363
|
2015: ((JAN, 3), (DEC, 24)),
|
|
439
364
|
2016: (DEC, 12),
|
|
440
365
|
2017: (DEC, 1),
|
|
441
|
-
2018: (NOV, 20),
|
|
442
|
-
2019: (NOV, 9),
|
|
443
|
-
2020: (OCT, 29),
|
|
444
|
-
2021: (OCT, 18),
|
|
445
|
-
2022: (OCT, 8),
|
|
446
|
-
2023: (SEP, 27),
|
|
447
|
-
2024: (SEP, 15),
|
|
448
366
|
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
# holidays
|
|
2
|
+
# --------
|
|
3
|
+
# A fast, efficient Python library for generating country, province and state
|
|
4
|
+
# specific sets of holidays on the fly. It aims to make determining whether a
|
|
5
|
+
# specific date is a holiday as fast and flexible as possible.
|
|
6
|
+
#
|
|
7
|
+
# Authors: Vacanza Team and individual contributors (see CONTRIBUTORS file)
|
|
8
|
+
# dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
|
|
9
|
+
# ryanss <ryanssdev@icloud.com> (c) 2014-2017
|
|
10
|
+
# Website: https://github.com/vacanza/holidays
|
|
11
|
+
# License: MIT (see LICENSE file)
|
|
12
|
+
|
|
13
|
+
from holidays.groups import ChristianHolidays, InternationalHolidays
|
|
14
|
+
from holidays.holiday_base import HolidayBase
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class Liberia(HolidayBase, ChristianHolidays, InternationalHolidays):
|
|
18
|
+
"""Liberia holidays.
|
|
19
|
+
|
|
20
|
+
References:
|
|
21
|
+
* [Patriotic and Cultural Observances Law 1956](http://www.liberlii.org/lr/legis/codes/pacolt25lcolr654/)
|
|
22
|
+
|
|
23
|
+
Inauguration Day is celebrated on the first Monday of January in the year after the
|
|
24
|
+
Presidential elections.
|
|
25
|
+
"""
|
|
26
|
+
|
|
27
|
+
country = "LR"
|
|
28
|
+
start_year = 1957
|
|
29
|
+
|
|
30
|
+
def __init__(self, *args, **kwargs):
|
|
31
|
+
ChristianHolidays.__init__(self)
|
|
32
|
+
InternationalHolidays.__init__(self)
|
|
33
|
+
super().__init__(*args, **kwargs)
|
|
34
|
+
|
|
35
|
+
def _populate_public_holidays(self):
|
|
36
|
+
# New Year's Day.
|
|
37
|
+
self._add_new_years_day("New Year's Day")
|
|
38
|
+
|
|
39
|
+
if self._year in {1960, 1964, 1968, 1972, 1976, 1986, 1998, 2006, 2012, 2018, 2024}:
|
|
40
|
+
# Inauguration Day.
|
|
41
|
+
self._add_holiday_1st_mon_of_jan("Inauguration Day")
|
|
42
|
+
|
|
43
|
+
# Armed Forces Day.
|
|
44
|
+
self._add_holiday_feb_11("Armed Forces Day")
|
|
45
|
+
|
|
46
|
+
# Decoration Day.
|
|
47
|
+
self._add_holiday_2nd_wed_of_mar("Decoration Day")
|
|
48
|
+
|
|
49
|
+
# J. J. Roberts Memorial Birthday.
|
|
50
|
+
self._add_holiday_mar_15("J. J. Roberts Memorial Birthday")
|
|
51
|
+
|
|
52
|
+
# Fasting and Prayer Day.
|
|
53
|
+
self._add_holiday_2nd_fri_of_apr("Fasting and Prayer Day")
|
|
54
|
+
|
|
55
|
+
if self._year >= 1960:
|
|
56
|
+
# National Unification and Integration Day.
|
|
57
|
+
self._add_holiday_may_14("National Unification and Integration Day")
|
|
58
|
+
|
|
59
|
+
# Independence Day.
|
|
60
|
+
self._add_holiday_jul_26("Independence Day")
|
|
61
|
+
|
|
62
|
+
# National Flag Day.
|
|
63
|
+
self._add_holiday_aug_24("National Flag Day")
|
|
64
|
+
|
|
65
|
+
# Thanksgiving Day.
|
|
66
|
+
self._add_holiday_1st_thu_of_nov("Thanksgiving Day")
|
|
67
|
+
|
|
68
|
+
# Tubman Administration Goodwill Day.
|
|
69
|
+
self._add_holiday_nov_29("Tubman Administration Goodwill Day")
|
|
70
|
+
|
|
71
|
+
# Christmas Day.
|
|
72
|
+
self._add_christmas_day("Christmas Day")
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
class LR(Liberia):
|
|
76
|
+
pass
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
class LBR(Liberia):
|
|
80
|
+
pass
|
holidays/countries/libya.py
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
from gettext import gettext as tr
|
|
14
14
|
|
|
15
15
|
from holidays.calendars import _CustomIslamicHolidays
|
|
16
|
-
from holidays.calendars.gregorian import JAN, FEB, MAR,
|
|
16
|
+
from holidays.calendars.gregorian import JAN, FEB, MAR, JUN, JUL, AUG, SEP, OCT, NOV, DEC
|
|
17
17
|
from holidays.constants import PUBLIC, WORKDAY
|
|
18
18
|
from holidays.groups import InternationalHolidays, IslamicHolidays, StaticHolidays
|
|
19
19
|
from holidays.holiday_base import HolidayBase
|
|
@@ -142,75 +142,43 @@ class LBY(Libya):
|
|
|
142
142
|
class LibyaIslamicHolidays(_CustomIslamicHolidays):
|
|
143
143
|
# https://web.archive.org/web/20240908234803/https://www.timeanddate.com/holidays/libya/eid-al-adha
|
|
144
144
|
# https://web.archive.org/web/20250629084537/https://lawsociety.ly/legislation/قرار-رقم-773-لسنة-2017-م-بشأن-تحديد-عطلة-عيد-ال/
|
|
145
|
+
EID_AL_ADHA_DATES_CONFIRMED_YEARS = (2012, 2025)
|
|
145
146
|
EID_AL_ADHA_DATES = {
|
|
146
|
-
2012: (OCT, 26),
|
|
147
|
-
2013: (OCT, 15),
|
|
148
147
|
2014: (OCT, 5),
|
|
149
|
-
2015: (SEP, 23),
|
|
150
|
-
2016: (SEP, 11),
|
|
151
|
-
2017: (SEP, 1),
|
|
152
148
|
2018: (AUG, 22),
|
|
153
|
-
2019: (AUG, 11),
|
|
154
|
-
2020: (JUL, 31),
|
|
155
|
-
2021: (JUL, 20),
|
|
156
|
-
2022: (JUL, 9),
|
|
157
|
-
2023: (JUN, 28),
|
|
158
|
-
2024: (JUN, 16),
|
|
159
|
-
2025: (JUN, 6),
|
|
160
149
|
}
|
|
161
150
|
|
|
162
151
|
# https://web.archive.org/web/20241012125707/https://www.timeanddate.com/holidays/libya/eid-al-fitr
|
|
152
|
+
EID_AL_FITR_DATES_CONFIRMED_YEARS = (2012, 2025)
|
|
163
153
|
EID_AL_FITR_DATES = {
|
|
164
|
-
2012: (AUG, 19),
|
|
165
|
-
2013: (AUG, 8),
|
|
166
154
|
2014: (JUL, 29),
|
|
167
155
|
2015: (JUL, 18),
|
|
168
156
|
2016: (JUL, 7),
|
|
169
157
|
2017: (JUN, 26),
|
|
170
|
-
2018: (JUN, 15),
|
|
171
|
-
2019: (JUN, 4),
|
|
172
|
-
2020: (MAY, 24),
|
|
173
|
-
2021: (MAY, 13),
|
|
174
|
-
2022: (MAY, 2),
|
|
175
|
-
2023: (APR, 21),
|
|
176
|
-
2024: (APR, 10),
|
|
177
158
|
2025: (MAR, 31),
|
|
178
159
|
}
|
|
179
160
|
|
|
180
161
|
# https://web.archive.org/web/20250418094505/https://www.timeanddate.com/holidays/libya/muharram-new-year
|
|
162
|
+
HIJRI_NEW_YEAR_DATES_CONFIRMED_YEARS = (2012, 2025)
|
|
181
163
|
HIJRI_NEW_YEAR_DATES = {
|
|
182
|
-
2012: (NOV, 15),
|
|
183
164
|
2013: (NOV, 5),
|
|
184
|
-
2014: (OCT, 25),
|
|
185
165
|
2015: (OCT, 15),
|
|
186
166
|
2016: (OCT, 3),
|
|
187
167
|
2017: (SEP, 22),
|
|
188
168
|
2018: (SEP, 12),
|
|
189
|
-
2019: (AUG, 31),
|
|
190
|
-
2020: (AUG, 20),
|
|
191
169
|
2021: (AUG, 10),
|
|
192
|
-
2022: (JUL, 30),
|
|
193
|
-
2023: (JUL, 19),
|
|
194
|
-
2024: (JUL, 7),
|
|
195
|
-
2025: (JUN, 26),
|
|
196
170
|
}
|
|
197
171
|
|
|
198
172
|
# https://web.archive.org/web/20241213175353/https://www.timeanddate.com/holidays/libya/prophet-birthday
|
|
199
173
|
# https://web.archive.org/web/20250629084607/https://lawsociety.ly/legislation/قرار-رقم-1299-لسنة-2019-م-بشأن-عطلة-ذكرى-المولد/
|
|
174
|
+
MAWLID_DATES_CONFIRMED_YEARS = (2012, 2024)
|
|
200
175
|
MAWLID_DATES = {
|
|
201
176
|
2012: (FEB, 5),
|
|
202
|
-
2013: (JAN, 24),
|
|
203
177
|
2014: (JAN, 14),
|
|
204
|
-
2015: ((JAN, 3), (DEC, 23)),
|
|
205
178
|
2016: (DEC, 12),
|
|
206
179
|
2017: (DEC, 1),
|
|
207
180
|
2018: (NOV, 21),
|
|
208
|
-
2019: (NOV, 9),
|
|
209
|
-
2020: (OCT, 29),
|
|
210
181
|
2021: (OCT, 19),
|
|
211
|
-
2022: (OCT, 8),
|
|
212
|
-
2023: (SEP, 27),
|
|
213
|
-
2024: (SEP, 15),
|
|
214
182
|
}
|
|
215
183
|
|
|
216
184
|
|
holidays/countries/macau.py
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
from gettext import gettext as tr
|
|
14
14
|
|
|
15
15
|
from holidays.calendars.gregorian import FEB, SEP, OCT, DEC
|
|
16
|
-
from holidays.constants import GOVERNMENT,
|
|
16
|
+
from holidays.constants import GOVERNMENT, OPTIONAL, PUBLIC
|
|
17
17
|
from holidays.groups import (
|
|
18
18
|
ChineseCalendarHolidays,
|
|
19
19
|
ChristianHolidays,
|
|
@@ -77,7 +77,7 @@ class Macau(
|
|
|
77
77
|
"澳門市": "M",
|
|
78
78
|
"澳门市": "M",
|
|
79
79
|
}
|
|
80
|
-
supported_categories = (GOVERNMENT,
|
|
80
|
+
supported_categories = (GOVERNMENT, OPTIONAL, PUBLIC)
|
|
81
81
|
supported_languages = ("en_MO", "en_US", "pt_MO", "th", "zh_CN", "zh_MO")
|
|
82
82
|
|
|
83
83
|
def __init__(self, *args, **kwargs):
|
|
@@ -91,6 +91,63 @@ class Macau(
|
|
|
91
91
|
super().__init__(*args, **kwargs)
|
|
92
92
|
|
|
93
93
|
def _populate_public_holidays(self):
|
|
94
|
+
"""Macau Mandatory (Statutory) Holidays.
|
|
95
|
+
|
|
96
|
+
Decreto-Lei n.º 101/84/M - Earliest Available Version Online.
|
|
97
|
+
Decreto-Lei n.º 24/89/M - Added Ching Ming Festival.
|
|
98
|
+
Lei n.º 8/2000 - Removed Day of Portugal
|
|
99
|
+
- Added Macao S.A.R. Establishment Day.
|
|
100
|
+
- Moved Mid-Autumn to Day following Mid-Autumn to match Public Holidays.
|
|
101
|
+
Lei n.º 7/2008 - Consolidated with other laws, reaffirming 2000 Amendment list.
|
|
102
|
+
"""
|
|
103
|
+
if self._year <= 1984:
|
|
104
|
+
return None
|
|
105
|
+
|
|
106
|
+
# New Year's Day.
|
|
107
|
+
self._add_new_years_day(tr("元旦"))
|
|
108
|
+
|
|
109
|
+
# Chinese New Year's Day.
|
|
110
|
+
self._add_chinese_new_years_day(tr("農曆正月初一"))
|
|
111
|
+
|
|
112
|
+
# The second day of Chinese New Year.
|
|
113
|
+
self._add_chinese_new_years_day_two(tr("農曆正月初二"))
|
|
114
|
+
|
|
115
|
+
# The third day of Chinese New Year.
|
|
116
|
+
self._add_chinese_new_years_day_three(tr("農曆正月初三"))
|
|
117
|
+
|
|
118
|
+
# Labor Day.
|
|
119
|
+
self._add_labor_day(tr("勞動節"))
|
|
120
|
+
|
|
121
|
+
# Double Ninth Festival.
|
|
122
|
+
self._add_double_ninth_festival(tr("重陽節"))
|
|
123
|
+
|
|
124
|
+
# National Day of the People's Republic of China.
|
|
125
|
+
self._add_holiday_oct_1(tr("中華人民共和國國慶日"))
|
|
126
|
+
|
|
127
|
+
# Decreto-Lei n.º 24/89/M - Adds Ching Ming as a Mandatory Holiday.
|
|
128
|
+
if self._year >= 1989:
|
|
129
|
+
# Tomb-Sweeping Day.
|
|
130
|
+
self._add_qingming_festival(tr("清明節"))
|
|
131
|
+
|
|
132
|
+
# Lei n.º 8/2000 - Removed Day of Portugal as a Mandatory Holiday.
|
|
133
|
+
# - Changed observance from Mid-Autumn to the following day.
|
|
134
|
+
# - Adds Macao S.A.R. Establishment Day as a Mandatory Holiday.
|
|
135
|
+
if self._year <= 1999:
|
|
136
|
+
# Day of Portugal, Camões, and the Portuguese Communities.
|
|
137
|
+
self._add_holiday_jun_10(tr("葡國日、賈梅士日暨葡僑日"))
|
|
138
|
+
|
|
139
|
+
# Mid-Autumn Festival.
|
|
140
|
+
self._add_mid_autumn_festival(tr("中秋節"))
|
|
141
|
+
|
|
142
|
+
else:
|
|
143
|
+
# The Day following Mid-Autumn Festival.
|
|
144
|
+
self._add_mid_autumn_festival_day_two(tr("中秋節翌日"))
|
|
145
|
+
|
|
146
|
+
# Macao S.A.R. Establishment Day.
|
|
147
|
+
self._add_holiday_dec_20(tr("澳門特別行政區成立紀念日"))
|
|
148
|
+
|
|
149
|
+
def _populate_optional_holidays(self):
|
|
150
|
+
"""Macau General Holidays."""
|
|
94
151
|
# New Year's Day.
|
|
95
152
|
self._add_new_years_day(tr("元旦"))
|
|
96
153
|
|
|
@@ -223,61 +280,6 @@ class Macau(
|
|
|
223
280
|
# Macao S.A.R. Establishment Day.
|
|
224
281
|
self._add_holiday_dec_20(tr("澳門特別行政區成立紀念日"))
|
|
225
282
|
|
|
226
|
-
def _populate_mandatory_holidays(self):
|
|
227
|
-
"""
|
|
228
|
-
Decreto-Lei n.º 101/84/M - Earliest Available Version Online.
|
|
229
|
-
Decreto-Lei n.º 24/89/M - Added Ching Ming Festival.
|
|
230
|
-
Lei n.º 8/2000 - Removed Day of Portugal
|
|
231
|
-
- Added Macao S.A.R. Establishment Day.
|
|
232
|
-
- Moved Mid-Autumn to Day following Mid-Autumn to match Public Holidays.
|
|
233
|
-
Lei n.º 7/2008 - Consolidated with other laws, reaffirming 2000 Amendment list.
|
|
234
|
-
"""
|
|
235
|
-
if self._year <= 1984:
|
|
236
|
-
return None
|
|
237
|
-
|
|
238
|
-
# New Year's Day.
|
|
239
|
-
self._add_new_years_day(tr("元旦"))
|
|
240
|
-
|
|
241
|
-
# Chinese New Year's Day.
|
|
242
|
-
self._add_chinese_new_years_day(tr("農曆正月初一"))
|
|
243
|
-
|
|
244
|
-
# The second day of Chinese New Year.
|
|
245
|
-
self._add_chinese_new_years_day_two(tr("農曆正月初二"))
|
|
246
|
-
|
|
247
|
-
# The third day of Chinese New Year.
|
|
248
|
-
self._add_chinese_new_years_day_three(tr("農曆正月初三"))
|
|
249
|
-
|
|
250
|
-
# Labor Day.
|
|
251
|
-
self._add_labor_day(tr("勞動節"))
|
|
252
|
-
|
|
253
|
-
# Double Ninth Festival.
|
|
254
|
-
self._add_double_ninth_festival(tr("重陽節"))
|
|
255
|
-
|
|
256
|
-
# National Day of the People's Republic of China.
|
|
257
|
-
self._add_holiday_oct_1(tr("中華人民共和國國慶日"))
|
|
258
|
-
|
|
259
|
-
# Decreto-Lei n.º 24/89/M - Adds Ching Ming as a Mandatory Holiday.
|
|
260
|
-
if self._year >= 1989:
|
|
261
|
-
# Tomb-Sweeping Day.
|
|
262
|
-
self._add_qingming_festival(tr("清明節"))
|
|
263
|
-
|
|
264
|
-
# Lei n.º 8/2000 - Removed Day of Portugal as a Mandatory Holiday.
|
|
265
|
-
# - Changed observance from Mid-Autumn to the following day.
|
|
266
|
-
# - Adds Macao S.A.R. Establishment Day as a Mandatory Holiday.
|
|
267
|
-
if self._year <= 1999:
|
|
268
|
-
# Day of Portugal, Camões, and the Portuguese Communities.
|
|
269
|
-
self._add_holiday_jun_10(tr("葡國日、賈梅士日暨葡僑日"))
|
|
270
|
-
|
|
271
|
-
# Mid-Autumn Festival.
|
|
272
|
-
self._add_mid_autumn_festival(tr("中秋節"))
|
|
273
|
-
|
|
274
|
-
else:
|
|
275
|
-
# The Day following Mid-Autumn Festival.
|
|
276
|
-
self._add_mid_autumn_festival_day_two(tr("中秋節翌日"))
|
|
277
|
-
|
|
278
|
-
# Macao S.A.R. Establishment Day.
|
|
279
|
-
self._add_holiday_dec_20(tr("澳門特別行政區成立紀念日"))
|
|
280
|
-
|
|
281
283
|
def _populate_government_holidays(self):
|
|
282
284
|
# While Cross-Checking References are available for from 2005-2025,
|
|
283
285
|
# SUN in-lieus starts in 2011; SAT-SUN in-lieus starts in 2012.
|
|
@@ -378,7 +380,7 @@ class Macau(
|
|
|
378
380
|
)
|
|
379
381
|
self._populate_observed(dts_observed, multiple=True)
|
|
380
382
|
|
|
381
|
-
def
|
|
383
|
+
def _populate_subdiv_i_optional_holidays(self):
|
|
382
384
|
# Decreto-Lei n.º 15/93/M - Moved Day of the Municipality of Ilhas from JUL 13 to NOV 30.
|
|
383
385
|
# Regulamento Administrativo n.º 4/1999 - Removed as a Public Holiday.
|
|
384
386
|
if self._year <= 1999:
|
|
@@ -389,7 +391,7 @@ class Macau(
|
|
|
389
391
|
else:
|
|
390
392
|
self._add_holiday_jul_13(name)
|
|
391
393
|
|
|
392
|
-
def
|
|
394
|
+
def _populate_subdiv_m_optional_holidays(self):
|
|
393
395
|
# Regulamento Administrativo n.º 4/1999 - Removed Macau City Day as a Public Holiday.
|
|
394
396
|
if self._year <= 1999:
|
|
395
397
|
# Macau City Day.
|
|
@@ -407,10 +409,10 @@ class MAC(Macau):
|
|
|
407
409
|
class MacauStaticHolidays:
|
|
408
410
|
"""Macau special holidays.
|
|
409
411
|
|
|
410
|
-
Special
|
|
412
|
+
Special General and Government Holidays:
|
|
411
413
|
* <https://web.archive.org/web/20240421052702/https://www.io.gov.mo/pt/legis/rec/111020>
|
|
412
414
|
|
|
413
|
-
Special Mandatory Holidays:
|
|
415
|
+
Special Mandatory (Statutory) Holidays:
|
|
414
416
|
* <https://web.archive.org/web/20250421090753/https://www.dsal.gov.mo/pt/standard/holiday_table.html>
|
|
415
417
|
|
|
416
418
|
Cross-Checking:
|
|
@@ -457,10 +459,10 @@ class MacauStaticHolidays:
|
|
|
457
459
|
2014: (OCT, 3, name_double_ninth_festival_national_day_2_overlap),
|
|
458
460
|
2020: (OCT, 5, name_mid_autumn_festival_day_2_national_day_2_overlap),
|
|
459
461
|
}
|
|
460
|
-
|
|
462
|
+
special_public_holidays = {
|
|
461
463
|
2015: (SEP, 3, name_70th_war_of_resistance),
|
|
462
464
|
}
|
|
463
|
-
|
|
465
|
+
special_optional_holidays = {
|
|
464
466
|
1998: (
|
|
465
467
|
(DEC, 23, name_fullday),
|
|
466
468
|
(DEC, 31, name_halfday),
|