holidays 0.68__py3-none-any.whl → 0.69__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 (92) hide show
  1. holidays/calendars/__init__.py +1 -0
  2. holidays/calendars/balinese_saka.py +112 -0
  3. holidays/calendars/hindu.py +865 -1
  4. holidays/constants.py +1 -0
  5. holidays/countries/__init__.py +1 -0
  6. holidays/countries/afghanistan.py +8 -2
  7. holidays/countries/albania.py +8 -2
  8. holidays/countries/algeria.py +6 -2
  9. holidays/countries/american_samoa.py +6 -2
  10. holidays/countries/azerbaijan.py +8 -2
  11. holidays/countries/bahrain.py +8 -2
  12. holidays/countries/bosnia_and_herzegovina.py +8 -2
  13. holidays/countries/brunei.py +8 -2
  14. holidays/countries/burkina_faso.py +8 -2
  15. holidays/countries/burundi.py +6 -2
  16. holidays/countries/cameroon.py +8 -2
  17. holidays/countries/chad.py +8 -2
  18. holidays/countries/djibouti.py +6 -2
  19. holidays/countries/egypt.py +6 -2
  20. holidays/countries/ethiopia.py +8 -2
  21. holidays/countries/gabon.py +8 -2
  22. holidays/countries/ghana.py +6 -2
  23. holidays/countries/guam.py +6 -2
  24. holidays/countries/hongkong.py +38 -52
  25. holidays/countries/india.py +482 -166
  26. holidays/countries/indonesia.py +14 -58
  27. holidays/countries/iran.py +8 -2
  28. holidays/countries/jordan.py +6 -2
  29. holidays/countries/kazakhstan.py +8 -2
  30. holidays/countries/kenya.py +8 -2
  31. holidays/countries/kuwait.py +6 -2
  32. holidays/countries/kyrgyzstan.py +6 -2
  33. holidays/countries/macau.py +474 -0
  34. holidays/countries/malaysia.py +9 -3
  35. holidays/countries/maldives.py +6 -2
  36. holidays/countries/mauritania.py +6 -2
  37. holidays/countries/montenegro.py +8 -2
  38. holidays/countries/morocco.py +6 -2
  39. holidays/countries/nigeria.py +6 -2
  40. holidays/countries/north_macedonia.py +6 -2
  41. holidays/countries/northern_mariana_islands.py +6 -2
  42. holidays/countries/pakistan.py +8 -2
  43. holidays/countries/philippines.py +13 -3
  44. holidays/countries/poland.py +1 -1
  45. holidays/countries/puerto_rico.py +6 -2
  46. holidays/countries/saudi_arabia.py +6 -2
  47. holidays/countries/singapore.py +7 -2
  48. holidays/countries/spain.py +8 -2
  49. holidays/countries/sri_lanka.py +8 -2
  50. holidays/countries/taiwan.py +226 -29
  51. holidays/countries/tanzania.py +8 -2
  52. holidays/countries/timor_leste.py +21 -2
  53. holidays/countries/tunisia.py +6 -2
  54. holidays/countries/turkey.py +8 -2
  55. holidays/countries/united_arab_emirates.py +8 -2
  56. holidays/countries/united_states.py +84 -35
  57. holidays/countries/united_states_minor_outlying_islands.py +6 -2
  58. holidays/countries/united_states_virgin_islands.py +6 -2
  59. holidays/countries/uzbekistan.py +8 -2
  60. holidays/groups/__init__.py +1 -0
  61. holidays/groups/balinese_saka.py +45 -0
  62. holidays/groups/chinese.py +68 -3
  63. holidays/groups/hindu.py +255 -0
  64. holidays/groups/islamic.py +5 -2
  65. holidays/holiday_base.py +44 -29
  66. holidays/locale/de/LC_MESSAGES/PL.mo +0 -0
  67. holidays/locale/en_HK/LC_MESSAGES/HK.mo +0 -0
  68. holidays/locale/en_IN/LC_MESSAGES/IN.mo +0 -0
  69. holidays/locale/en_MO/LC_MESSAGES/MO.mo +0 -0
  70. holidays/locale/en_US/LC_MESSAGES/HK.mo +0 -0
  71. holidays/locale/en_US/LC_MESSAGES/IN.mo +0 -0
  72. holidays/locale/en_US/LC_MESSAGES/MO.mo +0 -0
  73. holidays/locale/en_US/LC_MESSAGES/TW.mo +0 -0
  74. holidays/locale/hi/LC_MESSAGES/IN.mo +0 -0
  75. holidays/locale/pt_MO/LC_MESSAGES/MO.mo +0 -0
  76. holidays/locale/th/LC_MESSAGES/HK.mo +0 -0
  77. holidays/locale/th/LC_MESSAGES/MO.mo +0 -0
  78. holidays/locale/th/LC_MESSAGES/TW.mo +0 -0
  79. holidays/locale/zh_CN/LC_MESSAGES/HK.mo +0 -0
  80. holidays/locale/zh_CN/LC_MESSAGES/MO.mo +0 -0
  81. holidays/locale/zh_CN/LC_MESSAGES/TW.mo +0 -0
  82. holidays/locale/zh_HK/LC_MESSAGES/HK.mo +0 -0
  83. holidays/locale/zh_MO/LC_MESSAGES/MO.mo +0 -0
  84. holidays/locale/zh_TW/LC_MESSAGES/TW.mo +0 -0
  85. holidays/registry.py +1 -0
  86. holidays/version.py +1 -1
  87. {holidays-0.68.dist-info → holidays-0.69.dist-info}/AUTHORS +1 -0
  88. {holidays-0.68.dist-info → holidays-0.69.dist-info}/METADATA +20 -15
  89. {holidays-0.68.dist-info → holidays-0.69.dist-info}/RECORD +92 -79
  90. {holidays-0.68.dist-info → holidays-0.69.dist-info}/WHEEL +1 -1
  91. {holidays-0.68.dist-info → holidays-0.69.dist-info}/LICENSE +0 -0
  92. {holidays-0.68.dist-info → holidays-0.69.dist-info}/top_level.txt +0 -0
