holidays 0.78__py3-none-any.whl → 0.79__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.
Files changed (105) hide show
  1. holidays/calendars/__init__.py +1 -0
  2. holidays/calendars/chinese.py +14 -4
  3. holidays/calendars/ethiopian.py +31 -0
  4. holidays/calendars/islamic.py +16 -4
  5. holidays/calendars/julian.py +14 -0
  6. holidays/calendars/mandaean.py +59 -0
  7. holidays/calendars/tibetan.py +1466 -0
  8. holidays/constants.py +2 -0
  9. holidays/countries/__init__.py +13 -0
  10. holidays/countries/afghanistan.py +6 -39
  11. holidays/countries/albania.py +3 -22
  12. holidays/countries/argentina.py +3 -18
  13. holidays/countries/azerbaijan.py +6 -39
  14. holidays/countries/bahrain.py +29 -38
  15. holidays/countries/bhutan.py +194 -0
  16. holidays/countries/bosnia_and_herzegovina.py +2 -27
  17. holidays/countries/brunei.py +7 -117
  18. holidays/countries/burkina_faso.py +4 -15
  19. holidays/countries/cameroon.py +3 -34
  20. holidays/countries/canada.py +2 -1
  21. holidays/countries/central_african_republic.py +3 -16
  22. holidays/countries/chad.py +4 -17
  23. holidays/countries/chile.py +20 -4
  24. holidays/countries/christmas_island.py +4 -15
  25. holidays/countries/cocos_islands.py +5 -24
  26. holidays/countries/egypt.py +5 -37
  27. holidays/countries/ethiopia.py +18 -47
  28. holidays/countries/fiji.py +1 -2
  29. holidays/countries/gabon.py +3 -23
  30. holidays/countries/gambia.py +168 -0
  31. holidays/countries/guinea.py +5 -27
  32. holidays/countries/guinea_bissau.py +100 -0
  33. holidays/countries/guyana.py +2 -17
  34. holidays/countries/india.py +12 -25
  35. holidays/countries/indonesia.py +6 -158
  36. holidays/countries/iran.py +16 -126
  37. holidays/countries/iraq.py +276 -0
  38. holidays/countries/kazakhstan.py +2 -18
  39. holidays/countries/kenya.py +2 -8
  40. holidays/countries/kiribati.py +124 -0
  41. holidays/countries/lebanon.py +5 -87
  42. holidays/countries/liberia.py +80 -0
  43. holidays/countries/libya.py +5 -37
  44. holidays/countries/malaysia.py +9 -130
  45. holidays/countries/mali.py +4 -9
  46. holidays/countries/mauritius.py +1 -2
  47. holidays/countries/montenegro.py +3 -18
  48. holidays/countries/nepal.py +42 -44
  49. holidays/countries/niger.py +14 -74
  50. holidays/countries/north_macedonia.py +3 -39
  51. holidays/countries/oman.py +6 -28
  52. holidays/countries/pakistan.py +5 -30
  53. holidays/countries/palestine.py +2 -5
  54. holidays/countries/philippines.py +3 -33
  55. holidays/countries/qatar.py +3 -45
  56. holidays/countries/saudi_arabia.py +3 -0
  57. holidays/countries/senegal.py +6 -16
  58. holidays/countries/sierra_leone.py +4 -20
  59. holidays/countries/singapore.py +3 -59
  60. holidays/countries/south_georgia_and_the_south_sandwich_islands.py +160 -0
  61. holidays/countries/spain.py +3 -10
  62. holidays/countries/sri_lanka.py +3 -14
  63. holidays/countries/suriname.py +11 -19
  64. holidays/countries/syrian_arab_republic.py +134 -0
  65. holidays/countries/tanzania.py +3 -9
  66. holidays/countries/timor_leste.py +2 -17
  67. holidays/countries/togo.py +4 -29
  68. holidays/countries/trinidad_and_tobago.py +2 -9
  69. holidays/countries/turkey.py +2 -116
  70. holidays/countries/turkmenistan.py +158 -0
  71. holidays/countries/united_arab_emirates.py +5 -29
  72. holidays/countries/uzbekistan.py +3 -31
  73. holidays/countries/yemen.py +8 -52
  74. holidays/groups/__init__.py +2 -0
  75. holidays/groups/christian.py +48 -12
  76. holidays/groups/international.py +17 -1
  77. holidays/groups/islamic.py +1 -1
  78. holidays/groups/mandaean.py +107 -0
  79. holidays/groups/tibetan.py +153 -0
  80. holidays/holiday_base.py +14 -0
  81. holidays/locale/ar/LC_MESSAGES/BH.mo +0 -0
  82. holidays/locale/ar/LC_MESSAGES/IQ.mo +0 -0
  83. holidays/locale/ar/LC_MESSAGES/SY.mo +0 -0
  84. holidays/locale/en_GM/LC_MESSAGES/GM.mo +0 -0
  85. holidays/locale/en_GS/LC_MESSAGES/GS.mo +0 -0
  86. holidays/locale/en_US/LC_MESSAGES/BH.mo +0 -0
  87. holidays/locale/en_US/LC_MESSAGES/CL.mo +0 -0
  88. holidays/locale/en_US/LC_MESSAGES/GM.mo +0 -0
  89. holidays/locale/en_US/LC_MESSAGES/GS.mo +0 -0
  90. holidays/locale/en_US/LC_MESSAGES/GW.mo +0 -0
  91. holidays/locale/en_US/LC_MESSAGES/IQ.mo +0 -0
  92. holidays/locale/en_US/LC_MESSAGES/SY.mo +0 -0
  93. holidays/locale/en_US/LC_MESSAGES/TM.mo +0 -0
  94. holidays/locale/pt_GW/LC_MESSAGES/GW.mo +0 -0
  95. holidays/locale/ru/LC_MESSAGES/TM.mo +0 -0
  96. holidays/locale/tk/LC_MESSAGES/TM.mo +0 -0
  97. holidays/locale/uk/LC_MESSAGES/CL.mo +0 -0
  98. holidays/registry.py +13 -0
  99. holidays/version.py +1 -1
  100. {holidays-0.78.dist-info → holidays-0.79.dist-info}/METADATA +68 -5
  101. {holidays-0.78.dist-info → holidays-0.79.dist-info}/RECORD +105 -78
  102. {holidays-0.78.dist-info → holidays-0.79.dist-info}/licenses/CONTRIBUTORS +2 -0
  103. {holidays-0.78.dist-info → holidays-0.79.dist-info}/WHEEL +0 -0
  104. {holidays-0.78.dist-info → holidays-0.79.dist-info}/licenses/LICENSE +0 -0
  105. {holidays-0.78.dist-info → holidays-0.79.dist-info}/top_level.txt +0 -0
