holidays 0.77__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.
- holidays/calendars/__init__.py +1 -0
- holidays/calendars/chinese.py +14 -4
- holidays/calendars/ethiopian.py +31 -0
- holidays/calendars/islamic.py +48 -5
- holidays/calendars/julian.py +14 -0
- holidays/calendars/mandaean.py +59 -0
- holidays/calendars/tibetan.py +1466 -0
- holidays/constants.py +2 -0
- holidays/countries/__init__.py +14 -0
- holidays/countries/afghanistan.py +6 -39
- holidays/countries/albania.py +3 -22
- holidays/countries/argentina.py +3 -18
- holidays/countries/azerbaijan.py +6 -39
- holidays/countries/bahrain.py +29 -38
- holidays/countries/bhutan.py +194 -0
- holidays/countries/bosnia_and_herzegovina.py +2 -27
- holidays/countries/brunei.py +7 -117
- holidays/countries/burkina_faso.py +4 -15
- holidays/countries/cameroon.py +3 -34
- holidays/countries/canada.py +2 -1
- holidays/countries/central_african_republic.py +3 -16
- holidays/countries/chad.py +4 -17
- holidays/countries/chile.py +20 -4
- holidays/countries/christmas_island.py +4 -15
- holidays/countries/cocos_islands.py +5 -24
- holidays/countries/egypt.py +175 -51
- holidays/countries/ethiopia.py +18 -47
- holidays/countries/fiji.py +1 -2
- holidays/countries/gabon.py +3 -23
- holidays/countries/gambia.py +168 -0
- holidays/countries/germany.py +41 -0
- holidays/countries/guinea.py +5 -27
- holidays/countries/guinea_bissau.py +100 -0
- holidays/countries/guyana.py +2 -17
- holidays/countries/india.py +12 -25
- holidays/countries/indonesia.py +11 -160
- 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/lebanon.py +5 -87
- holidays/countries/liberia.py +80 -0
- holidays/countries/libya.py +5 -37
- holidays/countries/luxembourg.py +13 -0
- holidays/countries/malaysia.py +9 -130
- holidays/countries/mali.py +4 -9
- 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/north_macedonia.py +3 -39
- holidays/countries/oman.py +6 -28
- holidays/countries/pakistan.py +12 -35
- holidays/countries/palestine.py +2 -5
- holidays/countries/philippines.py +3 -33
- holidays/countries/pitcairn_islands.py +85 -0
- holidays/countries/qatar.py +3 -45
- holidays/countries/saudi_arabia.py +46 -35
- holidays/countries/senegal.py +6 -16
- holidays/countries/sierra_leone.py +4 -20
- holidays/countries/singapore.py +3 -59
- holidays/countries/south_georgia_and_the_south_sandwich_islands.py +160 -0
- holidays/countries/spain.py +3 -10
- holidays/countries/sri_lanka.py +3 -14
- holidays/countries/suriname.py +11 -19
- holidays/countries/syrian_arab_republic.py +134 -0
- holidays/countries/tanzania.py +3 -9
- 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 +158 -0
- holidays/countries/united_arab_emirates.py +5 -29
- holidays/countries/uzbekistan.py +3 -31
- holidays/countries/yemen.py +8 -52
- holidays/groups/__init__.py +2 -0
- holidays/groups/christian.py +48 -12
- holidays/groups/international.py +17 -1
- holidays/groups/islamic.py +1 -11
- holidays/groups/mandaean.py +107 -0
- holidays/groups/tibetan.py +153 -0
- holidays/holiday_base.py +86 -91
- 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/{ar → ar_EG}/LC_MESSAGES/EG.mo +0 -0
- holidays/locale/de/LC_MESSAGES/DE.mo +0 -0
- holidays/locale/de/LC_MESSAGES/LU.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_US/LC_MESSAGES/BH.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CL.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/DE.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/EG.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/LU.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/SY.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TM.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/EG.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/LU.mo +0 -0
- holidays/locale/lb/LC_MESSAGES/LU.mo +0 -0
- holidays/locale/pt_GW/LC_MESSAGES/GW.mo +0 -0
- holidays/locale/ru/LC_MESSAGES/TM.mo +0 -0
- holidays/locale/th/LC_MESSAGES/DE.mo +0 -0
- holidays/locale/tk/LC_MESSAGES/TM.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/CL.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/DE.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/LU.mo +0 -0
- holidays/registry.py +14 -0
- holidays/utils.py +18 -18
- holidays/version.py +1 -1
- {holidays-0.77.dist-info → holidays-0.79.dist-info}/METADATA +79 -9
- {holidays-0.77.dist-info → holidays-0.79.dist-info}/RECORD +121 -92
- {holidays-0.77.dist-info → holidays-0.79.dist-info}/licenses/CONTRIBUTORS +3 -0
- {holidays-0.77.dist-info → holidays-0.79.dist-info}/WHEEL +0 -0
- {holidays-0.77.dist-info → holidays-0.79.dist-info}/licenses/LICENSE +0 -0
- {holidays-0.77.dist-info → holidays-0.79.dist-info}/top_level.txt +0 -0
holidays/countries/niger.py
CHANGED
|
@@ -156,37 +156,37 @@ class Niger(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Islam
|
|
|
156
156
|
self._add_observed(self._add_all_saints_day(tr("Toussaint")))
|
|
157
157
|
|
|
158
158
|
|
|
159
|
+
class NE(Niger):
|
|
160
|
+
pass
|
|
161
|
+
|
|
162
|
+
|
|
163
|
+
class NER(Niger):
|
|
164
|
+
pass
|
|
165
|
+
|
|
166
|
+
|
|
159
167
|
class NigerIslamicHolidays(_CustomIslamicHolidays):
|
|
168
|
+
EID_AL_ADHA_DATES_CONFIRMED_YEARS = (1998, 2025)
|
|
160
169
|
EID_AL_ADHA_DATES = {
|
|
161
170
|
1998: (APR, 8),
|
|
162
171
|
1999: (MAR, 28),
|
|
163
|
-
2000: (MAR, 16),
|
|
164
172
|
2001: (MAR, 6),
|
|
165
173
|
2002: (FEB, 23),
|
|
166
174
|
2003: (FEB, 12),
|
|
167
175
|
2004: (FEB, 2),
|
|
168
|
-
2005: (JAN, 21),
|
|
169
|
-
2006: ((JAN, 10), (DEC, 31)),
|
|
170
|
-
2007: (DEC, 20),
|
|
171
176
|
2008: (DEC, 9),
|
|
172
177
|
2009: (NOV, 28),
|
|
173
178
|
2010: (NOV, 17),
|
|
174
179
|
2011: (NOV, 7),
|
|
175
|
-
2012: (OCT, 26),
|
|
176
|
-
2013: (OCT, 15),
|
|
177
180
|
2014: (OCT, 5),
|
|
181
|
+
2015: (SEP, 24),
|
|
178
182
|
2016: (SEP, 13),
|
|
179
183
|
2017: (SEP, 2),
|
|
180
184
|
2018: (AUG, 22),
|
|
181
|
-
2019: (AUG, 11),
|
|
182
|
-
2020: (JUL, 31),
|
|
183
|
-
2021: (JUL, 20),
|
|
184
185
|
2022: (JUL, 10),
|
|
185
|
-
2023: (JUN, 28),
|
|
186
|
-
2024: (JUN, 16),
|
|
187
186
|
2025: (JUN, 7),
|
|
188
187
|
}
|
|
189
188
|
|
|
189
|
+
EID_AL_FITR_DATES_CONFIRMED_YEARS = (1998, 2025)
|
|
190
190
|
EID_AL_FITR_DATES = {
|
|
191
191
|
1998: (JAN, 30),
|
|
192
192
|
1999: (JAN, 19),
|
|
@@ -194,127 +194,67 @@ class NigerIslamicHolidays(_CustomIslamicHolidays):
|
|
|
194
194
|
2001: (DEC, 17),
|
|
195
195
|
2002: (DEC, 6),
|
|
196
196
|
2003: (NOV, 26),
|
|
197
|
-
2004: (NOV, 14),
|
|
198
197
|
2005: (NOV, 4),
|
|
199
198
|
2006: (OCT, 24),
|
|
200
|
-
2007: (OCT, 13),
|
|
201
199
|
2008: (OCT, 2),
|
|
202
200
|
2009: (SEP, 21),
|
|
203
|
-
2010: (SEP, 10),
|
|
204
201
|
2011: (AUG, 31),
|
|
205
|
-
2012: (AUG, 19),
|
|
206
|
-
2013: (AUG, 8),
|
|
207
202
|
2014: (JUL, 29),
|
|
208
203
|
2015: (JUL, 18),
|
|
209
204
|
2016: (JUL, 7),
|
|
210
205
|
2017: (JUN, 26),
|
|
211
|
-
2018: (JUN, 15),
|
|
212
|
-
2019: (JUN, 4),
|
|
213
206
|
2020: (MAY, 23),
|
|
214
207
|
2021: (MAY, 12),
|
|
215
208
|
2022: (MAY, 1),
|
|
216
|
-
2023: (APR, 21),
|
|
217
209
|
2024: (APR, 9),
|
|
218
|
-
2025: (MAR, 30),
|
|
219
210
|
}
|
|
220
211
|
|
|
212
|
+
HIJRI_NEW_YEAR_DATES_CONFIRMED_YEARS = (1998, 2025)
|
|
221
213
|
HIJRI_NEW_YEAR_DATES = {
|
|
222
214
|
1998: (APR, 28),
|
|
223
|
-
1999: (APR, 17),
|
|
224
|
-
2000: (APR, 6),
|
|
225
|
-
2001: (MAR, 26),
|
|
226
|
-
2002: (MAR, 15),
|
|
227
215
|
2003: (MAR, 5),
|
|
228
216
|
2004: (FEB, 22),
|
|
229
|
-
2005: (FEB, 10),
|
|
230
|
-
2006: (JAN, 31),
|
|
231
|
-
2007: (JAN, 20),
|
|
232
|
-
2008: ((JAN, 10), (DEC, 29)),
|
|
233
|
-
2009: (DEC, 18),
|
|
234
217
|
2010: (DEC, 8),
|
|
235
218
|
2011: (NOV, 27),
|
|
236
|
-
2012: (NOV, 15),
|
|
237
219
|
2013: (NOV, 5),
|
|
238
|
-
2014: (OCT, 25),
|
|
239
220
|
2015: (OCT, 15),
|
|
240
221
|
2016: (OCT, 3),
|
|
241
222
|
2017: (SEP, 22),
|
|
242
223
|
2018: (SEP, 12),
|
|
243
|
-
2019: (AUG, 31),
|
|
244
224
|
2020: (AUG, 21),
|
|
245
225
|
2021: (AUG, 10),
|
|
246
|
-
2022: (JUL, 30),
|
|
247
|
-
2023: (JUL, 19),
|
|
248
226
|
2024: (JUL, 6),
|
|
249
227
|
2025: (JUN, 27),
|
|
250
228
|
}
|
|
251
229
|
|
|
230
|
+
LAYLAT_AL_QADR_DATES_CONFIRMED_YEARS = (1998, 2025)
|
|
252
231
|
LAYLAT_AL_QADR_DATES = {
|
|
253
232
|
1998: (JAN, 26),
|
|
254
233
|
1999: (JAN, 15),
|
|
255
234
|
2000: ((JAN, 4), (DEC, 24)),
|
|
256
235
|
2001: (DEC, 13),
|
|
257
|
-
2002: (DEC, 2),
|
|
258
236
|
2003: (NOV, 22),
|
|
259
237
|
2004: (NOV, 11),
|
|
260
238
|
2005: (OCT, 31),
|
|
261
|
-
2006: (OCT, 20),
|
|
262
|
-
2007: (OCT, 9),
|
|
263
239
|
2008: (SEP, 28),
|
|
264
|
-
2009: (SEP, 17),
|
|
265
|
-
2010: (SEP, 6),
|
|
266
|
-
2011: (AUG, 27),
|
|
267
|
-
2012: (AUG, 15),
|
|
268
|
-
2013: (AUG, 4),
|
|
269
240
|
2014: (JUL, 25),
|
|
270
|
-
2015: (JUL, 14),
|
|
271
|
-
2016: (JUL, 2),
|
|
272
|
-
2017: (JUN, 22),
|
|
273
|
-
2018: (JUN, 11),
|
|
274
|
-
2019: (JUN, 1),
|
|
275
|
-
2020: (MAY, 20),
|
|
276
|
-
2021: (MAY, 9),
|
|
277
|
-
2022: (APR, 28),
|
|
278
|
-
2023: (APR, 18),
|
|
279
|
-
2024: (APR, 6),
|
|
280
|
-
2025: (MAR, 27),
|
|
281
241
|
}
|
|
282
242
|
|
|
243
|
+
MAWLID_DATES_CONFIRMED_YEARS = (1998, 2025)
|
|
283
244
|
MAWLID_DATES = {
|
|
284
245
|
1998: (JUL, 7),
|
|
285
|
-
1999: (JUN, 26),
|
|
286
246
|
2000: (JUN, 15),
|
|
287
|
-
2001: (JUN, 4),
|
|
288
|
-
2002: (MAY, 24),
|
|
289
247
|
2003: (MAY, 14),
|
|
290
248
|
2004: (MAY, 2),
|
|
291
|
-
2005: (APR, 21),
|
|
292
249
|
2006: (APR, 11),
|
|
293
|
-
2007: (MAR, 31),
|
|
294
|
-
2008: (MAR, 20),
|
|
295
|
-
2009: (MAR, 9),
|
|
296
|
-
2010: (FEB, 26),
|
|
297
250
|
2011: (FEB, 16),
|
|
298
251
|
2012: (FEB, 5),
|
|
299
|
-
2013: (JAN, 24),
|
|
300
252
|
2014: (JAN, 14),
|
|
301
253
|
2015: ((JAN, 3), (DEC, 24)),
|
|
302
254
|
2016: (DEC, 12),
|
|
303
255
|
2017: (DEC, 1),
|
|
304
256
|
2018: (NOV, 21),
|
|
305
257
|
2019: (NOV, 10),
|
|
306
|
-
2020: (OCT, 29),
|
|
307
|
-
2021: (OCT, 18),
|
|
308
|
-
2022: (OCT, 8),
|
|
309
|
-
2023: (SEP, 27),
|
|
310
258
|
2024: (SEP, 16),
|
|
311
259
|
2025: (SEP, 5),
|
|
312
260
|
}
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
class NE(Niger):
|
|
316
|
-
pass
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
class NER(Niger):
|
|
320
|
-
pass
|
|
@@ -13,18 +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
|
|
17
|
-
GREGORIAN_CALENDAR,
|
|
18
|
-
MAR,
|
|
19
|
-
APR,
|
|
20
|
-
MAY,
|
|
21
|
-
JUN,
|
|
22
|
-
JUL,
|
|
23
|
-
AUG,
|
|
24
|
-
SEP,
|
|
25
|
-
OCT,
|
|
26
|
-
NOV,
|
|
27
|
-
)
|
|
16
|
+
from holidays.calendars.gregorian import GREGORIAN_CALENDAR, APR, MAY, JUL, SEP, OCT
|
|
28
17
|
from holidays.calendars.julian import JULIAN_CALENDAR
|
|
29
18
|
from holidays.constants import (
|
|
30
19
|
ALBANIAN,
|
|
@@ -262,42 +251,17 @@ class MKD(NorthMacedonia):
|
|
|
262
251
|
|
|
263
252
|
|
|
264
253
|
class NorthMacedoniaIslamicHolidays(_CustomIslamicHolidays):
|
|
254
|
+
EID_AL_ADHA_DATES_CONFIRMED_YEARS = (2010, 2025)
|
|
265
255
|
EID_AL_ADHA_DATES = {
|
|
266
|
-
2010: (NOV, 16),
|
|
267
|
-
2011: (NOV, 6),
|
|
268
256
|
2012: (OCT, 25),
|
|
269
|
-
2013: (OCT, 15),
|
|
270
|
-
2014: (OCT, 4),
|
|
271
257
|
2015: (SEP, 24),
|
|
272
258
|
2016: (SEP, 12),
|
|
273
|
-
2017: (SEP, 1),
|
|
274
|
-
2018: (AUG, 21),
|
|
275
|
-
2019: (AUG, 11),
|
|
276
|
-
2020: (JUL, 31),
|
|
277
|
-
2021: (JUL, 20),
|
|
278
|
-
2022: (JUL, 9),
|
|
279
|
-
2023: (JUN, 28),
|
|
280
|
-
2024: (JUN, 16),
|
|
281
|
-
2025: (JUN, 6),
|
|
282
259
|
}
|
|
283
260
|
|
|
261
|
+
EID_AL_FITR_DATES_CONFIRMED_YEARS = (2010, 2025)
|
|
284
262
|
EID_AL_FITR_DATES = {
|
|
285
263
|
2010: (SEP, 9),
|
|
286
|
-
2011: (AUG, 30),
|
|
287
|
-
2012: (AUG, 19),
|
|
288
|
-
2013: (AUG, 8),
|
|
289
|
-
2014: (JUL, 28),
|
|
290
|
-
2015: (JUL, 17),
|
|
291
264
|
2016: (JUL, 5),
|
|
292
|
-
2017: (JUN, 25),
|
|
293
|
-
2018: (JUN, 15),
|
|
294
|
-
2019: (JUN, 4),
|
|
295
|
-
2020: (MAY, 24),
|
|
296
|
-
2021: (MAY, 13),
|
|
297
|
-
2022: (MAY, 2),
|
|
298
|
-
2023: (APR, 21),
|
|
299
|
-
2024: (APR, 10),
|
|
300
|
-
2025: (MAR, 30),
|
|
301
265
|
}
|
|
302
266
|
|
|
303
267
|
|
holidays/countries/oman.py
CHANGED
|
@@ -14,17 +14,14 @@ from gettext import gettext as tr
|
|
|
14
14
|
|
|
15
15
|
from holidays.calendars import _CustomIslamicHolidays
|
|
16
16
|
from holidays.calendars.gregorian import (
|
|
17
|
-
JAN,
|
|
18
17
|
FEB,
|
|
19
18
|
MAR,
|
|
20
19
|
APR,
|
|
21
|
-
MAY,
|
|
22
20
|
JUN,
|
|
23
21
|
JUL,
|
|
24
22
|
AUG,
|
|
25
23
|
SEP,
|
|
26
24
|
OCT,
|
|
27
|
-
NOV,
|
|
28
25
|
THU,
|
|
29
26
|
FRI,
|
|
30
27
|
SAT,
|
|
@@ -123,63 +120,44 @@ class OMN(Oman):
|
|
|
123
120
|
|
|
124
121
|
class OmanIslamicHolidays(_CustomIslamicHolidays):
|
|
125
122
|
# https://web.archive.org/web/20240911084650/https://www.timeanddate.com/holidays/oman/muharram-new-year
|
|
123
|
+
HIJRI_NEW_YEAR_DATES_CONFIRMED_YEARS = (2018, 2024)
|
|
126
124
|
HIJRI_NEW_YEAR_DATES = {
|
|
127
|
-
2018: (SEP, 11),
|
|
128
125
|
2019: (SEP, 1),
|
|
129
126
|
2020: (AUG, 21),
|
|
130
127
|
2021: (AUG, 10),
|
|
131
|
-
2022: (JUL, 30),
|
|
132
128
|
2023: (JUL, 20),
|
|
133
|
-
2024: (JUL, 7),
|
|
134
129
|
}
|
|
135
130
|
|
|
136
131
|
# https://web.archive.org/web/20240810230306/https://www.timeanddate.com/holidays/oman/prophet-birthday
|
|
132
|
+
MAWLID_DATES_CONFIRMED_YEARS = (2018, 2024)
|
|
137
133
|
MAWLID_DATES = {
|
|
138
|
-
2018: (NOV, 20),
|
|
139
|
-
2019: (NOV, 9),
|
|
140
|
-
2020: (OCT, 29),
|
|
141
134
|
2021: (OCT, 19),
|
|
142
135
|
2022: (OCT, 9),
|
|
143
136
|
2023: (SEP, 28),
|
|
144
|
-
2024: (SEP, 15),
|
|
145
137
|
}
|
|
146
138
|
|
|
147
139
|
# https://web.archive.org/web/20241231191036/https://www.timeanddate.com/holidays/oman/isra-miraj
|
|
140
|
+
ISRA_AND_MIRAJ_DATES_CONFIRMED_YEARS = (2018, 2025)
|
|
148
141
|
ISRA_AND_MIRAJ_DATES = {
|
|
149
|
-
2018: (APR, 13),
|
|
150
|
-
2019: (APR, 3),
|
|
151
|
-
2020: (MAR, 22),
|
|
152
|
-
2021: (MAR, 11),
|
|
153
142
|
2022: (MAR, 1),
|
|
154
143
|
2023: (FEB, 19),
|
|
155
|
-
2024: (FEB, 8),
|
|
156
|
-
2025: (JAN, 27),
|
|
157
144
|
}
|
|
158
145
|
|
|
159
146
|
# https://web.archive.org/web/20240913230603/https://www.timeanddate.com/holidays/oman/eid-al-adha
|
|
147
|
+
EID_AL_ADHA_DATES_CONFIRMED_YEARS = (2019, 2024)
|
|
160
148
|
EID_AL_ADHA_DATES = {
|
|
161
|
-
2019: (AUG, 11),
|
|
162
|
-
2020: (JUL, 31),
|
|
163
|
-
2021: (JUL, 20),
|
|
164
|
-
2022: (JUL, 9),
|
|
165
|
-
2023: (JUN, 28),
|
|
166
149
|
2024: (JUN, 17),
|
|
167
150
|
}
|
|
168
151
|
|
|
169
152
|
# https://web.archive.org/web/20241231191036/https://www.timeanddate.com/holidays/oman/eid-al-fitr
|
|
153
|
+
EID_AL_FITR_DATES_CONFIRMED_YEARS = (2019, 2025)
|
|
170
154
|
EID_AL_FITR_DATES = {
|
|
171
|
-
2019: (JUN, 4),
|
|
172
|
-
2020: (MAY, 24),
|
|
173
|
-
2021: (MAY, 13),
|
|
174
|
-
2022: (MAY, 2),
|
|
175
155
|
2023: (APR, 22),
|
|
176
|
-
2024: (APR, 10),
|
|
177
156
|
2025: (MAR, 31),
|
|
178
157
|
}
|
|
179
158
|
|
|
180
159
|
# https://web.archive.org/web/20240814104839/https://www.timeanddate.com/holidays/oman/ramadan-begins
|
|
160
|
+
RAMADAN_BEGINNING_DATES_CONFIRMED_YEARS = (2023, 2025)
|
|
181
161
|
RAMADAN_BEGINNING_DATES = {
|
|
182
|
-
2023: (MAR, 23),
|
|
183
162
|
2024: (MAR, 12),
|
|
184
|
-
2025: (MAR, 1),
|
|
185
163
|
}
|
holidays/countries/pakistan.py
CHANGED
|
@@ -32,6 +32,7 @@ class Pakistan(HolidayBase, InternationalHolidays, IslamicHolidays):
|
|
|
32
32
|
default_language = "en_PK"
|
|
33
33
|
# %s (estimated).
|
|
34
34
|
estimated_label = tr("%s (estimated)")
|
|
35
|
+
# Achieved Independence on August 14th, 1947.
|
|
35
36
|
start_year = 1948
|
|
36
37
|
supported_languages = ("en_PK", "en_US", "ur_PK")
|
|
37
38
|
|
|
@@ -105,91 +106,67 @@ class PAK(Pakistan):
|
|
|
105
106
|
|
|
106
107
|
|
|
107
108
|
class PakistanIslamicHolidays(_CustomIslamicHolidays):
|
|
108
|
-
# https://web.archive.org/web/
|
|
109
|
-
|
|
109
|
+
# https://web.archive.org/web/20250724060822/https://www.timeanddate.com/holidays/pakistan/ashura
|
|
110
|
+
ASHURA_DATES_CONFIRMED_YEARS = (2005, 2025)
|
|
110
111
|
ASHURA_DATES = {
|
|
111
112
|
2005: (FEB, 18),
|
|
112
113
|
2006: (FEB, 8),
|
|
113
114
|
2007: (JAN, 28),
|
|
114
115
|
2008: (JAN, 18),
|
|
115
116
|
2009: ((JAN, 6), (DEC, 26)),
|
|
116
|
-
2010: (DEC, 16),
|
|
117
|
-
2011: (DEC, 5),
|
|
118
117
|
2012: (NOV, 23),
|
|
119
|
-
2013: (NOV, 13),
|
|
120
|
-
2014: (NOV, 3),
|
|
121
|
-
2015: (OCT, 23),
|
|
122
|
-
2016: (OCT, 11),
|
|
123
|
-
2017: (SEP, 30),
|
|
124
118
|
2018: (SEP, 21),
|
|
125
|
-
2019: (SEP, 9),
|
|
126
|
-
2020: (AUG, 29),
|
|
127
|
-
2021: (AUG, 18),
|
|
128
119
|
2022: (AUG, 9),
|
|
129
|
-
|
|
130
|
-
2024: (JUL, 16),
|
|
120
|
+
2025: (JUL, 6),
|
|
131
121
|
}
|
|
132
122
|
|
|
133
|
-
# https://web.archive.org/web/
|
|
123
|
+
# https://web.archive.org/web/20250724060629/https://www.timeanddate.com/holidays/pakistan/eid-ul-azha
|
|
124
|
+
EID_AL_ADHA_DATES_CONFIRMED_YEARS = (2005, 2025)
|
|
134
125
|
EID_AL_ADHA_DATES = {
|
|
135
|
-
2005: (JAN, 21),
|
|
136
|
-
2006: ((JAN, 10), (DEC, 31)),
|
|
137
|
-
2007: (DEC, 20),
|
|
138
126
|
2008: (DEC, 9),
|
|
139
127
|
2009: (NOV, 28),
|
|
140
128
|
2010: (NOV, 17),
|
|
141
129
|
2011: (NOV, 7),
|
|
142
|
-
2012: (OCT, 26),
|
|
143
|
-
2013: (OCT, 15),
|
|
144
130
|
2014: (OCT, 6),
|
|
145
131
|
2015: (SEP, 24),
|
|
146
132
|
2016: (SEP, 12),
|
|
147
133
|
2017: (SEP, 2),
|
|
148
134
|
2018: (AUG, 22),
|
|
149
135
|
2019: (AUG, 12),
|
|
150
|
-
2020: (JUL, 31),
|
|
151
136
|
2021: (JUL, 21),
|
|
152
137
|
2022: (JUL, 10),
|
|
153
138
|
2023: (JUN, 29),
|
|
154
139
|
2024: (JUN, 17),
|
|
140
|
+
2025: (JUN, 7),
|
|
155
141
|
}
|
|
156
142
|
|
|
157
|
-
# https://web.archive.org/web/
|
|
143
|
+
# https://web.archive.org/web/20250724060834/https://www.timeanddate.com/holidays/pakistan/eid-ul-fitr-1
|
|
144
|
+
EID_AL_FITR_DATES_CONFIRMED_YEARS = (2005, 2025)
|
|
158
145
|
EID_AL_FITR_DATES = {
|
|
159
146
|
2005: (NOV, 4),
|
|
160
147
|
2006: (OCT, 24),
|
|
161
|
-
2007: (OCT, 13),
|
|
162
148
|
2008: (OCT, 2),
|
|
163
149
|
2009: (SEP, 21),
|
|
164
|
-
2010: (SEP, 10),
|
|
165
150
|
2011: (AUG, 31),
|
|
166
|
-
2012: (AUG, 19),
|
|
167
|
-
2013: (AUG, 8),
|
|
168
151
|
2014: (JUL, 29),
|
|
169
|
-
2015: (JUL, 17),
|
|
170
|
-
2016: (JUL, 6),
|
|
171
152
|
2017: (JUN, 26),
|
|
172
153
|
2018: (JUN, 16),
|
|
173
154
|
2019: (JUN, 5),
|
|
174
|
-
2020: (MAY, 24),
|
|
175
|
-
2021: (MAY, 13),
|
|
176
155
|
2022: (MAY, 3),
|
|
177
156
|
2023: (APR, 22),
|
|
178
|
-
2024: (APR, 10),
|
|
179
157
|
2025: (MAR, 31),
|
|
180
158
|
}
|
|
181
159
|
|
|
182
|
-
# https://web.archive.org/web/
|
|
160
|
+
# https://web.archive.org/web/20250724061027/https://www.timeanddate.com/holidays/pakistan/eid-milad-un-nabi
|
|
161
|
+
|
|
162
|
+
MAWLID_DATES_CONFIRMED_YEARS = (2005, 2024)
|
|
183
163
|
MAWLID_DATES = {
|
|
184
164
|
2005: (APR, 22),
|
|
185
165
|
2006: (APR, 11),
|
|
186
|
-
2007: (MAR, 31),
|
|
187
166
|
2008: (MAR, 21),
|
|
188
|
-
2009: (MAR, 9),
|
|
189
167
|
2010: (MAR, 1),
|
|
190
168
|
2011: (FEB, 17),
|
|
191
169
|
2012: (FEB, 5),
|
|
192
|
-
2013: (JAN, 24),
|
|
193
170
|
2014: (JAN, 14),
|
|
194
171
|
2015: (JAN, 4),
|
|
195
172
|
2016: (DEC, 12),
|
holidays/countries/palestine.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 GREGORIAN_CALENDAR
|
|
16
|
+
from holidays.calendars.gregorian import GREGORIAN_CALENDAR
|
|
17
17
|
from holidays.calendars.julian import JULIAN_CALENDAR
|
|
18
18
|
from holidays.constants import CATHOLIC, ORTHODOX, PUBLIC
|
|
19
19
|
from holidays.groups import ChristianHolidays, InternationalHolidays, IslamicHolidays
|
|
@@ -171,7 +171,4 @@ class PSE(Palestine):
|
|
|
171
171
|
|
|
172
172
|
|
|
173
173
|
class PalestineIslamicHolidays(_CustomIslamicHolidays):
|
|
174
|
-
|
|
175
|
-
MAWLID_DATES = {
|
|
176
|
-
2023: (SEP, 27),
|
|
177
|
-
}
|
|
174
|
+
MAWLID_DATES_CONFIRMED_YEARS = (2020, 2024)
|
|
@@ -201,68 +201,38 @@ class PHL(Philippines):
|
|
|
201
201
|
|
|
202
202
|
|
|
203
203
|
class PhilippinesChineseHolidays(_CustomChineseHolidays):
|
|
204
|
-
|
|
205
|
-
2012: (JAN, 23),
|
|
206
|
-
2013: (FEB, 10),
|
|
207
|
-
2014: (JAN, 31),
|
|
208
|
-
2015: (FEB, 19),
|
|
209
|
-
2016: (FEB, 8),
|
|
210
|
-
2017: (JAN, 28),
|
|
211
|
-
2018: (FEB, 16),
|
|
212
|
-
2019: (FEB, 5),
|
|
213
|
-
2020: (JAN, 25),
|
|
214
|
-
2021: (FEB, 12),
|
|
215
|
-
2022: (FEB, 1),
|
|
216
|
-
2023: (JAN, 22),
|
|
217
|
-
2024: (FEB, 10),
|
|
218
|
-
2025: (JAN, 29),
|
|
219
|
-
}
|
|
204
|
+
LUNAR_NEW_YEAR_DATES_CONFIRMED_YEARS = (2012, 2025)
|
|
220
205
|
|
|
221
206
|
|
|
222
207
|
class PhilippinesIslamicHolidays(_CustomIslamicHolidays):
|
|
208
|
+
EID_AL_ADHA_DATES_CONFIRMED_YEARS = (2010, 2025)
|
|
223
209
|
EID_AL_ADHA_DATES = {
|
|
224
210
|
2010: (NOV, 17),
|
|
225
211
|
2011: (NOV, 7),
|
|
226
|
-
2012: (OCT, 26),
|
|
227
|
-
2013: (OCT, 15),
|
|
228
212
|
2014: (OCT, 6),
|
|
229
213
|
2015: (SEP, 25),
|
|
230
214
|
2016: (SEP, 10),
|
|
231
215
|
2017: (SEP, 2),
|
|
232
|
-
2018: (AUG, 21),
|
|
233
216
|
2019: (AUG, 12),
|
|
234
|
-
2020: (JUL, 31),
|
|
235
|
-
2021: (JUL, 20),
|
|
236
|
-
2022: (JUL, 9),
|
|
237
|
-
2023: (JUN, 28),
|
|
238
217
|
2024: (JUN, 17),
|
|
239
|
-
2025: (JUN, 6),
|
|
240
218
|
}
|
|
241
219
|
|
|
220
|
+
EID_AL_FITR_DATES_CONFIRMED_YEARS = (2002, 2025)
|
|
242
221
|
EID_AL_FITR_DATES = {
|
|
243
222
|
2002: (DEC, 6),
|
|
244
223
|
2003: (NOV, 26),
|
|
245
|
-
2004: (NOV, 14),
|
|
246
224
|
2005: (NOV, 4),
|
|
247
225
|
2006: (OCT, 24),
|
|
248
226
|
2007: (OCT, 12),
|
|
249
|
-
2008: (OCT, 1),
|
|
250
227
|
2009: (SEP, 21),
|
|
251
|
-
2010: (SEP, 10),
|
|
252
|
-
2011: (AUG, 30),
|
|
253
228
|
2012: (AUG, 20),
|
|
254
229
|
2013: (AUG, 9),
|
|
255
230
|
2014: (JUL, 29),
|
|
256
|
-
2015: (JUL, 17),
|
|
257
231
|
2016: (JUL, 7),
|
|
258
232
|
2017: (JUN, 26),
|
|
259
|
-
2018: (JUN, 15),
|
|
260
233
|
2019: (JUN, 5),
|
|
261
234
|
2020: (MAY, 25),
|
|
262
|
-
2021: (MAY, 13),
|
|
263
235
|
2022: (MAY, 3),
|
|
264
|
-
2023: (APR, 21),
|
|
265
|
-
2024: (APR, 10),
|
|
266
236
|
2025: (APR, 1),
|
|
267
237
|
}
|
|
268
238
|
|
|
@@ -0,0 +1,85 @@
|
|
|
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.constants import GOVERNMENT, PUBLIC, WORKDAY
|
|
14
|
+
from holidays.groups import ChristianHolidays, InternationalHolidays
|
|
15
|
+
from holidays.holiday_base import HolidayBase
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class PitcairnIslands(HolidayBase, ChristianHolidays, InternationalHolidays):
|
|
19
|
+
"""Pitcairn Islands holidays.
|
|
20
|
+
|
|
21
|
+
References:
|
|
22
|
+
* <https://en.wikipedia.org/wiki/Public_holidays_in_Pitcairn_Islands>
|
|
23
|
+
* [Public Holidays & Commemoration Days (2016)](https://web.archive.org/web/20161112174923/https://www.government.pn/policies/GPI%20-%20Approved%20Public%20Holidays%20&%20Commemoration%20Days.pdf)
|
|
24
|
+
* [Public Holidays & Commemoration Days (2024)](https://web.archive.org/web/20250517050245/https://static1.squarespace.com/static/6526ff6fef608a3828c13d05/t/6673d53b1c0e2f660cc31848/1718867262145/GPI_Policy_Public_Holidays_&_Commemoration_Days_June_2024.pdf)
|
|
25
|
+
* [The Laws of Pitcairn, Henderson, Ducie and Oeno Islands - Volume I](https://web.archive.org/web/20240418043000/https://static1.squarespace.com/static/6526ff6fef608a3828c13d05/t/65585fca2ce3972fb3bc8da3/1700290563094/Revised+Laws+of+Pitcairn,+Henderson,+Ducie+and+Oeno+Islands,+2017+Rev.+Ed.+-+Volume+1.pdf)
|
|
26
|
+
* [CIA The World Factbook](https://web.archive.org/web/20211217233431/https://www.cia.gov/the-world-factbook/countries/pitcairn-islands/)
|
|
27
|
+
"""
|
|
28
|
+
|
|
29
|
+
country = "PN"
|
|
30
|
+
supported_categories = (GOVERNMENT, PUBLIC, WORKDAY)
|
|
31
|
+
# First available online source.
|
|
32
|
+
start_year = 2016
|
|
33
|
+
|
|
34
|
+
def __init__(self, *args, **kwargs):
|
|
35
|
+
ChristianHolidays.__init__(self)
|
|
36
|
+
InternationalHolidays.__init__(self)
|
|
37
|
+
super().__init__(*args, **kwargs)
|
|
38
|
+
|
|
39
|
+
def _populate_public_holidays(self):
|
|
40
|
+
# New Year's Day.
|
|
41
|
+
self._add_new_years_day("New Year's Day")
|
|
42
|
+
|
|
43
|
+
# Bounty Day.
|
|
44
|
+
self._add_holiday_jan_23("Bounty Day")
|
|
45
|
+
|
|
46
|
+
# Good Friday.
|
|
47
|
+
self._add_good_friday("Good Friday")
|
|
48
|
+
|
|
49
|
+
# Easter Monday.
|
|
50
|
+
self._add_easter_monday("Easter Monday")
|
|
51
|
+
|
|
52
|
+
if self._year >= 2023:
|
|
53
|
+
# King's Birthday.
|
|
54
|
+
self._add_holiday_1st_mon_of_jun("King's Birthday")
|
|
55
|
+
else:
|
|
56
|
+
# Queen's Birthday.
|
|
57
|
+
self._add_holiday_2nd_sat_of_jun("Queen's Birthday")
|
|
58
|
+
|
|
59
|
+
# Pitcairn Day.
|
|
60
|
+
self._add_holiday_jul_2("Pitcairn Day")
|
|
61
|
+
|
|
62
|
+
# Christmas Day.
|
|
63
|
+
self._add_christmas_day("Christmas Day")
|
|
64
|
+
|
|
65
|
+
# Boxing Day.
|
|
66
|
+
self._add_christmas_day_two("Boxing Day")
|
|
67
|
+
|
|
68
|
+
def _populate_government_holidays(self):
|
|
69
|
+
# New Year's Day.
|
|
70
|
+
self._add_new_years_day_two("New Year's Day")
|
|
71
|
+
|
|
72
|
+
def _populate_workday_holidays(self):
|
|
73
|
+
# ANZAC Day.
|
|
74
|
+
self._add_anzac_day("ANZAC Day")
|
|
75
|
+
|
|
76
|
+
# Remembrance Day.
|
|
77
|
+
self._add_remembrance_day("Remembrance Day")
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
class PN(PitcairnIslands):
|
|
81
|
+
pass
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
class PCN(PitcairnIslands):
|
|
85
|
+
pass
|
holidays/countries/qatar.py
CHANGED
|
@@ -13,22 +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
|
|
17
|
-
JAN,
|
|
18
|
-
MAR,
|
|
19
|
-
APR,
|
|
20
|
-
MAY,
|
|
21
|
-
JUN,
|
|
22
|
-
JUL,
|
|
23
|
-
AUG,
|
|
24
|
-
SEP,
|
|
25
|
-
OCT,
|
|
26
|
-
NOV,
|
|
27
|
-
DEC,
|
|
28
|
-
THU,
|
|
29
|
-
FRI,
|
|
30
|
-
SAT,
|
|
31
|
-
)
|
|
16
|
+
from holidays.calendars.gregorian import JAN, JUL, AUG, SEP, OCT, NOV, DEC, THU, FRI, SAT
|
|
32
17
|
from holidays.constants import BANK, PUBLIC
|
|
33
18
|
from holidays.groups import InternationalHolidays, IslamicHolidays, StaticHolidays
|
|
34
19
|
from holidays.holiday_base import HolidayBase
|
|
@@ -109,52 +94,25 @@ class QAT(Qatar):
|
|
|
109
94
|
|
|
110
95
|
class QatarIslamicHolidays(_CustomIslamicHolidays):
|
|
111
96
|
# https://web.archive.org/web/20250422212912/https://www.timeanddate.com/holidays/qatar/eid-al-adha
|
|
97
|
+
EID_AL_ADHA_DATES_CONFIRMED_YEARS = (2005, 2024)
|
|
112
98
|
EID_AL_ADHA_DATES = {
|
|
113
|
-
2005: (JAN, 21),
|
|
114
|
-
2006: ((JAN, 10), (DEC, 31)),
|
|
115
|
-
2007: (DEC, 20),
|
|
116
99
|
2008: (DEC, 9),
|
|
117
100
|
2009: (NOV, 28),
|
|
118
101
|
2010: (NOV, 15),
|
|
119
|
-
2011: (NOV, 6),
|
|
120
|
-
2012: (OCT, 26),
|
|
121
|
-
2013: (OCT, 15),
|
|
122
|
-
2014: (OCT, 4),
|
|
123
|
-
2015: (SEP, 23),
|
|
124
102
|
2016: (SEP, 10),
|
|
125
103
|
2017: (AUG, 31),
|
|
126
104
|
2018: (AUG, 22),
|
|
127
|
-
2019: (AUG, 11),
|
|
128
|
-
2020: (JUL, 31),
|
|
129
|
-
2021: (JUL, 20),
|
|
130
|
-
2022: (JUL, 9),
|
|
131
|
-
2023: (JUN, 28),
|
|
132
|
-
2024: (JUN, 16),
|
|
133
105
|
}
|
|
134
106
|
|
|
135
107
|
# https://web.archive.org/web/20241207022523/https://www.timeanddate.com/holidays/qatar/eid-al-fitr
|
|
108
|
+
EID_AL_FITR_DATES_CONFIRMED_YEARS = (2005, 2025)
|
|
136
109
|
EID_AL_FITR_DATES = {
|
|
137
110
|
2005: (NOV, 4),
|
|
138
111
|
2006: (OCT, 24),
|
|
139
|
-
2007: (OCT, 13),
|
|
140
112
|
2008: (OCT, 2),
|
|
141
113
|
2009: (SEP, 21),
|
|
142
|
-
2010: (SEP, 10),
|
|
143
114
|
2011: (AUG, 31),
|
|
144
|
-
2012: (AUG, 19),
|
|
145
|
-
2013: (AUG, 8),
|
|
146
|
-
2014: (JUL, 28),
|
|
147
115
|
2015: (JUL, 18),
|
|
148
|
-
2016: (JUL, 6),
|
|
149
|
-
2017: (JUN, 25),
|
|
150
|
-
2018: (JUN, 15),
|
|
151
|
-
2019: (JUN, 4),
|
|
152
|
-
2020: (MAY, 24),
|
|
153
|
-
2021: (MAY, 13),
|
|
154
|
-
2022: (MAY, 2),
|
|
155
|
-
2023: (APR, 21),
|
|
156
|
-
2024: (APR, 10),
|
|
157
|
-
2025: (MAR, 30),
|
|
158
116
|
}
|
|
159
117
|
|
|
160
118
|
|