@@ -20,6 +20,7 @@ from holidays.calendars import (
20
20
  from holidays.calendars.gregorian import JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC
21
21
  from holidays.constants import GOVERNMENT, PUBLIC
22
22
  from holidays.groups import (
23
+ BalineseSakaCalendarHolidays,
23
24
  BuddhistCalendarHolidays,
24
25
  ChineseCalendarHolidays,
25
26
  ChristianHolidays,
@@ -32,6 +33,7 @@ from holidays.observed_holiday_base import ObservedHolidayBase
32
33
 
33
34
  class Indonesia(
34
35
  ObservedHolidayBase,
36
+ BalineseSakaCalendarHolidays,
35
37
  BuddhistCalendarHolidays,
36
38
  ChineseCalendarHolidays,
37
39
  ChristianHolidays,
@@ -44,10 +46,8 @@ class Indonesia(
44
46
  - https://en.wikipedia.org/wiki/Public_holidays_in_Indonesia
45
47
  - https://id.wikipedia.org/wiki/Hari_libur_di_Indonesia
46
48
  - https://www.liburnasional.com/sejarah/
47
- - https://id.wikipedia.org/wiki/Indonesia_dalam_tahun_1963 (1963-2024)
49
+ - https://id.wikipedia.org/wiki/Indonesia_dalam_tahun_1963 (1963-2025)
48
50
  - https://www.timeanddate.com/holidays/indonesia
49
- - https://en.wikipedia.org/wiki/Nyepi
50
- - https://bali.com/bali/travel-guide/culture/nyepi-balinese-new-year/
51
51
  """
52
52
 
53
53
  country = "ID"
@@ -62,12 +62,19 @@ class Indonesia(
62
62
  supported_categories = (GOVERNMENT, PUBLIC)
63
63
  start_year = 1946
64
64
 
65
- def __init__(self, *args, **kwargs):
65
+ def __init__(self, islamic_show_estimated: bool = True, *args, **kwargs):
66
+ """
67
+ :param islamic_show_estimated:
68
+ Whether to add "estimated" label to Islamic holidays name if holiday date is estimated.
69
+ """
70
+ BalineseSakaCalendarHolidays.__init__(self)
66
71
  BuddhistCalendarHolidays.__init__(self, cls=IndonesiaBuddhistHolidays, show_estimated=True)
67
72
  ChineseCalendarHolidays.__init__(self, cls=IndonesiaChineseHolidays, show_estimated=True)
68
73
  ChristianHolidays.__init__(self)
69
74
  InternationalHolidays.__init__(self)
70
- IslamicHolidays.__init__(self, cls=IndonesiaIslamicHolidays)
75
+ IslamicHolidays.__init__(
76
+ self, cls=IndonesiaIslamicHolidays, show_estimated=islamic_show_estimated
77
+ )
71
78
  StaticHolidays.__init__(self, cls=IndonesiaStaticHolidays)
72
79
  super().__init__(*args, **kwargs)
73
80
 
@@ -148,59 +155,8 @@ class Indonesia(
148
155
 
149
156
  # Keputusan Presiden no 3 tahun 1983. (1983-01-19; Added Nationally)
150
157
  if self._year >= 1983:
151
- dates_obs = {
152
- 1983: (MAR, 15),
153
- 1984: (MAR, 4),
154
- 1985: (MAR, 22),
155
- 1986: (MAR, 12),
156
- 1987: (MAR, 31),
157
- 1988: (MAR, 19),
158
- 1989: (MAR, 9),
159
- 1990: (MAR, 27),
160
- 1991: (MAR, 17),
161
- 1992: (MAR, 5),
162
- 1993: (MAR, 24),
163
- 1994: (MAR, 12),
164
- 1995: (APR, 1),
165
- 1996: (MAR, 21),
166
- 1997: (APR, 9),
167
- 1998: (MAR, 29),
168
- 1999: (MAR, 18),
169
- 2000: (APR, 4),
170
- 2001: (MAR, 25),
171
- 2002: (APR, 13),
172
- 2003: (APR, 2),
173
- 2004: (MAR, 22),
174
- 2005: (MAR, 11),
175
- 2006: (MAR, 30),
176
- 2007: (MAR, 19),
177
- 2008: (MAR, 7),
178
- 2009: (MAR, 26),
179
- 2010: (MAR, 16),
180
- 2011: (MAR, 5),
181
- 2012: (MAR, 23),
182
- 2013: (MAR, 12),
183
- 2014: (MAR, 31),
184
- 2015: (MAR, 21),
185
- 2016: (MAR, 9),
186
- 2017: (MAR, 28),
187
- 2018: (MAR, 17),
188
- 2019: (MAR, 7),
189
- 2020: (MAR, 25),
190
- 2021: (MAR, 14),
191
- 2022: (MAR, 3),
192
- 2023: (MAR, 22),
193
- 2024: (MAR, 11),
194
- 2025: (MAR, 29),
195
- 2026: (MAR, 19),
196
- 2027: (MAR, 8),
197
- 2028: (MAR, 26),
198
- 2029: (MAR, 15),
199
- 2030: (MAR, 5),
200
- }
201
- if self._year in dates_obs:
202
- # Day of Silence.
203
- self._add_holiday(tr("Hari Suci Nyepi"), dates_obs[self._year])
158
+ # Day of Silence.
159
+ self._add_nyepi(tr("Hari Suci Nyepi"))
204
160
 
205
161
  # Vesak Day.
206
162
  self._add_vesak(tr("Hari Raya Waisak"))
@@ -50,8 +50,14 @@ class Iran(HolidayBase, IslamicHolidays, PersianCalendarHolidays):
50
50
  start_year = 1980
51
51
  weekend = {FRI}
52
52
 
53
- def __init__(self, *args, **kwargs):
54
- IslamicHolidays.__init__(self, IranIslamicHolidays)
53
+ def __init__(self, islamic_show_estimated: bool = True, *args, **kwargs):
54
+ """
55
+ :param islamic_show_estimated:
56
+ Whether to add "estimated" label to Islamic holidays name if holiday date is estimated.
57
+ """
58
+ IslamicHolidays.__init__(
59
+ self, cls=IranIslamicHolidays, show_estimated=islamic_show_estimated
60
+ )
55
61
  PersianCalendarHolidays.__init__(self)
56
62
  super().__init__(*args, **kwargs)
57
63
 
@@ -30,10 +30,14 @@ class Jordan(HolidayBase, ChristianHolidays, InternationalHolidays, IslamicHolid
30
30
  estimated_label = tr("(تقدير) %s")
31
31
  supported_languages = ("ar", "en_US")
32
32
 
33
- def __init__(self, *args, **kwargs):
33
+ def __init__(self, islamic_show_estimated: bool = True, *args, **kwargs):
34
+ """
35
+ :param islamic_show_estimated:
36
+ Whether to add "estimated" label to Islamic holidays name if holiday date is estimated.
37
+ """
34
38
  ChristianHolidays.__init__(self)
35
39
  InternationalHolidays.__init__(self)
36
- IslamicHolidays.__init__(self)
40
+ IslamicHolidays.__init__(self, show_estimated=islamic_show_estimated)
37
41
  super().__init__(*args, **kwargs)
38
42
 
39
43
  def _populate_public_holidays(self):
@@ -92,10 +92,16 @@ class Kazakhstan(
92
92
  # Kazakhstan declared its sovereignty on 25 October 1990.
93
93
  start_year = 1991
94
94
 
95
- def __init__(self, *args, **kwargs):
95
+ def __init__(self, islamic_show_estimated: bool = True, *args, **kwargs):
96
+ """
97
+ :param islamic_show_estimated:
98
+ Whether to add "estimated" label to Islamic holidays name if holiday date is estimated.
99
+ """
96
100
  ChristianHolidays.__init__(self, JULIAN_CALENDAR)
97
101
  InternationalHolidays.__init__(self)
98
- IslamicHolidays.__init__(self, KazakhstanIslamicHolidays)
102
+ IslamicHolidays.__init__(
103
+ self, cls=KazakhstanIslamicHolidays, show_estimated=islamic_show_estimated
104
+ )
99
105
  StaticHolidays.__init__(self, KazakhstanStaticHolidays)
100
106
  kwargs.setdefault("observed_rule", SAT_SUN_TO_NEXT_WORKDAY)
101
107
  kwargs.setdefault("observed_since", 2002)
@@ -53,11 +53,17 @@ class Kenya(
53
53
  # Kenya gained independence on December 12, 1963.
54
54
  start_year = 1964
55
55
 
56
- def __init__(self, *args, **kwargs):
56
+ def __init__(self, islamic_show_estimated: bool = True, *args, **kwargs):
57
+ """
58
+ :param islamic_show_estimated:
59
+ Whether to add "estimated" label to Islamic holidays name if holiday date is estimated.
60
+ """
57
61
  ChristianHolidays.__init__(self)
58
62
  HinduCalendarHolidays.__init__(self, cls=KenyaHinduHolidays)
59
63
  InternationalHolidays.__init__(self)
60
- IslamicHolidays.__init__(self, cls=KenyaIslamicHolidays)
64
+ IslamicHolidays.__init__(
65
+ self, cls=KenyaIslamicHolidays, show_estimated=islamic_show_estimated
66
+ )
61
67
  StaticHolidays.__init__(self, cls=KenyaStaticHolidays)
62
68
  kwargs.setdefault("observed_rule", SUN_TO_NEXT_WORKDAY)
63
69
  kwargs.setdefault("observed_since", 1985)
@@ -31,9 +31,13 @@ class Kuwait(HolidayBase, InternationalHolidays, IslamicHolidays):
31
31
  estimated_label = tr("(تقدير) %s")
32
32
  supported_languages = ("ar", "en_US")
33
33
 
34
- def __init__(self, *args, **kwargs):
34
+ def __init__(self, islamic_show_estimated: bool = True, *args, **kwargs):
35
+ """
36
+ :param islamic_show_estimated:
37
+ Whether to add "estimated" label to Islamic holidays name if holiday date is estimated.
38
+ """
35
39
  InternationalHolidays.__init__(self)
36
- IslamicHolidays.__init__(self)
40
+ IslamicHolidays.__init__(self, show_estimated=islamic_show_estimated)
37
41
  super().__init__(*args, **kwargs)
38
42
 
39
43
  def _populate_public_holidays(self):
@@ -25,10 +25,14 @@ class Kyrgyzstan(HolidayBase, ChristianHolidays, InternationalHolidays, IslamicH
25
25
 
26
26
  country = "KG"
27
27
 
28
- def __init__(self, *args, **kwargs):
28
+ def __init__(self, islamic_show_estimated: bool = True, *args, **kwargs):
29
+ """
30
+ :param islamic_show_estimated:
31
+ Whether to add "estimated" label to Islamic holidays name if holiday date is estimated.
32
+ """
29
33
  ChristianHolidays.__init__(self, JULIAN_CALENDAR)
30
34
  InternationalHolidays.__init__(self)
31
- IslamicHolidays.__init__(self)
35
+ IslamicHolidays.__init__(self, show_estimated=islamic_show_estimated)
32
36
  super().__init__(*args, **kwargs)
33
37
 
34
38
  def _populate_public_holidays(self):