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.
Files changed (161) 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/hindu.py +1 -0
  5. holidays/calendars/islamic.py +16 -4
  6. holidays/calendars/julian.py +14 -0
  7. holidays/calendars/mandaean.py +59 -0
  8. holidays/calendars/tibetan.py +1466 -0
  9. holidays/constants.py +2 -1
  10. holidays/countries/__init__.py +20 -0
  11. holidays/countries/afghanistan.py +6 -39
  12. holidays/countries/albania.py +3 -22
  13. holidays/countries/argentina.py +7 -18
  14. holidays/countries/australia.py +191 -295
  15. holidays/countries/azerbaijan.py +6 -39
  16. holidays/countries/bahrain.py +29 -38
  17. holidays/countries/bhutan.py +194 -0
  18. holidays/countries/bosnia_and_herzegovina.py +7 -28
  19. holidays/countries/brunei.py +7 -117
  20. holidays/countries/burkina_faso.py +9 -15
  21. holidays/countries/burundi.py +95 -40
  22. holidays/countries/cameroon.py +8 -34
  23. holidays/countries/canada.py +9 -1
  24. holidays/countries/central_african_republic.py +3 -16
  25. holidays/countries/chad.py +9 -17
  26. holidays/countries/chile.py +20 -4
  27. holidays/countries/christmas_island.py +10 -15
  28. holidays/countries/cocos_islands.py +5 -24
  29. holidays/countries/comoros.py +121 -0
  30. holidays/countries/egypt.py +5 -37
  31. holidays/countries/eritrea.py +104 -0
  32. holidays/countries/ethiopia.py +18 -47
  33. holidays/countries/fiji.py +1 -2
  34. holidays/countries/gabon.py +5 -23
  35. holidays/countries/gambia.py +168 -0
  36. holidays/countries/georgia.py +9 -7
  37. holidays/countries/guinea.py +5 -27
  38. holidays/countries/guinea_bissau.py +96 -0
  39. holidays/countries/guyana.py +2 -17
  40. holidays/countries/india.py +12 -25
  41. holidays/countries/indonesia.py +6 -158
  42. holidays/countries/iran.py +16 -126
  43. holidays/countries/iraq.py +276 -0
  44. holidays/countries/kazakhstan.py +2 -18
  45. holidays/countries/kenya.py +2 -8
  46. holidays/countries/kiribati.py +124 -0
  47. holidays/countries/kyrgyzstan.py +2 -0
  48. holidays/countries/lebanon.py +5 -87
  49. holidays/countries/liberia.py +80 -0
  50. holidays/countries/libya.py +5 -37
  51. holidays/countries/macau.py +65 -63
  52. holidays/countries/malaysia.py +9 -130
  53. holidays/countries/maldives.py +2 -0
  54. holidays/countries/mali.py +4 -9
  55. holidays/countries/mauritania.py +2 -0
  56. holidays/countries/mauritius.py +1 -2
  57. holidays/countries/montenegro.py +3 -18
  58. holidays/countries/nepal.py +42 -44
  59. holidays/countries/niger.py +14 -74
  60. holidays/countries/nigeria.py +198 -27
  61. holidays/countries/north_macedonia.py +3 -39
  62. holidays/countries/oman.py +6 -28
  63. holidays/countries/pakistan.py +5 -30
  64. holidays/countries/palestine.py +2 -5
  65. holidays/countries/philippines.py +3 -33
  66. holidays/countries/qatar.py +3 -45
  67. holidays/countries/rwanda.py +162 -0
  68. holidays/countries/saudi_arabia.py +3 -0
  69. holidays/countries/senegal.py +6 -16
  70. holidays/countries/sierra_leone.py +5 -21
  71. holidays/countries/singapore.py +7 -59
  72. holidays/countries/somalia.py +79 -0
  73. holidays/countries/south_georgia_and_the_south_sandwich_islands.py +160 -0
  74. holidays/countries/south_sudan.py +133 -0
  75. holidays/countries/spain.py +7 -10
  76. holidays/countries/sri_lanka.py +3 -14
  77. holidays/countries/suriname.py +11 -19
  78. holidays/countries/syrian_arab_republic.py +134 -0
  79. holidays/countries/tajikistan.py +116 -0
  80. holidays/countries/tanzania.py +291 -153
  81. holidays/countries/timor_leste.py +2 -17
  82. holidays/countries/togo.py +4 -29
  83. holidays/countries/trinidad_and_tobago.py +2 -9
  84. holidays/countries/turkey.py +2 -116
  85. holidays/countries/turkmenistan.py +164 -0
  86. holidays/countries/uganda.py +101 -0
  87. holidays/countries/united_arab_emirates.py +5 -29
  88. holidays/countries/uzbekistan.py +3 -31
  89. holidays/countries/yemen.py +8 -52
  90. holidays/financial/__init__.py +5 -0
  91. holidays/financial/national_stock_exchange_of_india.py +169 -0
  92. holidays/groups/__init__.py +2 -0
  93. holidays/groups/christian.py +48 -12
  94. holidays/groups/eastern.py +1 -1
  95. holidays/groups/international.py +17 -1
  96. holidays/groups/islamic.py +1 -1
  97. holidays/groups/mandaean.py +107 -0
  98. holidays/groups/tibetan.py +153 -0
  99. holidays/holiday_base.py +14 -0
  100. holidays/locale/ar/LC_MESSAGES/BH.mo +0 -0
  101. holidays/locale/ar/LC_MESSAGES/IQ.mo +0 -0
  102. holidays/locale/ar/LC_MESSAGES/SY.mo +0 -0
  103. holidays/locale/bs/LC_MESSAGES/BA.mo +0 -0
  104. holidays/locale/en_GM/LC_MESSAGES/GM.mo +0 -0
  105. holidays/locale/en_GS/LC_MESSAGES/GS.mo +0 -0
  106. holidays/locale/en_IN/LC_MESSAGES/XNSE.mo +0 -0
  107. holidays/locale/en_MO/LC_MESSAGES/MO.mo +0 -0
  108. holidays/locale/en_NG/LC_MESSAGES/NG.mo +0 -0
  109. holidays/locale/en_SG/LC_MESSAGES/SG.mo +0 -0
  110. holidays/locale/en_US/LC_MESSAGES/AR.mo +0 -0
  111. holidays/locale/en_US/LC_MESSAGES/BA.mo +0 -0
  112. holidays/locale/en_US/LC_MESSAGES/BH.mo +0 -0
  113. holidays/locale/en_US/LC_MESSAGES/BI.mo +0 -0
  114. holidays/locale/en_US/LC_MESSAGES/CL.mo +0 -0
  115. holidays/locale/en_US/LC_MESSAGES/ES.mo +0 -0
  116. holidays/locale/en_US/LC_MESSAGES/GE.mo +0 -0
  117. holidays/locale/en_US/LC_MESSAGES/GM.mo +0 -0
  118. holidays/locale/en_US/LC_MESSAGES/GS.mo +0 -0
  119. holidays/locale/en_US/LC_MESSAGES/GW.mo +0 -0
  120. holidays/locale/en_US/LC_MESSAGES/IQ.mo +0 -0
  121. holidays/locale/en_US/LC_MESSAGES/MO.mo +0 -0
  122. holidays/locale/en_US/LC_MESSAGES/NG.mo +0 -0
  123. holidays/locale/en_US/LC_MESSAGES/RW.mo +0 -0
  124. holidays/locale/en_US/LC_MESSAGES/SG.mo +0 -0
  125. holidays/locale/en_US/LC_MESSAGES/SY.mo +0 -0
  126. holidays/locale/en_US/LC_MESSAGES/TJ.mo +0 -0
  127. holidays/locale/en_US/LC_MESSAGES/TM.mo +0 -0
  128. holidays/locale/en_US/LC_MESSAGES/TZ.mo +0 -0
  129. holidays/locale/en_US/LC_MESSAGES/XNSE.mo +0 -0
  130. holidays/locale/es/LC_MESSAGES/AR.mo +0 -0
  131. holidays/locale/es/LC_MESSAGES/ES.mo +0 -0
  132. holidays/locale/fr/LC_MESSAGES/RW.mo +0 -0
  133. holidays/locale/fr_BI/LC_MESSAGES/BI.mo +0 -0
  134. holidays/locale/hi/LC_MESSAGES/XNSE.mo +0 -0
  135. holidays/locale/ka/LC_MESSAGES/GE.mo +0 -0
  136. holidays/locale/pt_GW/LC_MESSAGES/GW.mo +0 -0
  137. holidays/locale/pt_MO/LC_MESSAGES/MO.mo +0 -0
  138. holidays/locale/ru/LC_MESSAGES/TJ.mo +0 -0
  139. holidays/locale/ru/LC_MESSAGES/TM.mo +0 -0
  140. holidays/locale/rw/LC_MESSAGES/RW.mo +0 -0
  141. holidays/locale/sr/LC_MESSAGES/BA.mo +0 -0
  142. holidays/locale/sw/LC_MESSAGES/TZ.mo +0 -0
  143. holidays/locale/tg/LC_MESSAGES/TJ.mo +0 -0
  144. holidays/locale/th/LC_MESSAGES/MO.mo +0 -0
  145. holidays/locale/th/LC_MESSAGES/SG.mo +0 -0
  146. holidays/locale/tk/LC_MESSAGES/TM.mo +0 -0
  147. holidays/locale/uk/LC_MESSAGES/AR.mo +0 -0
  148. holidays/locale/uk/LC_MESSAGES/BA.mo +0 -0
  149. holidays/locale/uk/LC_MESSAGES/CL.mo +0 -0
  150. holidays/locale/uk/LC_MESSAGES/ES.mo +0 -0
  151. holidays/locale/uk/LC_MESSAGES/GE.mo +0 -0
  152. holidays/locale/zh_CN/LC_MESSAGES/MO.mo +0 -0
  153. holidays/locale/zh_MO/LC_MESSAGES/MO.mo +0 -0
  154. holidays/registry.py +46 -14
  155. holidays/version.py +1 -1
  156. {holidays-0.78.dist-info → holidays-0.80.dist-info}/METADATA +127 -9
  157. {holidays-0.78.dist-info → holidays-0.80.dist-info}/RECORD +161 -113
  158. {holidays-0.78.dist-info → holidays-0.80.dist-info}/licenses/CONTRIBUTORS +2 -0
  159. {holidays-0.78.dist-info → holidays-0.80.dist-info}/WHEEL +0 -0
  160. {holidays-0.78.dist-info → holidays-0.80.dist-info}/licenses/LICENSE +0 -0
  161. {holidays-0.78.dist-info → holidays-0.80.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,168 @@
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 gettext import gettext as tr
14
+
15
+ from holidays.calendars import _CustomIslamicHolidays
16
+ from holidays.calendars.gregorian import APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC
17
+ from holidays.groups import ChristianHolidays, InternationalHolidays, IslamicHolidays
18
+ from holidays.observed_holiday_base import ObservedHolidayBase, SAT_SUN_TO_NEXT_MON
19
+
20
+
21
+ class Gambia(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, IslamicHolidays):
22
+ """Gambia holidays.
23
+
24
+ References:
25
+ * <https://en.wikipedia.org/wiki/Public_holidays_in_the_Gambia>
26
+ * <https://web.archive.org/web/20230610113952/https://www.visitthegambia.gm/public-holidays/>
27
+ * <https://web.archive.org/web/20250803084358/https://www.op.gov.gm/media-advisory-public-holidays>
28
+ """
29
+
30
+ country = "GM"
31
+ default_language = "en_GM"
32
+ # %s (estimated).
33
+ estimated_label = tr("%s (estimated)")
34
+ # %s (observed).
35
+ observed_label = tr("%s (observed)")
36
+ # %s (observed, estimated).
37
+ observed_estimated_label = tr("%s (observed, estimated)")
38
+ start_year = 1966
39
+ supported_languages = ("en_GM", "en_US")
40
+
41
+ def __init__(self, *args, islamic_show_estimated: bool = True, **kwargs):
42
+ """
43
+ Args:
44
+ islamic_show_estimated:
45
+ Whether to add "estimated" label to Islamic holidays name
46
+ if holiday date is estimated.
47
+ """
48
+ ChristianHolidays.__init__(self)
49
+ InternationalHolidays.__init__(self)
50
+ IslamicHolidays.__init__(
51
+ self, cls=GambiaIslamicHolidays, show_estimated=islamic_show_estimated
52
+ )
53
+ kwargs.setdefault("observed_rule", SAT_SUN_TO_NEXT_MON)
54
+ kwargs.setdefault("observed_since", 2021)
55
+ super().__init__(*args, **kwargs)
56
+
57
+ def _populate_public_holidays(self):
58
+ # New Year's Day.
59
+ self._add_observed(self._add_new_years_day(tr("New Year's Day")))
60
+
61
+ # Independence Day.
62
+ self._add_observed(self._add_holiday_feb_18(tr("Independence Day")))
63
+
64
+ # Good Friday.
65
+ self._add_good_friday(tr("Good Friday"))
66
+
67
+ # Easter Monday.
68
+ self._add_easter_monday(tr("Easter Monday"))
69
+
70
+ # Labor Day.
71
+ self._add_observed(self._add_labor_day(tr("Labour Day")))
72
+
73
+ # Africa Liberation Day.
74
+ self._add_observed(self._add_africa_day(tr("Africa Liberation Day")))
75
+
76
+ # July 22 Revolution Day.
77
+ self._add_observed(self._add_holiday_jul_22(tr("July 22 Revolution Day")))
78
+
79
+ # Assumption Day.
80
+ self._add_observed(self._add_assumption_of_mary_day(tr("Feast of the Assumption")))
81
+
82
+ # Christmas Day.
83
+ self._add_christmas_day(tr("Christmas Day"))
84
+
85
+ # Boxing Day.
86
+ self._add_observed(self._add_christmas_day_two(tr("Boxing Day")))
87
+
88
+ # Ashura.
89
+ for dt in self._add_ashura_day(tr("Yawmul Ashura")):
90
+ self._add_observed(dt)
91
+
92
+ # Prophet's Birthday.
93
+ for dt in self._add_mawlid_day(tr("Mawlid Nabi")):
94
+ self._add_observed(dt)
95
+
96
+ # Laylat al-Qadr.
97
+ for dt in self._add_laylat_al_qadr_day(tr("Lialat-Ul-Qadr")):
98
+ self._add_observed(dt)
99
+
100
+ # Eid al-Fitr.
101
+ name = tr("Koriteh")
102
+ self._add_eid_al_fitr_day(name)
103
+ if self._year >= 2021:
104
+ for dt in self._add_eid_al_fitr_day_two(name):
105
+ self._add_observed(dt)
106
+
107
+ # Eid al-Adha.
108
+ name = tr("Tobaski")
109
+ self._add_eid_al_adha_day(name)
110
+ if self._year >= 2021:
111
+ for dt in self._add_eid_al_adha_day_two(name):
112
+ self._add_observed(dt)
113
+
114
+
115
+ class GM(Gambia):
116
+ pass
117
+
118
+
119
+ class GMB(Gambia):
120
+ pass
121
+
122
+
123
+ class GambiaIslamicHolidays(_CustomIslamicHolidays):
124
+ # https://web.archive.org/web/20240716225449/https://www.timeanddate.com/holidays/gambia/ashura
125
+ ASHURA_DATES_CONFIRMED_YEARS = (2015, 2025)
126
+ ASHURA_DATES = {
127
+ 2015: (OCT, 24),
128
+ 2016: (OCT, 12),
129
+ 2017: (OCT, 1),
130
+ 2019: (SEP, 10),
131
+ 2021: (AUG, 19),
132
+ }
133
+
134
+ # https://web.archive.org/web/20241209170416/https://www.timeanddate.com/holidays/gambia/eid-al-adha
135
+ EID_AL_ADHA_DATES_CONFIRMED_YEARS = (2015, 2025)
136
+ EID_AL_ADHA_DATES = {
137
+ 2015: (SEP, 24),
138
+ 2016: (SEP, 13),
139
+ 2017: (SEP, 2),
140
+ 2018: (AUG, 22),
141
+ }
142
+
143
+ # https://web.archive.org/web/20241204114244/https://www.timeanddate.com/holidays/gambia/eid-al-fitr
144
+ EID_AL_FITR_DATES_CONFIRMED_YEARS = (2015, 2025)
145
+ EID_AL_FITR_DATES = {
146
+ 2015: (JUL, 18),
147
+ 2016: (JUL, 7),
148
+ 2017: (JUN, 26),
149
+ 2020: (MAY, 23),
150
+ }
151
+
152
+ # https://web.archive.org/web/20241209070551/https://www.timeanddate.com/holidays/gambia/laylat-al-qadr
153
+ LAYLAT_AL_QADR_DATES_CONFIRMED_YEARS = (2015, 2025)
154
+ LAYLAT_AL_QADR_DATES = {
155
+ 2016: (JUL, 3),
156
+ 2022: (APR, 29),
157
+ }
158
+
159
+ # https://web.archive.org/web/20240909111449/https://www.timeanddate.com/holidays/gambia/prophet-birthday
160
+ MAWLID_DATES_CONFIRMED_YEARS = (2016, 2024)
161
+ MAWLID_DATES = {
162
+ 2016: (DEC, 12),
163
+ 2017: (DEC, 1),
164
+ 2018: (NOV, 21),
165
+ 2021: (OCT, 19),
166
+ 2023: (SEP, 28),
167
+ 2024: (SEP, 16),
168
+ }
@@ -12,9 +12,8 @@
12
12
 
13
13
  from gettext import gettext as tr
14
14
 
15
- from holidays.calendars.gregorian import MAY
15
+ from holidays.calendars.gregorian import MAY, AUG
16
16
  from holidays.calendars.julian import JULIAN_CALENDAR
17
- from holidays.constants import GOVERNMENT, PUBLIC
18
17
  from holidays.groups import ChristianHolidays, InternationalHolidays, StaticHolidays
19
18
  from holidays.holiday_base import HolidayBase
20
19
 
@@ -29,7 +28,6 @@ class Georgia(HolidayBase, ChristianHolidays, InternationalHolidays, StaticHolid
29
28
  """
30
29
 
31
30
  country = "GE"
32
- supported_categories = (GOVERNMENT, PUBLIC)
33
31
  default_language = "ka"
34
32
  supported_languages = ("en_US", "ka", "uk")
35
33
  start_year = 1991
@@ -109,10 +107,14 @@ class GeorgiaStaticHolidays:
109
107
  """Georgia special holidays.
110
108
 
111
109
  References:
112
- * <https://web.archive.org/web/20240704104728/https://matsne.gov.ge/ka/document/view/6173967>
110
+ * [Decree 167 of 15/05/2024](https://web.archive.org/web/20240620045954/https://www.matsne.gov.ge/ka/document/view/6173967?publication=0)
111
+ * [Decree 381 of 25/08/2025](https://archive.org/details/matsne-6612161-0)
113
112
  """
114
113
 
115
- special_government_holidays = {
116
- # Day of Family Sanctity and Respect for Parents.
117
- 2024: (MAY, 17, tr("ოჯახის სიწმინდისა და მშობლების პატივისცემის დღე")),
114
+ # Public Holiday.
115
+ public_holiday = tr("უქმე დღე")
116
+
117
+ special_public_holidays = {
118
+ 2024: (MAY, 17, public_holiday),
119
+ 2025: (AUG, 29, public_holiday),
118
120
  }
@@ -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, OCT, NOV, DEC
16
+ from holidays.calendars.gregorian import MAR, APR, JUN, JUL, AUG, SEP, NOV, DEC
17
17
  from holidays.groups import ChristianHolidays, InternationalHolidays, IslamicHolidays
18
18
  from holidays.observed_holiday_base import ObservedHolidayBase, SUN_TO_NEXT_MON
19
19
 
@@ -125,58 +125,36 @@ class GIN(Guinea):
125
125
 
126
126
 
127
127
  class GuineaIslamicHolidays(_CustomIslamicHolidays):
128
+ EID_AL_ADHA_DATES_CONFIRMED_YEARS = (2015, 2025)
128
129
  EID_AL_ADHA_DATES = {
129
130
  2015: (SEP, 24),
130
131
  2016: (SEP, 13),
131
132
  2017: (SEP, 2),
132
133
  2018: (AUG, 22),
133
- 2019: (AUG, 11),
134
- 2020: (JUL, 31),
135
- 2021: (JUL, 20),
136
134
  2022: (JUL, 10),
137
- 2023: (JUN, 28),
138
- 2024: (JUN, 16),
139
135
  2025: (JUN, 7),
140
136
  }
141
137
 
138
+ EID_AL_FITR_DATES_CONFIRMED_YEARS = (2015, 2025)
142
139
  EID_AL_FITR_DATES = {
143
140
  2015: (JUL, 18),
144
141
  2016: (JUL, 7),
145
142
  2017: (JUN, 26),
146
- 2018: (JUN, 15),
147
- 2019: (JUN, 4),
148
- 2020: (MAY, 24),
149
- 2021: (MAY, 13),
150
- 2022: (MAY, 2),
151
- 2023: (APR, 21),
152
- 2024: (APR, 10),
153
143
  2025: (MAR, 31),
154
144
  }
155
145
 
146
+ MAWLID_DATES_CONFIRMED_YEARS = (2015, 2025)
156
147
  MAWLID_DATES = {
157
148
  2015: (DEC, 24),
158
149
  2016: (DEC, 12),
159
150
  2017: (DEC, 1),
160
- 2018: (NOV, 20),
161
151
  2019: (NOV, 10),
162
- 2020: (OCT, 29),
163
- 2021: (OCT, 18),
164
- 2022: (OCT, 8),
165
- 2023: (SEP, 27),
166
- 2024: (SEP, 15),
167
152
  2025: (SEP, 5),
168
153
  }
169
154
 
155
+ LAYLAT_AL_QADR_DATES_CONFIRMED_YEARS = (2015, 2025)
170
156
  LAYLAT_AL_QADR_DATES = {
171
- 2015: (JUL, 14),
172
157
  2016: (JUL, 3),
173
- 2017: (JUN, 22),
174
158
  2018: (JUN, 12),
175
- 2019: (JUN, 1),
176
- 2020: (MAY, 20),
177
- 2021: (MAY, 9),
178
159
  2022: (APR, 29),
179
- 2023: (APR, 18),
180
- 2024: (APR, 6),
181
- 2025: (MAR, 27),
182
160
  }
@@ -0,0 +1,96 @@
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 gettext import gettext as tr
14
+
15
+ from holidays.calendars import _CustomIslamicHolidays
16
+ from holidays.groups import ChristianHolidays, InternationalHolidays, IslamicHolidays
17
+ from holidays.holiday_base import HolidayBase
18
+
19
+
20
+ class GuineaBissau(HolidayBase, ChristianHolidays, InternationalHolidays, IslamicHolidays):
21
+ """Guinea-Bissau holidays.
22
+
23
+ References:
24
+ * [Ley núm. 7/2022, de 18 de julio, que aprueba el Código del Trabajo](https://archive.org/details/742984686-co-digo-de-trabalho-lei-no-7-2022)
25
+ """
26
+
27
+ country = "GW"
28
+ default_language = "pt_GW"
29
+ # %s (estimated).
30
+ estimated_label = tr("%s (prevista)")
31
+ supported_languages = ("en_US", "pt_GW")
32
+ start_year = 2023
33
+
34
+ def __init__(self, *args, islamic_show_estimated: bool = True, **kwargs):
35
+ """
36
+ Args:
37
+ islamic_show_estimated:
38
+ Whether to add "estimated" label to Islamic holidays name
39
+ if holiday date is estimated.
40
+ """
41
+ ChristianHolidays.__init__(self)
42
+ InternationalHolidays.__init__(self)
43
+ IslamicHolidays.__init__(
44
+ self, cls=GuineaBissauIslamicHolidays, show_estimated=islamic_show_estimated
45
+ )
46
+ super().__init__(*args, **kwargs)
47
+
48
+ def _populate_public_holidays(self):
49
+ # New Year's Day.
50
+ self._add_new_years_day(tr("Ano Novo"))
51
+
52
+ # National Heroes' Day.
53
+ self._add_holiday_jan_20(tr("Dia dos Heróis Nacionais"))
54
+
55
+ # Day of the Beginning of the Armed Struggle.
56
+ self._add_holiday_jan_23(tr("Dia do Início da Luta Armada"))
57
+
58
+ # International Women's Day.
59
+ self._add_womens_day(tr("Dia Internacional da Mulher"))
60
+
61
+ # Easter Sunday.
62
+ self._add_easter_sunday(tr("Páscoa"))
63
+
64
+ # Worker's Day.
65
+ self._add_labor_day(tr("Dia do Trabalhador"))
66
+
67
+ # Pidjiguiti Day.
68
+ self._add_holiday_aug_3(tr("Dia de Pidjiguiti"))
69
+
70
+ # Independence Day.
71
+ self._add_holiday_sep_24(tr("Dia da Independência"))
72
+
73
+ # Christmas Day.
74
+ self._add_christmas_day(tr("Dia de Natal"))
75
+
76
+ # Eid al-Fitr.
77
+ self._add_eid_al_fitr_day(tr("Korité"))
78
+
79
+ # Eid al-Adha.
80
+ self._add_eid_al_adha_day(tr("Tabaski"))
81
+
82
+
83
+ class GW(GuineaBissau):
84
+ pass
85
+
86
+
87
+ class GNB(GuineaBissau):
88
+ pass
89
+
90
+
91
+ class GuineaBissauIslamicHolidays(_CustomIslamicHolidays):
92
+ # http://web.archive.org/web/20250811201914/https://www.timeanddate.com/holidays/guinea-bissau/eid-al-adha
93
+ EID_AL_ADHA_DATES_CONFIRMED_YEARS = (2023, 2025)
94
+
95
+ # http://web.archive.org/web/20250811202225/https://www.timeanddate.com/holidays/guinea-bissau/eid-al-fitr
96
+ EID_AL_FITR_DATES_CONFIRMED_YEARS = (2023, 2025)
@@ -208,56 +208,41 @@ class GuyanaHinduHolidays(_CustomHinduHolidays):
208
208
 
209
209
  class GuyanaIslamicHolidays(_CustomIslamicHolidays):
210
210
  # https://web.archive.org/web/20250424074512/https://www.timeanddate.com/holidays/guyana/eid-al-adha
211
+ EID_AL_ADHA_DATES_CONFIRMED_YEARS = (2001, 2025)
211
212
  EID_AL_ADHA_DATES = {
212
213
  2001: (MAR, 6),
213
214
  2002: (FEB, 23),
214
215
  2003: (FEB, 12),
215
216
  2004: (FEB, 2),
216
- 2005: (JAN, 21),
217
- 2006: ((JAN, 10), (DEC, 31)),
218
- 2007: (DEC, 20),
219
217
  2008: (DEC, 9),
220
218
  2009: (NOV, 28),
221
219
  2010: (NOV, 17),
222
220
  2011: (NOV, 7),
223
- 2012: (OCT, 26),
224
- 2013: (OCT, 15),
225
221
  2014: (OCT, 5),
226
222
  2015: (SEP, 24),
227
223
  2016: (SEP, 13),
228
224
  2017: (SEP, 2),
229
225
  2018: (AUG, 22),
230
- 2019: (AUG, 11),
231
- 2020: (JUL, 31),
232
226
  2021: (JUL, 21),
233
- 2022: (JUL, 9),
234
227
  2023: (JUN, 29),
235
228
  2024: (JUN, 17),
236
229
  2025: (JUN, 7),
237
230
  }
238
231
 
239
232
  # https://web.archive.org/web/20241006104125/https://www.timeanddate.com/holidays/guyana/prophet-birthday
233
+ MAWLID_DATES_CONFIRMED_YEARS = (2001, 2025)
240
234
  MAWLID_DATES = {
241
- 2001: (JUN, 4),
242
- 2002: (MAY, 24),
243
235
  2003: (MAY, 14),
244
236
  2004: (MAY, 2),
245
- 2005: (APR, 21),
246
237
  2006: (APR, 11),
247
- 2007: (MAR, 31),
248
- 2008: (MAR, 20),
249
- 2009: (MAR, 9),
250
- 2010: (FEB, 26),
251
238
  2011: (FEB, 16),
252
239
  2012: (FEB, 5),
253
- 2013: (JAN, 24),
254
240
  2014: (JAN, 14),
255
241
  2015: ((JAN, 3), (DEC, 24)),
256
242
  2016: (DEC, 12),
257
243
  2017: (DEC, 1),
258
244
  2018: (NOV, 21),
259
245
  2019: (NOV, 10),
260
- 2020: (OCT, 29),
261
246
  2021: (OCT, 19),
262
247
  2022: (OCT, 9),
263
248
  2023: (SEP, 28),
@@ -501,17 +501,20 @@ class India(
501
501
  self._add_holiday_may_9(tr("Rabindra Jayanti"))
502
502
 
503
503
 
504
+ class IN(India):
505
+ pass
506
+
507
+
508
+ class IND(India):
509
+ pass
510
+
511
+
504
512
  class IndiaIslamicHolidays(_CustomIslamicHolidays):
505
- # Muharram / Day of Ashura.
513
+ ASHURA_DATES_CONFIRMED_YEARS = (2001, 2025)
506
514
  ASHURA_DATES = {
507
- 2001: (APR, 4),
508
- 2002: (MAR, 24),
509
515
  2003: (MAR, 14),
510
516
  2004: (MAR, 2),
511
- 2005: (FEB, 19),
512
- 2006: (FEB, 9),
513
517
  2007: (JAN, 30),
514
- 2008: (JAN, 19),
515
518
  2009: ((JAN, 7), (DEC, 28)),
516
519
  2010: (DEC, 17),
517
520
  2011: (DEC, 6),
@@ -531,15 +534,13 @@ class IndiaIslamicHolidays(_CustomIslamicHolidays):
531
534
  2025: (JUL, 6),
532
535
  }
533
536
 
534
- # Bakrid / Eid-al-Adha.
537
+ EID_AL_ADHA_DATES_CONFIRMED_YEARS = (2001, 2025)
535
538
  EID_AL_ADHA_DATES = {
536
539
  2001: (MAR, 6),
537
540
  2002: (FEB, 23),
538
541
  2003: (FEB, 12),
539
542
  2004: (FEB, 2),
540
- 2005: (JAN, 21),
541
543
  2006: ((JAN, 11), (DEC, 31)),
542
- 2007: (DEC, 20),
543
544
  2008: (DEC, 9),
544
545
  2009: (NOV, 28),
545
546
  2010: (NOV, 17),
@@ -560,21 +561,16 @@ class IndiaIslamicHolidays(_CustomIslamicHolidays):
560
561
  2025: (JUN, 7),
561
562
  }
562
563
 
563
- # Id-ul-Fitr / Eid-al-Fitr.
564
+ EID_AL_FITR_DATES_CONFIRMED_YEARS = (2001, 2025)
564
565
  EID_AL_FITR_DATES = {
565
566
  2001: (DEC, 17),
566
567
  2002: (DEC, 6),
567
568
  2003: (NOV, 26),
568
- 2004: (NOV, 14),
569
- 2005: (NOV, 3),
570
569
  2006: (OCT, 24),
571
- 2007: (OCT, 13),
572
570
  2008: (OCT, 2),
573
571
  2009: (SEP, 21),
574
- 2010: (SEP, 10),
575
572
  2011: (AUG, 31),
576
573
  2012: (AUG, 20),
577
- 2013: (AUG, 8),
578
574
  2014: (JUL, 29),
579
575
  2015: (JUL, 18),
580
576
  2016: (JUL, 7),
@@ -589,7 +585,7 @@ class IndiaIslamicHolidays(_CustomIslamicHolidays):
589
585
  2025: (MAR, 31),
590
586
  }
591
587
 
592
- # Milad-un-Nabi / Mawlid.
588
+ MAWLID_DATES_CONFIRMED_YEARS = (2001, 2025)
593
589
  MAWLID_DATES = {
594
590
  2001: (JUN, 5),
595
591
  2002: (MAY, 25),
@@ -599,7 +595,6 @@ class IndiaIslamicHolidays(_CustomIslamicHolidays):
599
595
  2006: (APR, 11),
600
596
  2007: (APR, 1),
601
597
  2008: (MAR, 21),
602
- 2009: (MAR, 9),
603
598
  2010: (FEB, 27),
604
599
  2011: (FEB, 16),
605
600
  2012: (FEB, 5),
@@ -617,11 +612,3 @@ class IndiaIslamicHolidays(_CustomIslamicHolidays):
617
612
  2024: (SEP, 16),
618
613
  2025: (SEP, 5),
619
614
  }
620
-
621
-
622
- class IN(India):
623
- pass
624
-
625
-
626
- class IND(India):
627
- pass