@@ -15,11 +15,8 @@ from gettext import gettext as tr
15
15
  from holidays.calendars import _CustomIslamicHolidays
16
16
  from holidays.calendars.gregorian import (
17
17
  GREGORIAN_CALENDAR,
18
- JAN,
19
18
  FEB,
20
19
  MAR,
21
- APR,
22
- MAY,
23
20
  JUN,
24
21
  JUL,
25
22
  AUG,
@@ -259,55 +256,33 @@ class BIH(BosniaAndHerzegovina):
259
256
 
260
257
 
261
258
  class BosniaAndHerzegovinaIslamicHolidays(_CustomIslamicHolidays):
259
+ EID_AL_ADHA_DATES_CONFIRMED_YEARS = (2001, 2023)
262
260
  EID_AL_ADHA_DATES = {
263
261
  2001: (MAR, 6),
264
262
  2002: (FEB, 23),
265
263
  2003: (FEB, 12),
266
264
  2004: (FEB, 2),
267
- 2005: (JAN, 21),
268
- 2006: ((JAN, 10), (DEC, 31)),
269
- 2007: (DEC, 20),
270
265
  2008: (DEC, 9),
271
266
  2009: (NOV, 28),
272
267
  2010: (NOV, 17),
273
268
  2011: (NOV, 7),
274
- 2012: (OCT, 26),
275
- 2013: (OCT, 15),
276
- 2014: (OCT, 4),
277
269
  2015: (SEP, 24),
278
270
  2016: (SEP, 13),
279
271
  2017: (SEP, 2),
280
272
  2018: (AUG, 22),
281
- 2019: (AUG, 11),
282
- 2020: (JUL, 31),
283
- 2021: (JUL, 20),
284
- 2022: (JUL, 9),
285
- 2023: (JUN, 28),
286
273
  }
287
274
 
275
+ EID_AL_FITR_DATES_CONFIRMED_YEARS = (2001, 2024)
288
276
  EID_AL_FITR_DATES = {
289
277
  2001: (DEC, 17),
290
278
  2002: (DEC, 6),
291
279
  2003: (NOV, 26),
292
- 2004: (NOV, 14),
293
280
  2005: (NOV, 4),
294
281
  2006: (OCT, 24),
295
- 2007: (OCT, 13),
296
282
  2008: (OCT, 2),
297
283
  2009: (SEP, 21),
298
- 2010: (SEP, 10),
299
284
  2011: (AUG, 31),
300
- 2012: (AUG, 19),
301
- 2013: (AUG, 8),
302
- 2014: (JUL, 28),
303
285
  2015: (JUL, 18),
304
286
  2016: (JUL, 7),
305
287
  2017: (JUN, 26),
306
- 2018: (JUN, 15),
307
- 2019: (JUN, 4),
308
- 2020: (MAY, 24),
309
- 2021: (MAY, 13),
310
- 2022: (MAY, 2),
311
- 2023: (APR, 21),
312
- 2024: (APR, 10),
313
288
  }
@@ -266,219 +266,109 @@ class BRN(Brunei):
266
266
 
267
267
 
268
268
  class BruneiIslamicHolidays(_CustomIslamicHolidays):
269
+ EID_AL_ADHA_DATES_CONFIRMED_YEARS = (1998, 2025)
269
270
  EID_AL_ADHA_DATES = {
270
- 1998: (APR, 7),
271
271
  1999: (MAR, 28),
272
272
  2000: (MAR, 17),
273
273
  2001: (MAR, 6),
274
274
  2002: (FEB, 23),
275
275
  2003: (FEB, 12),
276
276
  2004: (FEB, 2),
277
- 2005: (JAN, 21),
278
277
  2006: ((JAN, 11), (DEC, 31)),
279
- 2007: (DEC, 20),
280
- 2008: (DEC, 8),
281
- 2009: (NOV, 27),
282
- 2010: (NOV, 16),
283
- 2011: (NOV, 6),
284
- 2012: (OCT, 26),
285
- 2013: (OCT, 15),
286
278
  2014: (OCT, 5),
287
279
  2015: (SEP, 24),
288
280
  2016: (SEP, 12),
289
- 2017: (SEP, 1),
290
281
  2018: (AUG, 22),
291
- 2019: (AUG, 11),
292
- 2020: (JUL, 31),
293
- 2021: (JUL, 20),
294
- 2022: (JUL, 9),
295
282
  2023: (JUN, 29),
296
283
  2024: (JUN, 17),
297
284
  2025: (JUN, 7),
298
285
  }
299
286
 
287
+ EID_AL_FITR_DATES_CONFIRMED_YEARS = (1998, 2025)
300
288
  EID_AL_FITR_DATES = {
301
289
  1998: (JAN, 30),
302
290
  1999: (JAN, 19),
303
- 2000: ((JAN, 8), (DEC, 27)),
304
- 2001: (DEC, 16),
305
291
  2002: (DEC, 6),
306
- 2003: (NOV, 25),
307
- 2004: (NOV, 14),
308
292
  2005: (NOV, 4),
309
293
  2006: (OCT, 24),
310
- 2007: (OCT, 13),
311
- 2008: (OCT, 1),
312
- 2009: (SEP, 20),
313
- 2010: (SEP, 10),
314
- 2011: (AUG, 30),
315
- 2012: (AUG, 19),
316
- 2013: (AUG, 8),
317
- 2014: (JUL, 28),
318
- 2015: (JUL, 17),
319
- 2016: (JUL, 6),
320
- 2017: (JUN, 25),
321
- 2018: (JUN, 15),
322
294
  2019: (JUN, 5),
323
- 2020: (MAY, 24),
324
- 2021: (MAY, 13),
325
- 2022: (MAY, 2),
326
295
  2023: (APR, 22),
327
- 2024: (APR, 10),
328
296
  2025: (MAR, 31),
329
297
  }
330
298
 
299
+ HIJRI_NEW_YEAR_DATES_CONFIRMED_YEARS = (1998, 2025)
331
300
  HIJRI_NEW_YEAR_DATES = {
332
301
  1998: (APR, 28),
333
- 1999: (APR, 17),
334
- 2000: (APR, 6),
335
- 2001: (MAR, 26),
336
- 2002: (MAR, 15),
337
- 2003: (MAR, 4),
338
302
  2004: (FEB, 22),
339
- 2005: (FEB, 10),
340
- 2006: (JAN, 31),
341
- 2007: (JAN, 20),
342
- 2008: ((JAN, 10), (DEC, 29)),
343
- 2009: (DEC, 18),
344
- 2010: (DEC, 7),
345
303
  2011: (NOV, 27),
346
- 2012: (NOV, 15),
347
304
  2013: (NOV, 5),
348
- 2014: (OCT, 25),
349
- 2015: (OCT, 14),
350
- 2016: (OCT, 2),
351
305
  2017: (SEP, 22),
352
- 2018: (SEP, 11),
353
306
  2019: (SEP, 1),
354
- 2020: (AUG, 20),
355
307
  2021: (AUG, 10),
356
- 2022: (JUL, 30),
357
- 2023: (JUL, 19),
358
- 2024: (JUL, 7),
359
308
  2025: (JUN, 27),
360
309
  }
361
310
 
311
+ ISRA_AND_MIRAJ_DATES_CONFIRMED_YEARS = (1998, 2025)
362
312
  ISRA_AND_MIRAJ_DATES = {
363
313
  1998: (NOV, 17),
364
314
  1999: (NOV, 6),
365
315
  2000: (OCT, 25),
366
316
  2001: (OCT, 15),
367
- 2002: (OCT, 4),
368
- 2003: (SEP, 24),
369
- 2004: (SEP, 12),
370
- 2005: (SEP, 1),
371
- 2006: (AUG, 21),
372
317
  2007: (AUG, 11),
373
- 2008: (JUL, 30),
374
- 2009: (JUL, 20),
375
318
  2010: (JUL, 10),
376
- 2011: (JUN, 29),
377
- 2012: (JUN, 17),
378
- 2013: (JUN, 6),
379
319
  2014: (MAY, 27),
380
- 2015: (MAY, 16),
381
320
  2016: (MAY, 5),
382
- 2017: (APR, 24),
383
321
  2018: (APR, 14),
384
- 2019: (APR, 3),
385
- 2020: (MAR, 22),
386
- 2021: (MAR, 11),
387
- 2022: (FEB, 28),
388
- 2023: (FEB, 18),
389
- 2024: (FEB, 8),
390
- 2025: (JAN, 27),
391
322
  }
392
323
 
324
+ MAWLID_DATES_CONFIRMED_YEARS = (1998, 2025)
393
325
  MAWLID_DATES = {
394
- 1998: (JUL, 6),
395
- 1999: (JUN, 26),
396
326
  2000: (JUN, 15),
397
- 2001: (JUN, 4),
398
327
  2002: (MAY, 25),
399
328
  2003: (MAY, 14),
400
329
  2004: (MAY, 2),
401
- 2005: (APR, 21),
402
330
  2006: (APR, 11),
403
- 2007: (MAR, 31),
404
- 2008: (MAR, 20),
405
- 2009: (MAR, 9),
406
- 2010: (FEB, 26),
407
- 2011: (FEB, 15),
408
331
  2012: (FEB, 5),
409
- 2013: (JAN, 24),
410
332
  2014: (JAN, 14),
411
333
  2015: ((JAN, 3), (DEC, 24)),
412
334
  2016: (DEC, 12),
413
335
  2017: (DEC, 1),
414
- 2018: (NOV, 20),
415
- 2019: (NOV, 9),
416
- 2020: (OCT, 29),
417
336
  2021: (OCT, 19),
418
- 2022: (OCT, 8),
419
337
  2023: (SEP, 28),
420
338
  2024: (SEP, 16),
421
339
  2025: (SEP, 5),
422
340
  }
423
341
 
342
+ NUZUL_AL_QURAN_DATES_CONFIRMED_YEARS = (1998, 2025)
424
343
  NUZUL_AL_QURAN_DATES = {
425
344
  1998: (JAN, 16),
426
345
  1999: ((JAN, 5), (DEC, 25)),
427
- 2000: (DEC, 13),
428
346
  2001: (DEC, 3),
429
- 2002: (NOV, 22),
430
347
  2003: (NOV, 12),
431
348
  2004: (NOV, 1),
432
349
  2005: (OCT, 21),
433
- 2006: (OCT, 10),
434
- 2007: (SEP, 29),
435
350
  2008: (SEP, 18),
436
- 2009: (SEP, 7),
437
- 2010: (AUG, 27),
438
- 2011: (AUG, 17),
439
351
  2012: (AUG, 6),
440
352
  2013: (JUL, 26),
441
353
  2014: (JUL, 15),
442
- 2015: (JUL, 4),
443
- 2016: (JUN, 22),
444
- 2017: (JUN, 12),
445
354
  2018: (JUN, 2),
446
- 2019: (MAY, 22),
447
- 2020: (MAY, 10),
448
- 2021: (APR, 29),
449
355
  2022: (APR, 19),
450
- 2023: (APR, 8),
451
356
  2024: (MAR, 28),
452
357
  2025: (MAR, 18),
453
358
  }
454
359
 
360
+ RAMADAN_BEGINNING_DATES_CONFIRMED_YEARS = (1998, 2025)
455
361
  RAMADAN_BEGINNING_DATES = {
456
362
  1998: (DEC, 20),
457
- 1999: (DEC, 9),
458
- 2000: (NOV, 27),
459
363
  2001: (NOV, 17),
460
- 2002: (NOV, 6),
461
364
  2003: (OCT, 27),
462
365
  2004: (OCT, 16),
463
366
  2005: (OCT, 5),
464
- 2006: (SEP, 24),
465
- 2007: (SEP, 13),
466
- 2008: (SEP, 1),
467
- 2009: (AUG, 22),
468
- 2010: (AUG, 11),
469
- 2011: (AUG, 1),
470
367
  2012: (JUL, 21),
471
368
  2013: (JUL, 10),
472
369
  2014: (JUN, 29),
473
- 2015: (JUN, 18),
474
- 2016: (JUN, 6),
475
- 2017: (MAY, 27),
476
370
  2018: (MAY, 17),
477
- 2019: (MAY, 6),
478
- 2020: (APR, 24),
479
- 2021: (APR, 13),
480
371
  2022: (APR, 3),
481
- 2023: (MAR, 23),
482
372
  2024: (MAR, 12),
483
373
  2025: (MAR, 2),
484
374
  }
@@ -11,7 +11,7 @@
11
11
  # License: MIT (see LICENSE file)
12
12
 
13
13
  from holidays.calendars import _CustomIslamicHolidays
14
- from holidays.calendars.gregorian import JAN, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC
14
+ from holidays.calendars.gregorian import JAN, JUN, JUL, SEP, OCT, NOV, DEC
15
15
  from holidays.groups import ChristianHolidays, InternationalHolidays, IslamicHolidays
16
16
  from holidays.observed_holiday_base import ObservedHolidayBase, SUN_TO_NEXT_MON
17
17
 
@@ -104,33 +104,23 @@ class BFA(BurkinaFaso):
104
104
 
105
105
 
106
106
  class BurkinaFasoIslamicHolidays(_CustomIslamicHolidays):
107
+ EID_AL_ADHA_DATES_CONFIRMED_YEARS = (2014, 2023)
107
108
  EID_AL_ADHA_DATES = {
108
109
  2014: (OCT, 5),
109
110
  2015: (SEP, 24),
110
111
  2016: (SEP, 13),
111
112
  2017: (SEP, 2),
112
- 2018: (AUG, 21),
113
- 2019: (AUG, 11),
114
- 2020: (JUL, 31),
115
- 2021: (JUL, 20),
116
- 2022: (JUL, 9),
117
- 2023: (JUN, 28),
118
113
  }
119
114
 
115
+ EID_AL_FITR_DATES_CONFIRMED_YEARS = (2014, 2024)
120
116
  EID_AL_FITR_DATES = {
121
117
  2014: (JUL, 29),
122
118
  2015: (JUL, 18),
123
119
  2016: (JUL, 7),
124
120
  2017: (JUN, 26),
125
- 2018: (JUN, 15),
126
- 2019: (JUN, 4),
127
- 2020: (MAY, 24),
128
- 2021: (MAY, 13),
129
- 2022: (MAY, 2),
130
- 2023: (APR, 21),
131
- 2024: (APR, 10),
132
121
  }
133
122
 
123
+ MAWLID_DATES_CONFIRMED_YEARS = (2014, 2022)
134
124
  MAWLID_DATES = {
135
125
  2014: (JAN, 14),
136
126
  2015: ((JAN, 3), (DEC, 24)),
@@ -138,7 +128,6 @@ class BurkinaFasoIslamicHolidays(_CustomIslamicHolidays):
138
128
  2017: (DEC, 1),
139
129
  2018: (NOV, 21),
140
130
  2019: (NOV, 10),
141
- 2020: (OCT, 29),
142
131
  2021: (OCT, 19),
143
132
  2022: (OCT, 9),
144
133
  }
@@ -104,82 +104,51 @@ class CMR(Cameroon):
104
104
 
105
105
 
106
106
  class CameroonIslamicHolidays(_CustomIslamicHolidays):
107
+ EID_AL_ADHA_DATES_CONFIRMED_YEARS = (2001, 2023)
107
108
  EID_AL_ADHA_DATES = {
108
109
  2001: (MAR, 6),
109
110
  2002: (FEB, 23),
110
111
  2003: (FEB, 12),
111
112
  2004: (FEB, 2),
112
- 2005: (JAN, 21),
113
- 2006: ((JAN, 10), (DEC, 31)),
114
- 2007: (DEC, 20),
115
113
  2008: (DEC, 9),
116
114
  2009: (NOV, 28),
117
115
  2010: (NOV, 17),
118
116
  2011: (NOV, 7),
119
- 2012: (OCT, 26),
120
- 2013: (OCT, 15),
121
117
  2014: (OCT, 5),
122
118
  2015: (SEP, 24),
123
119
  2016: (SEP, 13),
124
120
  2017: (SEP, 2),
125
- 2018: (AUG, 21),
126
- 2019: (AUG, 11),
127
- 2020: (JUL, 31),
128
- 2021: (JUL, 20),
129
- 2022: (JUL, 9),
130
- 2023: (JUN, 28),
131
121
  }
132
122
 
123
+ EID_AL_FITR_DATES_CONFIRMED_YEARS = (2001, 2024)
133
124
  EID_AL_FITR_DATES = {
134
125
  2001: (DEC, 17),
135
126
  2002: (DEC, 6),
136
127
  2003: (NOV, 26),
137
- 2004: (NOV, 14),
138
128
  2005: (NOV, 4),
139
129
  2006: (OCT, 24),
140
- 2007: (OCT, 13),
141
130
  2008: (OCT, 2),
142
131
  2009: (SEP, 21),
143
- 2010: (SEP, 10),
144
132
  2011: (AUG, 31),
145
- 2012: (AUG, 19),
146
- 2013: (AUG, 8),
147
- 2014: (JUL, 28),
148
133
  2015: (JUL, 18),
149
134
  2016: (JUL, 7),
150
135
  2017: (JUN, 26),
151
- 2018: (JUN, 15),
152
- 2019: (JUN, 4),
153
- 2020: (MAY, 24),
154
- 2021: (MAY, 13),
155
- 2022: (MAY, 2),
156
- 2023: (APR, 21),
157
- 2024: (APR, 10),
158
136
  }
159
137
 
138
+ MAWLID_DATES_CONFIRMED_YEARS = (2001, 2022)
160
139
  MAWLID_DATES = {
161
- 2001: (JUN, 4),
162
- 2002: (MAY, 24),
163
140
  2003: (MAY, 14),
164
141
  2004: (MAY, 2),
165
- 2005: (APR, 21),
166
142
  2006: (APR, 11),
167
- 2007: (MAR, 31),
168
- 2008: (MAR, 20),
169
- 2009: (MAR, 9),
170
- 2010: (FEB, 26),
171
143
  2011: (FEB, 16),
172
144
  2012: (FEB, 5),
173
- 2013: (JAN, 24),
174
145
  2014: (JAN, 14),
175
146
  2015: ((JAN, 3), (DEC, 24)),
176
147
  2016: (DEC, 12),
177
148
  2017: (DEC, 1),
178
149
  2018: (NOV, 21),
179
150
  2019: (NOV, 10),
180
- 2020: (OCT, 29),
181
151
  2021: (OCT, 19),
182
- 2022: (OCT, 8),
183
152
  }
184
153
 
185
154
 
@@ -45,6 +45,7 @@ class Canada(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stat
45
45
  * <https://web.archive.org/web/20250428153936/https://www.thecanadianencyclopedia.ca/en/article/thanksgiving-day>
46
46
  * <https://web.archive.org/web/20250428154427/https://recherche-collection-search.bac-lac.gc.ca/eng/home/record?idnumber=9326&app=diawlmking&ecopy=80003QJW>
47
47
  * <https://web.archive.org/web/20240915001506/https://www.britannica.com/topic/Victoria-Day>
48
+ * [NT National Aboriginal Day](https://web.archive.org/web/20160623071755/http://www.daair.gov.nt.ca/_live/pages/wpPages/National_Aboriginal_Day.aspx)
48
49
  """
49
50
 
50
51
  country = "CA"
@@ -370,7 +371,7 @@ class Canada(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stat
370
371
  def _populate_subdiv_nt_public_holidays(self):
371
372
  self._add_victoria_day()
372
373
 
373
- if self._year >= 1996:
374
+ if self._year >= 2001:
374
375
  # National Aboriginal Day.
375
376
  self._add_holiday_jun_21(tr("National Aboriginal Day"))
376
377
 
@@ -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 MAR, APR, MAY, JUN, JUL, AUG, SEP
16
+ from holidays.calendars.gregorian import JUN, JUL, SEP
17
17
  from holidays.groups import ChristianHolidays, InternationalHolidays, IslamicHolidays
18
18
  from holidays.holiday_base import HolidayBase
19
19
 
@@ -114,30 +114,17 @@ class CAF(CentralAfricanRepublic):
114
114
 
115
115
 
116
116
  class CentralAfricanRepublicIslamicHolidays(_CustomIslamicHolidays):
117
+ EID_AL_ADHA_DATES_CONFIRMED_YEARS = (2015, 2025)
117
118
  EID_AL_ADHA_DATES = {
118
119
  2015: (SEP, 24),
119
120
  2016: (SEP, 13),
120
121
  2017: (SEP, 2),
121
- 2018: (AUG, 21),
122
- 2019: (AUG, 11),
123
- 2020: (JUL, 31),
124
- 2021: (JUL, 20),
125
- 2022: (JUL, 9),
126
- 2023: (JUN, 28),
127
- 2024: (JUN, 16),
128
122
  2025: (JUN, 7),
129
123
  }
130
124
 
125
+ EID_AL_FITR_DATES_CONFIRMED_YEARS = (2015, 2025)
131
126
  EID_AL_FITR_DATES = {
132
127
  2015: (JUL, 18),
133
128
  2016: (JUL, 7),
134
129
  2017: (JUN, 26),
135
- 2018: (JUN, 15),
136
- 2019: (JUN, 4),
137
- 2020: (MAY, 24),
138
- 2021: (MAY, 13),
139
- 2022: (MAY, 2),
140
- 2023: (APR, 21),
141
- 2024: (APR, 10),
142
- 2025: (MAR, 30),
143
130
  }
@@ -11,7 +11,7 @@
11
11
  # License: MIT (see LICENSE file)
12
12
 
13
13
  from holidays.calendars import _CustomIslamicHolidays
14
- from holidays.calendars.gregorian import JAN, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC
14
+ from holidays.calendars.gregorian import JAN, APR, JUN, JUL, AUG, SEP, NOV, DEC
15
15
  from holidays.groups import (
16
16
  ChristianHolidays,
17
17
  InternationalHolidays,
@@ -100,40 +100,27 @@ class TCD(Chad):
100
100
 
101
101
 
102
102
  class ChadIslamicHolidays(_CustomIslamicHolidays):
103
+ EID_AL_ADHA_DATES_CONFIRMED_YEARS = (2015, 2023)
103
104
  EID_AL_ADHA_DATES = {
104
105
  2015: (SEP, 24),
105
106
  2016: (SEP, 13),
106
107
  2017: (SEP, 2),
107
108
  2018: (AUG, 22),
108
- 2019: (AUG, 11),
109
- 2020: (JUL, 31),
110
- 2021: (JUL, 20),
111
- 2022: (JUL, 9),
112
- 2023: (JUN, 28),
113
109
  }
114
110
 
111
+ EID_AL_FITR_DATES_CONFIRMED_YEARS = (2015, 2024)
115
112
  EID_AL_FITR_DATES = {
116
113
  2015: (JUL, 18),
117
114
  2016: (JUL, 7),
118
115
  2017: (JUN, 26),
119
- 2018: (JUN, 15),
120
- 2019: (JUN, 4),
121
- 2020: (MAY, 24),
122
- 2021: (MAY, 13),
123
- 2022: (MAY, 2),
124
- 2023: (APR, 21),
125
- 2024: (APR, 10),
126
116
  }
127
117
 
118
+ MAWLID_DATES_CONFIRMED_YEARS = (2015, 2022)
128
119
  MAWLID_DATES = {
129
120
  2015: ((JAN, 3), (DEC, 24)),
130
121
  2016: (DEC, 12),
131
122
  2017: (DEC, 1),
132
123
  2018: (NOV, 21),
133
- 2019: (NOV, 9),
134
- 2020: (OCT, 29),
135
- 2021: (OCT, 18),
136
- 2022: (OCT, 8),
137
124
  }
138
125
 
139
126
 
@@ -12,7 +12,7 @@
12
12
 
13
13
  from gettext import gettext as tr
14
14
 
15
- from holidays.calendars.gregorian import JUN, SEP, DEC
15
+ from holidays.calendars.gregorian import APR, JUN, SEP, DEC
16
16
  from holidays.constants import BANK, PUBLIC
17
17
  from holidays.groups import ChristianHolidays, InternationalHolidays, StaticHolidays
18
18
  from holidays.observed_holiday_base import (
@@ -30,8 +30,8 @@ class Chile(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stati
30
30
  """Chile holidays.
31
31
 
32
32
  References:
33
- * <https://web.archive.org/web/20250418020620/https://www.feriados.cl/>
34
- * [Excellent history of Chile holidays](https://web.archive.org/web/20250124223839/https://www.feriadoschilenos.cl/)
33
+ * <https://web.archive.org/web/20250718012109/https://www.feriados.cl/>
34
+ * [Excellent history of Chile holidays](https://web.archive.org/web/20250712031422/https://www.feriadoschilenos.cl/)
35
35
  * <https://es.wikipedia.org/wiki/Anexo:Días_feriados_en_Chile>
36
36
  * Law 2.977 (established official Chile holidays in its current form)
37
37
  * Law 20.983 (Day after New Year's Day, if it's a Sunday)
@@ -51,11 +51,17 @@ class Chile(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stati
51
51
  * Law 20.299 (National Day of the Evangelical and Protestant Churches)
52
52
  * Law 20.663 (Región de Arica y Parinacota)
53
53
  * Law 20.678 (Región de Ñuble)
54
+ * [Law 17.374 (holiday on census days)](https://web.archive.org/web/20250812022623/https://www.bcn.cl/leychile/navegar?idNorma=28960&idVersion=2002-02-01)
54
55
  * [Law 19.656 (Dec 31, 1999 holiday)](https://web.archive.org/web/20241228005823/https://www.bcn.cl/leychile/navegar?idNorma=149328&idVersion=1999-12-15)
55
56
  * [Law 12.051 (bank holidays Jun 30 and Dec 31)](https://web.archive.org/web/20241227190026/https://www.bcn.cl/leychile/navegar?idNorma=27013&idVersion=1956-07-12)
56
57
  * [Decree-law 1.171 (eliminate Jun 30)](https://web.archive.org/web/20241227191010/https://www.bcn.cl/leychile/navegar?idNorma=6507&idVersion=1975-09-05)
57
58
  * [Law 19.528 (eliminate Dec 31)](https://web.archive.org/web/20241227191452/https://www.bcn.cl/leychile/navegar?idNorma=76630&idVersion=1997-11-04)
58
59
  * [Law 19.559 (restore Dec 31)](https://web.archive.org/web/20241227195811/https://www.bcn.cl/leychile/navegar?idNorma=97758&idVersion=1998-04-16)
60
+ * [Law 19.973 (Sep 17, 2004 holiday)](https://web.archive.org/web/20250812023003/https://www.bcn.cl/leychile/navegar?idLey=19973)
61
+ * [Law 20.450 (Sep 17, 2010 and Sep 20, 2010 holidays)](https://web.archive.org/web/20250812023308/https://www.bcn.cl/leychile/navegar?idLey=20450)
62
+ * [Law 21.521 (eliminate Dec 31 again, after the CMF publishes a specific regulation)](https://web.archive.org/web/20240214154900/https://www.bcn.cl/leychile/navegar?idNorma=1187323&idVersion=2023-02-03)
63
+ * [Norma de Carácter General N° 543 de la CMF](https://web.archive.org/web/20250811111649/https://www.cmfchile.cl/normativa/ncg_543_2025.pdf)
64
+ * [Resolución Exenta N° 7.671 (CMF, 2025-08-01)](https://web.archive.org/web/20250811123908/https://www.cmfchile.cl/sitio/aplic/serdoc/ver_sgd.php?s567=ba5ad42feea3531a678a9db5253a9477VFdwQmVVNVVRVFJOUkZWNlRucEpORTVCUFQwPQ==&secuencia=-1&t=1754086087)
59
65
  """
60
66
 
61
67
  country = "CL"
@@ -237,7 +243,7 @@ class Chile(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stati
237
243
  if 1957 <= self._year <= 1975:
238
244
  self._add_holiday_jun_30(name)
239
245
 
240
- if self._year >= 1956 and self._year != 1997:
246
+ if 1956 <= self._year <= 2024 and self._year != 1997:
241
247
  self._add_holiday_dec_31(name)
242
248
 
243
249
  @property
@@ -262,7 +268,17 @@ class ChileStaticHolidays:
262
268
  # National Holiday.
263
269
  national_holiday = tr("Feriado nacional")
264
270
 
271
+ # National Population and Housing Census.
272
+ national_census = tr("Censo Nacional de Población y Vivienda")
273
+
265
274
  special_public_holidays = {
266
275
  1999: (DEC, 31, national_holiday),
276
+ 2002: (APR, 24, national_census),
277
+ 2004: (SEP, 17, national_holiday),
278
+ 2010: (
279
+ (SEP, 17, national_holiday),
280
+ (SEP, 20, national_holiday),
281
+ ),
282
+ 2017: (APR, 19, national_census),
267
283
  2022: (SEP, 16, national_holiday),
268
284
  }
@@ -13,7 +13,7 @@
13
13
  from gettext import gettext as tr
14
14
 
15
15
  from holidays.calendars import _CustomChineseHolidays, _CustomIslamicHolidays
16
- from holidays.calendars.gregorian import JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC
16
+ from holidays.calendars.gregorian import JAN, FEB, MAR, APR, JUN, JUL, AUG, SEP, OCT, NOV
17
17
  from holidays.groups import (
18
18
  ChineseCalendarHolidays,
19
19
  ChristianHolidays,
@@ -133,6 +133,7 @@ class ChristmasIsland(
133
133
 
134
134
 
135
135
  class ChristmasIslandChineseHolidays(_CustomChineseHolidays):
136
+ LUNAR_NEW_YEAR_DATES_CONFIRMED_YEARS = (2007, 2023)
136
137
  LUNAR_NEW_YEAR_DATES = {
137
138
  2007: (FEB, 19),
138
139
  2009: (JAN, 27),
@@ -142,39 +143,27 @@ class ChristmasIslandChineseHolidays(_CustomChineseHolidays):
142
143
 
143
144
 
144
145
  class ChristmasIslandIslamicHolidays(_CustomIslamicHolidays):
146
+ EID_AL_ADHA_DATES_CONFIRMED_YEARS = ((2007, 2010), (2019, 2025))
145
147
  EID_AL_ADHA_DATES = {
146
- 2007: (DEC, 20),
147
- 2008: (DEC, 8),
148
148
  2009: (NOV, 30),
149
- 2010: (NOV, 16),
150
149
  2013: (OCT, 15),
151
150
  2014: (OCT, 5),
152
151
  2016: (SEP, 13),
153
152
  2017: (SEP, 1),
154
- 2019: (AUG, 11),
155
- 2020: (JUL, 31),
156
- 2021: (JUL, 20),
157
- 2022: (JUL, 9),
158
- 2023: (JUN, 28),
159
153
  2024: (JUN, 17),
160
154
  2025: (JUN, 7),
161
155
  }
162
156
 
157
+ EID_AL_FITR_DATES_CONFIRMED_YEARS = ((2007, 2010), (2019, 2025))
163
158
  EID_AL_FITR_DATES = {
164
159
  2007: (OCT, 15),
165
- 2008: (OCT, 1),
166
160
  2009: (SEP, 21),
167
- 2010: (SEP, 10),
168
161
  2013: (AUG, 8),
169
162
  2014: (JUL, 28),
170
163
  2016: (JUL, 6),
171
164
  2017: (JUN, 24),
172
165
  2019: (JUN, 5),
173
- 2020: (MAY, 24),
174
- 2021: (MAY, 13),
175
- 2022: (MAY, 2),
176
166
  2023: (APR, 22),
177
- 2024: (APR, 10),
178
167
  2025: (MAR, 31),
179
168
  }
180
169