holidays 0.78__py3-none-any.whl → 0.80__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- holidays/calendars/__init__.py +1 -0
- holidays/calendars/chinese.py +14 -4
- holidays/calendars/ethiopian.py +31 -0
- holidays/calendars/hindu.py +1 -0
- holidays/calendars/islamic.py +16 -4
- holidays/calendars/julian.py +14 -0
- holidays/calendars/mandaean.py +59 -0
- holidays/calendars/tibetan.py +1466 -0
- holidays/constants.py +2 -1
- holidays/countries/__init__.py +20 -0
- holidays/countries/afghanistan.py +6 -39
- holidays/countries/albania.py +3 -22
- holidays/countries/argentina.py +7 -18
- holidays/countries/australia.py +191 -295
- holidays/countries/azerbaijan.py +6 -39
- holidays/countries/bahrain.py +29 -38
- holidays/countries/bhutan.py +194 -0
- holidays/countries/bosnia_and_herzegovina.py +7 -28
- holidays/countries/brunei.py +7 -117
- holidays/countries/burkina_faso.py +9 -15
- holidays/countries/burundi.py +95 -40
- holidays/countries/cameroon.py +8 -34
- holidays/countries/canada.py +9 -1
- holidays/countries/central_african_republic.py +3 -16
- holidays/countries/chad.py +9 -17
- holidays/countries/chile.py +20 -4
- holidays/countries/christmas_island.py +10 -15
- holidays/countries/cocos_islands.py +5 -24
- holidays/countries/comoros.py +121 -0
- holidays/countries/egypt.py +5 -37
- holidays/countries/eritrea.py +104 -0
- holidays/countries/ethiopia.py +18 -47
- holidays/countries/fiji.py +1 -2
- holidays/countries/gabon.py +5 -23
- holidays/countries/gambia.py +168 -0
- holidays/countries/georgia.py +9 -7
- holidays/countries/guinea.py +5 -27
- holidays/countries/guinea_bissau.py +96 -0
- holidays/countries/guyana.py +2 -17
- holidays/countries/india.py +12 -25
- holidays/countries/indonesia.py +6 -158
- holidays/countries/iran.py +16 -126
- holidays/countries/iraq.py +276 -0
- holidays/countries/kazakhstan.py +2 -18
- holidays/countries/kenya.py +2 -8
- holidays/countries/kiribati.py +124 -0
- holidays/countries/kyrgyzstan.py +2 -0
- holidays/countries/lebanon.py +5 -87
- holidays/countries/liberia.py +80 -0
- holidays/countries/libya.py +5 -37
- holidays/countries/macau.py +65 -63
- holidays/countries/malaysia.py +9 -130
- holidays/countries/maldives.py +2 -0
- holidays/countries/mali.py +4 -9
- holidays/countries/mauritania.py +2 -0
- holidays/countries/mauritius.py +1 -2
- holidays/countries/montenegro.py +3 -18
- holidays/countries/nepal.py +42 -44
- holidays/countries/niger.py +14 -74
- holidays/countries/nigeria.py +198 -27
- holidays/countries/north_macedonia.py +3 -39
- holidays/countries/oman.py +6 -28
- holidays/countries/pakistan.py +5 -30
- holidays/countries/palestine.py +2 -5
- holidays/countries/philippines.py +3 -33
- holidays/countries/qatar.py +3 -45
- holidays/countries/rwanda.py +162 -0
- holidays/countries/saudi_arabia.py +3 -0
- holidays/countries/senegal.py +6 -16
- holidays/countries/sierra_leone.py +5 -21
- holidays/countries/singapore.py +7 -59
- holidays/countries/somalia.py +79 -0
- holidays/countries/south_georgia_and_the_south_sandwich_islands.py +160 -0
- holidays/countries/south_sudan.py +133 -0
- holidays/countries/spain.py +7 -10
- holidays/countries/sri_lanka.py +3 -14
- holidays/countries/suriname.py +11 -19
- holidays/countries/syrian_arab_republic.py +134 -0
- holidays/countries/tajikistan.py +116 -0
- holidays/countries/tanzania.py +291 -153
- holidays/countries/timor_leste.py +2 -17
- holidays/countries/togo.py +4 -29
- holidays/countries/trinidad_and_tobago.py +2 -9
- holidays/countries/turkey.py +2 -116
- holidays/countries/turkmenistan.py +164 -0
- holidays/countries/uganda.py +101 -0
- holidays/countries/united_arab_emirates.py +5 -29
- holidays/countries/uzbekistan.py +3 -31
- holidays/countries/yemen.py +8 -52
- holidays/financial/__init__.py +5 -0
- holidays/financial/national_stock_exchange_of_india.py +169 -0
- holidays/groups/__init__.py +2 -0
- holidays/groups/christian.py +48 -12
- holidays/groups/eastern.py +1 -1
- holidays/groups/international.py +17 -1
- holidays/groups/islamic.py +1 -1
- holidays/groups/mandaean.py +107 -0
- holidays/groups/tibetan.py +153 -0
- holidays/holiday_base.py +14 -0
- holidays/locale/ar/LC_MESSAGES/BH.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/IQ.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/SY.mo +0 -0
- holidays/locale/bs/LC_MESSAGES/BA.mo +0 -0
- holidays/locale/en_GM/LC_MESSAGES/GM.mo +0 -0
- holidays/locale/en_GS/LC_MESSAGES/GS.mo +0 -0
- holidays/locale/en_IN/LC_MESSAGES/XNSE.mo +0 -0
- holidays/locale/en_MO/LC_MESSAGES/MO.mo +0 -0
- holidays/locale/en_NG/LC_MESSAGES/NG.mo +0 -0
- holidays/locale/en_SG/LC_MESSAGES/SG.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AR.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BA.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BH.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BI.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CL.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/ES.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/GE.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/GM.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/GS.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/GW.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/IQ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MO.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/NG.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/RW.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/SG.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/SY.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TJ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TM.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TZ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/XNSE.mo +0 -0
- holidays/locale/es/LC_MESSAGES/AR.mo +0 -0
- holidays/locale/es/LC_MESSAGES/ES.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/RW.mo +0 -0
- holidays/locale/fr_BI/LC_MESSAGES/BI.mo +0 -0
- holidays/locale/hi/LC_MESSAGES/XNSE.mo +0 -0
- holidays/locale/ka/LC_MESSAGES/GE.mo +0 -0
- holidays/locale/pt_GW/LC_MESSAGES/GW.mo +0 -0
- holidays/locale/pt_MO/LC_MESSAGES/MO.mo +0 -0
- holidays/locale/ru/LC_MESSAGES/TJ.mo +0 -0
- holidays/locale/ru/LC_MESSAGES/TM.mo +0 -0
- holidays/locale/rw/LC_MESSAGES/RW.mo +0 -0
- holidays/locale/sr/LC_MESSAGES/BA.mo +0 -0
- holidays/locale/sw/LC_MESSAGES/TZ.mo +0 -0
- holidays/locale/tg/LC_MESSAGES/TJ.mo +0 -0
- holidays/locale/th/LC_MESSAGES/MO.mo +0 -0
- holidays/locale/th/LC_MESSAGES/SG.mo +0 -0
- holidays/locale/tk/LC_MESSAGES/TM.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/AR.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/BA.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/CL.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/ES.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/GE.mo +0 -0
- holidays/locale/zh_CN/LC_MESSAGES/MO.mo +0 -0
- holidays/locale/zh_MO/LC_MESSAGES/MO.mo +0 -0
- holidays/registry.py +46 -14
- holidays/version.py +1 -1
- {holidays-0.78.dist-info → holidays-0.80.dist-info}/METADATA +127 -9
- {holidays-0.78.dist-info → holidays-0.80.dist-info}/RECORD +161 -113
- {holidays-0.78.dist-info → holidays-0.80.dist-info}/licenses/CONTRIBUTORS +2 -0
- {holidays-0.78.dist-info → holidays-0.80.dist-info}/WHEEL +0 -0
- {holidays-0.78.dist-info → holidays-0.80.dist-info}/licenses/LICENSE +0 -0
- {holidays-0.78.dist-info → holidays-0.80.dist-info}/top_level.txt +0 -0
holidays/holiday_base.py
CHANGED
|
@@ -1135,6 +1135,20 @@ class HolidayBase(dict[date, str]):
|
|
|
1135
1135
|
days = (dt2 - dt1).days + 1
|
|
1136
1136
|
return sum(self.is_working_day(_timedelta(dt1, n)) for n in range(days))
|
|
1137
1137
|
|
|
1138
|
+
def is_weekend(self, key: DateLike) -> bool:
|
|
1139
|
+
"""Check if the given date's week day is a weekend day.
|
|
1140
|
+
|
|
1141
|
+
Args:
|
|
1142
|
+
key:
|
|
1143
|
+
The date to check.
|
|
1144
|
+
|
|
1145
|
+
Returns:
|
|
1146
|
+
True if the date's week day is a weekend day, False otherwise.
|
|
1147
|
+
"""
|
|
1148
|
+
# To prioritize performance we avoid reusing the internal
|
|
1149
|
+
# `HolidayBase._is_weekend` method and perform the check directly instead.
|
|
1150
|
+
return self.__keytransform__(key).weekday() in self.weekend
|
|
1151
|
+
|
|
1138
1152
|
def is_working_day(self, key: DateLike) -> bool:
|
|
1139
1153
|
"""Check if the given date is considered a working day.
|
|
1140
1154
|
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
holidays/registry.py
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
import importlib
|
|
14
14
|
from collections.abc import Iterable
|
|
15
15
|
from threading import RLock
|
|
16
|
-
from typing import Any, Optional
|
|
16
|
+
from typing import Any, Optional
|
|
17
17
|
|
|
18
18
|
from holidays.holiday_base import HolidayBase
|
|
19
19
|
|
|
@@ -44,6 +44,7 @@ COUNTRIES: RegistryDict = {
|
|
|
44
44
|
"belize": ("Belize", "BZ", "BLZ"),
|
|
45
45
|
"benin": ("Benin", "BJ", "BEN"),
|
|
46
46
|
"bermuda": ("Bermuda", "BM", "BMU"),
|
|
47
|
+
"bhutan": ("Bhutan", "BT", "BTN"),
|
|
47
48
|
"bolivia": ("Bolivia", "BO", "BOL"),
|
|
48
49
|
"bonaire_sint_eustatius_and_saba": ("BonaireSintEustatiusAndSaba", "BQ", "BES"),
|
|
49
50
|
"bosnia_and_herzegovina": ("BosniaAndHerzegovina", "BA", "BIH"),
|
|
@@ -66,6 +67,7 @@ COUNTRIES: RegistryDict = {
|
|
|
66
67
|
"christmas_island": ("ChristmasIsland", "CX", "CXR"),
|
|
67
68
|
"cocos_islands": ("CocosIslands", "CC", "CCK"),
|
|
68
69
|
"colombia": ("Colombia", "CO", "COL"),
|
|
70
|
+
"comoros": ("Comoros", "KM", "COM"),
|
|
69
71
|
"congo": ("Congo", "CG", "COG"),
|
|
70
72
|
"cook_islands": ("CookIslands", "CK", "COK"),
|
|
71
73
|
"costa_rica": ("CostaRica", "CR", "CRI"),
|
|
@@ -84,6 +86,7 @@ COUNTRIES: RegistryDict = {
|
|
|
84
86
|
"jordan": ("Jordan", "JO", "JOR"),
|
|
85
87
|
"el_salvador": ("ElSalvador", "SV", "SLV"),
|
|
86
88
|
"equatorial_guinea": ("EquatorialGuinea", "GQ", "GNQ"),
|
|
89
|
+
"eritrea": ("Eritrea", "ER", "ERI"),
|
|
87
90
|
"estonia": ("Estonia", "EE", "EST"),
|
|
88
91
|
"eswatini": ("Eswatini", "SZ", "SZW", "Swaziland"),
|
|
89
92
|
"ethiopia": ("Ethiopia", "ET", "ETH"),
|
|
@@ -96,6 +99,7 @@ COUNTRIES: RegistryDict = {
|
|
|
96
99
|
"french_polynesia": ("FrenchPolynesia", "PF", "PYF", "HolidaysPF"),
|
|
97
100
|
"french_southern_territories": ("FrenchSouthernTerritories", "TF", "ATF", "HolidaysTF"),
|
|
98
101
|
"gabon": ("Gabon", "GA", "GAB"),
|
|
102
|
+
"gambia": ("Gambia", "GM", "GMB"),
|
|
99
103
|
"georgia": ("Georgia", "GE", "GEO"),
|
|
100
104
|
"germany": ("Germany", "DE", "DEU"),
|
|
101
105
|
"ghana": ("Ghana", "GH", "GHA"),
|
|
@@ -108,6 +112,7 @@ COUNTRIES: RegistryDict = {
|
|
|
108
112
|
"guatemala": ("Guatemala", "GT", "GUA"),
|
|
109
113
|
"guernsey": ("Guernsey", "GG", "GGY"),
|
|
110
114
|
"guinea": ("Guinea", "GN", "GIN"),
|
|
115
|
+
"guinea_bissau": ("GuineaBissau", "GW", "GNB"),
|
|
111
116
|
"guyana": ("Guyana", "GY", "GUY"),
|
|
112
117
|
"haiti": ("Haiti", "HT", "HTI"),
|
|
113
118
|
"honduras": ("Honduras", "HN", "HND"),
|
|
@@ -117,6 +122,7 @@ COUNTRIES: RegistryDict = {
|
|
|
117
122
|
"india": ("India", "IN", "IND"),
|
|
118
123
|
"indonesia": ("Indonesia", "ID", "IDN"),
|
|
119
124
|
"iran": ("Iran", "IR", "IRN"),
|
|
125
|
+
"iraq": ("Iraq", "IQ", "IRQ"),
|
|
120
126
|
"ireland": ("Ireland", "IE", "IRL"),
|
|
121
127
|
"isle_of_man": ("IsleOfMan", "IM", "IMN"),
|
|
122
128
|
"israel": ("Israel", "IL", "ISR"),
|
|
@@ -127,12 +133,14 @@ COUNTRIES: RegistryDict = {
|
|
|
127
133
|
"jersey": ("Jersey", "JE", "JEY"),
|
|
128
134
|
"kazakhstan": ("Kazakhstan", "KZ", "KAZ"),
|
|
129
135
|
"kenya": ("Kenya", "KE", "KEN"),
|
|
136
|
+
"kiribati": ("Kiribati", "KI", "KIR"),
|
|
130
137
|
"kuwait": ("Kuwait", "KW", "KWT"),
|
|
131
138
|
"kyrgyzstan": ("Kyrgyzstan", "KG", "KGZ"),
|
|
132
139
|
"laos": ("Laos", "LA", "LAO"),
|
|
133
140
|
"latvia": ("Latvia", "LV", "LVA"),
|
|
134
141
|
"lebanon": ("Lebanon", "LB", "LBN"),
|
|
135
142
|
"lesotho": ("Lesotho", "LS", "LSO"),
|
|
143
|
+
"liberia": ("Liberia", "LR", "LBR"),
|
|
136
144
|
"libya": ("Libya", "LY", "LBY"),
|
|
137
145
|
"liechtenstein": ("Liechtenstein", "LI", "LIE"),
|
|
138
146
|
"lithuania": ("Lithuania", "LT", "LTU"),
|
|
@@ -189,6 +197,7 @@ COUNTRIES: RegistryDict = {
|
|
|
189
197
|
"reunion": ("Reunion", "RE", "REU", "HolidaysRE"),
|
|
190
198
|
"romania": ("Romania", "RO", "ROU"),
|
|
191
199
|
"russia": ("Russia", "RU", "RUS"),
|
|
200
|
+
"rwanda": ("Rwanda", "RW", "RWA"),
|
|
192
201
|
"saint_barthelemy": ("SaintBarthelemy", "BL", "BLM", "HolidaysBL"),
|
|
193
202
|
"saint_kitts_and_nevis": ("SaintKittsAndNevis", "KN", "KNA"),
|
|
194
203
|
"saint_lucia": ("SaintLucia", "LC", "LCA"),
|
|
@@ -208,15 +217,24 @@ COUNTRIES: RegistryDict = {
|
|
|
208
217
|
"slovakia": ("Slovakia", "SK", "SVK"),
|
|
209
218
|
"slovenia": ("Slovenia", "SI", "SVN"),
|
|
210
219
|
"solomon_islands": ("SolomonIslands", "SB", "SLB"),
|
|
220
|
+
"somalia": ("Somalia", "SO", "SOM"),
|
|
211
221
|
"south_africa": ("SouthAfrica", "ZA", "ZAF"),
|
|
222
|
+
"south_georgia_and_the_south_sandwich_islands": (
|
|
223
|
+
"SouthGeorgiaAndTheSouthSandwichIslands",
|
|
224
|
+
"GS",
|
|
225
|
+
"SGS",
|
|
226
|
+
),
|
|
212
227
|
"south_korea": ("SouthKorea", "KR", "KOR", "Korea"),
|
|
228
|
+
"south_sudan": ("SouthSudan", "SS", "SSD"),
|
|
213
229
|
"spain": ("Spain", "ES", "ESP"),
|
|
214
230
|
"sri_lanka": ("SriLanka", "LK", "LKA"),
|
|
215
231
|
"suriname": ("Suriname", "SR", "SUR"),
|
|
216
232
|
"svalbard_and_jan_mayen": ("SvalbardAndJanMayen", "SJ", "SJM", "HolidaysSJ"),
|
|
217
233
|
"sweden": ("Sweden", "SE", "SWE"),
|
|
218
234
|
"switzerland": ("Switzerland", "CH", "CHE"),
|
|
235
|
+
"syrian_arab_republic": ("SyrianArabRepublic", "SY", "SYR"),
|
|
219
236
|
"taiwan": ("Taiwan", "TW", "TWN"),
|
|
237
|
+
"tajikistan": ("Tajikistan", "TJ", "TJK"),
|
|
220
238
|
"tanzania": ("Tanzania", "TZ", "TZA"),
|
|
221
239
|
"thailand": ("Thailand", "TH", "THA"),
|
|
222
240
|
"timor_leste": ("TimorLeste", "TL", "TLS"),
|
|
@@ -226,8 +244,10 @@ COUNTRIES: RegistryDict = {
|
|
|
226
244
|
"trinidad_and_tobago": ("TrinidadAndTobago", "TT", "TTO"),
|
|
227
245
|
"tunisia": ("Tunisia", "TN", "TUN"),
|
|
228
246
|
"turkey": ("Turkey", "TR", "TUR"),
|
|
247
|
+
"turkmenistan": ("Turkmenistan", "TM", "TKM"),
|
|
229
248
|
"turks_and_caicos_islands": ("TurksAndCaicosIslands", "TC", "TCA"),
|
|
230
249
|
"tuvalu": ("Tuvalu", "TV", "TUV"),
|
|
250
|
+
"uganda": ("Uganda", "UG", "UGA"),
|
|
231
251
|
"ukraine": ("Ukraine", "UA", "UKR"),
|
|
232
252
|
"united_arab_emirates": ("UnitedArabEmirates", "AE", "ARE"),
|
|
233
253
|
"united_kingdom": ("UnitedKingdom", "GB", "GBR", "UK"),
|
|
@@ -252,10 +272,11 @@ COUNTRIES: RegistryDict = {
|
|
|
252
272
|
}
|
|
253
273
|
|
|
254
274
|
FINANCIAL: RegistryDict = {
|
|
275
|
+
"brasil_bolsa_balcao": ("BrasilBolsaBalcao", "BVMF", "B3"),
|
|
255
276
|
"european_central_bank": ("EuropeanCentralBank", "XECB", "ECB", "TAR"),
|
|
256
277
|
"ice_futures_europe": ("ICEFuturesEurope", "IFEU"),
|
|
278
|
+
"national_stock_exchange_of_india": ("NationalStockExchangeOfIndia", "XNSE", "NSE"),
|
|
257
279
|
"ny_stock_exchange": ("NewYorkStockExchange", "XNYS", "NYSE"),
|
|
258
|
-
"brasil_bolsa_balcao": ("BrasilBolsaBalcao", "BVMF", "B3"),
|
|
259
280
|
}
|
|
260
281
|
|
|
261
282
|
# A re-entrant lock. Once a thread has acquired a re-entrant lock,
|
|
@@ -318,35 +339,46 @@ class EntityLoader:
|
|
|
318
339
|
@staticmethod
|
|
319
340
|
def _get_entity_codes(
|
|
320
341
|
container: RegistryDict,
|
|
321
|
-
entity_length: Union[int, Iterable[int]],
|
|
322
342
|
include_aliases: bool = True,
|
|
343
|
+
max_code_length: int = 3,
|
|
344
|
+
min_code_length: int = 2,
|
|
323
345
|
) -> Iterable[str]:
|
|
324
|
-
entity_length = {entity_length} if isinstance(entity_length, int) else set(entity_length)
|
|
325
346
|
for entities in container.values():
|
|
326
|
-
for
|
|
327
|
-
if len(
|
|
328
|
-
yield
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
347
|
+
for code in entities[1:]:
|
|
348
|
+
if min_code_length <= len(code) <= max_code_length:
|
|
349
|
+
yield code
|
|
350
|
+
|
|
351
|
+
# Stop after the first matching code if aliases are not requested.
|
|
352
|
+
# Assuming that the alpha-2 code goes first.
|
|
353
|
+
if not include_aliases:
|
|
354
|
+
break
|
|
332
355
|
|
|
333
356
|
@staticmethod
|
|
334
357
|
def get_country_codes(include_aliases: bool = True) -> Iterable[str]:
|
|
335
358
|
"""Get supported country codes.
|
|
336
359
|
|
|
337
360
|
:param include_aliases:
|
|
338
|
-
Whether to include entity aliases (e.g. UK for GB
|
|
361
|
+
Whether to include entity aliases (e.g. GBR and UK for GB,
|
|
362
|
+
UKR for UA, USA for US, etc).
|
|
339
363
|
"""
|
|
340
|
-
return EntityLoader._get_entity_codes(
|
|
364
|
+
return EntityLoader._get_entity_codes(
|
|
365
|
+
COUNTRIES,
|
|
366
|
+
include_aliases=include_aliases,
|
|
367
|
+
)
|
|
341
368
|
|
|
342
369
|
@staticmethod
|
|
343
370
|
def get_financial_codes(include_aliases: bool = True) -> Iterable[str]:
|
|
344
371
|
"""Get supported financial codes.
|
|
345
372
|
|
|
346
373
|
:param include_aliases:
|
|
347
|
-
Whether to include entity aliases(e.g.
|
|
374
|
+
Whether to include entity aliases (e.g. B3 for BVMF,
|
|
375
|
+
TAR for ECB, NYSE for XNYS, etc).
|
|
348
376
|
"""
|
|
349
|
-
return EntityLoader._get_entity_codes(
|
|
377
|
+
return EntityLoader._get_entity_codes(
|
|
378
|
+
FINANCIAL,
|
|
379
|
+
include_aliases=include_aliases,
|
|
380
|
+
max_code_length=4,
|
|
381
|
+
)
|
|
350
382
|
|
|
351
383
|
@staticmethod
|
|
352
384
|
def load(prefix: str, scope: dict) -> None:
|
holidays/version.py
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: holidays
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.80
|
|
4
4
|
Summary: Open World Holidays Framework
|
|
5
5
|
Author: Vacanza Team
|
|
6
6
|
Maintainer: Arkadii Yakovets, Panpakorn Siripanich, Serhii Murza
|
|
7
7
|
License-Expression: MIT
|
|
8
|
+
Project-URL: Changelog, https://github.com/vacanza/holidays/releases/
|
|
8
9
|
Project-URL: Documentation, https://holidays.readthedocs.io/en/latest/
|
|
9
10
|
Project-URL: Repository, https://github.com/vacanza/holidays/
|
|
10
|
-
|
|
11
|
-
Keywords: holidays,calendar,l10n,worldwide,vacation
|
|
11
|
+
Keywords: calendar,holidays,l10n,vacation,worldwide
|
|
12
12
|
Classifier: Development Status :: 4 - Beta
|
|
13
13
|
Classifier: Intended Audience :: Developers
|
|
14
14
|
Classifier: Intended Audience :: Education
|
|
@@ -46,7 +46,7 @@ specific date is a holiday as fast and flexible as possible.
|
|
|
46
46
|
<tr>
|
|
47
47
|
<td>PyPI</td>
|
|
48
48
|
<td>
|
|
49
|
-
<a href="https://pypi.org/project/holidays"><img src="https://img.shields.io/
|
|
49
|
+
<a href="https://pypi.org/project/holidays"><img src="https://img.shields.io/badge/dynamic/yaml?url=https%3A%2F%2Fraw.githubusercontent.com%2Fvacanza%2Faux%2Frefs%2Fheads%2Fmain%2Fbadges%2Fdownloads%2Fpepy.tech.yaml&query=%24.previous_month_downloads_human&suffix=%2Fmonth&style=flat&label=downloads&color=41B5BE&cacheSeconds=86400" alt="PyPI monthly downloads"></a> <a href="https://pypi.org/project/holidays"><img src="https://img.shields.io/pypi/v/holidays?color=41B5BE&label=version&style=flat" alt="PyPI version"></a> <a href="https://github.com/vacanza/holidays/releases"><img src="https://img.shields.io/github/release-date/vacanza/holidays?color=41B5BE&style=flat" alt="Latest release date"></a>
|
|
50
50
|
</td>
|
|
51
51
|
</tr>
|
|
52
52
|
<tr>
|
|
@@ -142,7 +142,7 @@ and detailed information.
|
|
|
142
142
|
|
|
143
143
|
## Available Countries
|
|
144
144
|
|
|
145
|
-
We currently support
|
|
145
|
+
We currently support 240 country codes. The standard way to refer to a country is by using its [ISO
|
|
146
146
|
3166-1 alpha-2 code](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes), the same used
|
|
147
147
|
for domain names, and for a subdivision its [ISO 3166-2
|
|
148
148
|
code](https://en.wikipedia.org/wiki/ISO_3166-2). Some countries have common or foreign names or
|
|
@@ -352,6 +352,13 @@ any) in brackets, available languages and additional holiday categories. All cou
|
|
|
352
352
|
<td></td>
|
|
353
353
|
</tr>
|
|
354
354
|
<tr>
|
|
355
|
+
<td>Bhutan</td>
|
|
356
|
+
<td>BT</td>
|
|
357
|
+
<td>Administrative Subdivisions: 11 (Paro), 12 (Chhukha), 13 (Haa), 14 (Samtse), 15 (Thimphu), 21 (Tsirang), 22 (Dagana), 23 (Punakha), 24 (Wangdue Phodrang), 31 (Sarpang), 32 (Trongsa), 33 (Bumthang), 34 (Zhemgang), 41 (Trashigang), 42 (Monggar), 43 (Pema Gatshel), 44 (Lhuentse), 45 (Samdrup Jongkhar), GA (Gasa), TY (Trashi Yangtse)</td>
|
|
358
|
+
<td></td>
|
|
359
|
+
<td></td>
|
|
360
|
+
</tr>
|
|
361
|
+
<tr>
|
|
355
362
|
<td>Bolivia</td>
|
|
356
363
|
<td>BO</td>
|
|
357
364
|
<td>Departments: B (El Beni), C (Cochabamba), H (Chuquisaca), L (La Paz), N (Pando), O (Oruro), P (Potosí), S (Santa Cruz), T (Tarija)</td>
|
|
@@ -418,7 +425,7 @@ any) in brackets, available languages and additional holiday categories. All cou
|
|
|
418
425
|
<td>Burundi</td>
|
|
419
426
|
<td>BI</td>
|
|
420
427
|
<td></td>
|
|
421
|
-
<td></td>
|
|
428
|
+
<td>en_US, <strong>fr_BI</strong></td>
|
|
422
429
|
<td></td>
|
|
423
430
|
</tr>
|
|
424
431
|
<tr>
|
|
@@ -506,6 +513,13 @@ any) in brackets, available languages and additional holiday categories. All cou
|
|
|
506
513
|
<td></td>
|
|
507
514
|
</tr>
|
|
508
515
|
<tr>
|
|
516
|
+
<td>Comoros</td>
|
|
517
|
+
<td>KM</td>
|
|
518
|
+
<td></td>
|
|
519
|
+
<td></td>
|
|
520
|
+
<td></td>
|
|
521
|
+
</tr>
|
|
522
|
+
<tr>
|
|
509
523
|
<td>Congo</td>
|
|
510
524
|
<td>CG</td>
|
|
511
525
|
<td></td>
|
|
@@ -625,6 +639,13 @@ any) in brackets, available languages and additional holiday categories. All cou
|
|
|
625
639
|
<td></td>
|
|
626
640
|
</tr>
|
|
627
641
|
<tr>
|
|
642
|
+
<td>Eritrea</td>
|
|
643
|
+
<td>ER</td>
|
|
644
|
+
<td></td>
|
|
645
|
+
<td></td>
|
|
646
|
+
<td>GOVERNMENT</td>
|
|
647
|
+
</tr>
|
|
648
|
+
<tr>
|
|
628
649
|
<td>Estonia</td>
|
|
629
650
|
<td>EE</td>
|
|
630
651
|
<td></td>
|
|
@@ -709,11 +730,18 @@ any) in brackets, available languages and additional holiday categories. All cou
|
|
|
709
730
|
<td></td>
|
|
710
731
|
</tr>
|
|
711
732
|
<tr>
|
|
733
|
+
<td>Gambia</td>
|
|
734
|
+
<td>GM</td>
|
|
735
|
+
<td></td>
|
|
736
|
+
<td><strong>en_GM</strong>, en_US</td>
|
|
737
|
+
<td></td>
|
|
738
|
+
</tr>
|
|
739
|
+
<tr>
|
|
712
740
|
<td>Georgia</td>
|
|
713
741
|
<td>GE</td>
|
|
714
742
|
<td></td>
|
|
715
743
|
<td>en_US, <strong>ka</strong>, uk</td>
|
|
716
|
-
<td
|
|
744
|
+
<td></td>
|
|
717
745
|
</tr>
|
|
718
746
|
<tr>
|
|
719
747
|
<td>Germany</td>
|
|
@@ -793,6 +821,13 @@ any) in brackets, available languages and additional holiday categories. All cou
|
|
|
793
821
|
<td></td>
|
|
794
822
|
</tr>
|
|
795
823
|
<tr>
|
|
824
|
+
<td>Guinea-Bissau</td>
|
|
825
|
+
<td>GW</td>
|
|
826
|
+
<td></td>
|
|
827
|
+
<td>en_US, <strong>pt_GW</strong></td>
|
|
828
|
+
<td></td>
|
|
829
|
+
</tr>
|
|
830
|
+
<tr>
|
|
796
831
|
<td>Guyana</td>
|
|
797
832
|
<td>GY</td>
|
|
798
833
|
<td></td>
|
|
@@ -856,6 +891,13 @@ any) in brackets, available languages and additional holiday categories. All cou
|
|
|
856
891
|
<td></td>
|
|
857
892
|
</tr>
|
|
858
893
|
<tr>
|
|
894
|
+
<td>Iraq</td>
|
|
895
|
+
<td>IQ</td>
|
|
896
|
+
<td></td>
|
|
897
|
+
<td><strong>ar</strong>, en_US</td>
|
|
898
|
+
<td>CHRISTIAN, HEBREW, SABIAN, YAZIDI</td>
|
|
899
|
+
</tr>
|
|
900
|
+
<tr>
|
|
859
901
|
<td>Ireland</td>
|
|
860
902
|
<td>IE</td>
|
|
861
903
|
<td></td>
|
|
@@ -933,6 +975,13 @@ any) in brackets, available languages and additional holiday categories. All cou
|
|
|
933
975
|
<td>HINDU, ISLAMIC</td>
|
|
934
976
|
</tr>
|
|
935
977
|
<tr>
|
|
978
|
+
<td>Kiribati</td>
|
|
979
|
+
<td>KI</td>
|
|
980
|
+
<td></td>
|
|
981
|
+
<td></td>
|
|
982
|
+
<td></td>
|
|
983
|
+
</tr>
|
|
984
|
+
<tr>
|
|
936
985
|
<td>Kuwait</td>
|
|
937
986
|
<td>KW</td>
|
|
938
987
|
<td></td>
|
|
@@ -975,6 +1024,13 @@ any) in brackets, available languages and additional holiday categories. All cou
|
|
|
975
1024
|
<td></td>
|
|
976
1025
|
</tr>
|
|
977
1026
|
<tr>
|
|
1027
|
+
<td>Liberia</td>
|
|
1028
|
+
<td>LR</td>
|
|
1029
|
+
<td></td>
|
|
1030
|
+
<td></td>
|
|
1031
|
+
<td></td>
|
|
1032
|
+
</tr>
|
|
1033
|
+
<tr>
|
|
978
1034
|
<td>Libya</td>
|
|
979
1035
|
<td>LY</td>
|
|
980
1036
|
<td></td>
|
|
@@ -1007,7 +1063,7 @@ any) in brackets, available languages and additional holiday categories. All cou
|
|
|
1007
1063
|
<td>MO</td>
|
|
1008
1064
|
<td>Historical municipalities: I (Concelho das Ilhas, 海島市, 海岛市), M (Concelho de Macau, 澳門市, 澳门市)</td>
|
|
1009
1065
|
<td>en_MO, en_US, pt_MO, th, zh_CN, <strong>zh_MO</strong></td>
|
|
1010
|
-
<td>GOVERNMENT,
|
|
1066
|
+
<td>GOVERNMENT, OPTIONAL</td>
|
|
1011
1067
|
</tr>
|
|
1012
1068
|
<tr>
|
|
1013
1069
|
<td>Madagascar</td>
|
|
@@ -1209,7 +1265,7 @@ any) in brackets, available languages and additional holiday categories. All cou
|
|
|
1209
1265
|
<td>Nigeria</td>
|
|
1210
1266
|
<td>NG</td>
|
|
1211
1267
|
<td></td>
|
|
1212
|
-
<td
|
|
1268
|
+
<td><strong>en_NG</strong>, en_US</td>
|
|
1213
1269
|
<td></td>
|
|
1214
1270
|
</tr>
|
|
1215
1271
|
<tr>
|
|
@@ -1367,6 +1423,13 @@ any) in brackets, available languages and additional holiday categories. All cou
|
|
|
1367
1423
|
<td></td>
|
|
1368
1424
|
</tr>
|
|
1369
1425
|
<tr>
|
|
1426
|
+
<td>Rwanda</td>
|
|
1427
|
+
<td>RW</td>
|
|
1428
|
+
<td></td>
|
|
1429
|
+
<td>en_US, fr, <strong>rw</strong></td>
|
|
1430
|
+
<td></td>
|
|
1431
|
+
</tr>
|
|
1432
|
+
<tr>
|
|
1370
1433
|
<td>Saint Barthélemy</td>
|
|
1371
1434
|
<td>BL</td>
|
|
1372
1435
|
<td>Can also be loaded as country FR, subdivision BL</td>
|
|
@@ -1500,6 +1563,13 @@ any) in brackets, available languages and additional holiday categories. All cou
|
|
|
1500
1563
|
<td></td>
|
|
1501
1564
|
</tr>
|
|
1502
1565
|
<tr>
|
|
1566
|
+
<td>Somalia</td>
|
|
1567
|
+
<td>SO</td>
|
|
1568
|
+
<td></td>
|
|
1569
|
+
<td></td>
|
|
1570
|
+
<td></td>
|
|
1571
|
+
</tr>
|
|
1572
|
+
<tr>
|
|
1503
1573
|
<td>South Africa</td>
|
|
1504
1574
|
<td>ZA</td>
|
|
1505
1575
|
<td></td>
|
|
@@ -1507,6 +1577,13 @@ any) in brackets, available languages and additional holiday categories. All cou
|
|
|
1507
1577
|
<td></td>
|
|
1508
1578
|
</tr>
|
|
1509
1579
|
<tr>
|
|
1580
|
+
<td>South Georgia and the South Sandwich Islands</td>
|
|
1581
|
+
<td>GS</td>
|
|
1582
|
+
<td></td>
|
|
1583
|
+
<td><strong>en_GS</strong>, en_US</td>
|
|
1584
|
+
<td></td>
|
|
1585
|
+
</tr>
|
|
1586
|
+
<tr>
|
|
1510
1587
|
<td>South Korea</td>
|
|
1511
1588
|
<td>KR</td>
|
|
1512
1589
|
<td></td>
|
|
@@ -1514,6 +1591,13 @@ any) in brackets, available languages and additional holiday categories. All cou
|
|
|
1514
1591
|
<td>BANK</td>
|
|
1515
1592
|
</tr>
|
|
1516
1593
|
<tr>
|
|
1594
|
+
<td>South Sudan</td>
|
|
1595
|
+
<td>SS</td>
|
|
1596
|
+
<td></td>
|
|
1597
|
+
<td></td>
|
|
1598
|
+
<td>ISLAMIC</td>
|
|
1599
|
+
</tr>
|
|
1600
|
+
<tr>
|
|
1517
1601
|
<td>Spain</td>
|
|
1518
1602
|
<td>ES</td>
|
|
1519
1603
|
<td>Autonomous communities: AN (Andalucía), AR (Aragón), AS (Asturias), CB (Cantabria), CE (Ceuta), CL (Castilla y León), CM (Castilla-La Mancha), CN (Canarias), CT (Cataluña, Catalunya), EX (Extremadura), GA (Galicia), IB (Islas Baleares, Illes Balears), MC (Murcia), MD (Madrid), ML (Melilla), NC (Navarra), PV (País Vasco), RI (La Rioja), VC (Valenciana)</td>
|
|
@@ -1556,6 +1640,13 @@ any) in brackets, available languages and additional holiday categories. All cou
|
|
|
1556
1640
|
<td>HALF_DAY, OPTIONAL</td>
|
|
1557
1641
|
</tr>
|
|
1558
1642
|
<tr>
|
|
1643
|
+
<td>Syrian Arab Republic</td>
|
|
1644
|
+
<td>SY</td>
|
|
1645
|
+
<td></td>
|
|
1646
|
+
<td><strong>ar</strong>, en_US</td>
|
|
1647
|
+
<td></td>
|
|
1648
|
+
</tr>
|
|
1649
|
+
<tr>
|
|
1559
1650
|
<td>Taiwan</td>
|
|
1560
1651
|
<td>TW</td>
|
|
1561
1652
|
<td></td>
|
|
@@ -1563,6 +1654,13 @@ any) in brackets, available languages and additional holiday categories. All cou
|
|
|
1563
1654
|
<td>GOVERNMENT, OPTIONAL, SCHOOL, WORKDAY</td>
|
|
1564
1655
|
</tr>
|
|
1565
1656
|
<tr>
|
|
1657
|
+
<td>Tajikistan</td>
|
|
1658
|
+
<td>TJ</td>
|
|
1659
|
+
<td></td>
|
|
1660
|
+
<td>en_US, ru, <strong>tg</strong></td>
|
|
1661
|
+
<td></td>
|
|
1662
|
+
</tr>
|
|
1663
|
+
<tr>
|
|
1566
1664
|
<td>Tanzania</td>
|
|
1567
1665
|
<td>TZ</td>
|
|
1568
1666
|
<td></td>
|
|
@@ -1626,6 +1724,13 @@ any) in brackets, available languages and additional holiday categories. All cou
|
|
|
1626
1724
|
<td>HALF_DAY</td>
|
|
1627
1725
|
</tr>
|
|
1628
1726
|
<tr>
|
|
1727
|
+
<td>Turkmenistan</td>
|
|
1728
|
+
<td>TM</td>
|
|
1729
|
+
<td></td>
|
|
1730
|
+
<td>en_US, ru, <strong>tk</strong></td>
|
|
1731
|
+
<td></td>
|
|
1732
|
+
</tr>
|
|
1733
|
+
<tr>
|
|
1629
1734
|
<td>Turks and Caicos Islands</td>
|
|
1630
1735
|
<td>TC</td>
|
|
1631
1736
|
<td></td>
|
|
@@ -1640,6 +1745,13 @@ any) in brackets, available languages and additional holiday categories. All cou
|
|
|
1640
1745
|
<td></td>
|
|
1641
1746
|
</tr>
|
|
1642
1747
|
<tr>
|
|
1748
|
+
<td>Uganda</td>
|
|
1749
|
+
<td>UG</td>
|
|
1750
|
+
<td></td>
|
|
1751
|
+
<td></td>
|
|
1752
|
+
<td></td>
|
|
1753
|
+
</tr>
|
|
1754
|
+
<tr>
|
|
1643
1755
|
<td>Ukraine</td>
|
|
1644
1756
|
<td>UA</td>
|
|
1645
1757
|
<td></td>
|
|
@@ -1802,6 +1914,12 @@ code when available. The following financial markets are available:
|
|
|
1802
1914
|
<td></td>
|
|
1803
1915
|
</tr>
|
|
1804
1916
|
<tr>
|
|
1917
|
+
<td>National Stock Exchange of India</td>
|
|
1918
|
+
<td>XNSE</td>
|
|
1919
|
+
<td>National Stock Exchange of India market holidays</td>
|
|
1920
|
+
<td><strong>en_IN</strong>, en_US, hi</td>
|
|
1921
|
+
</tr>
|
|
1922
|
+
<tr>
|
|
1805
1923
|
<td>New York Stock Exchange</td>
|
|
1806
1924
|
<td>XNYS</td>
|
|
1807
1925
|
<td>NYSE market holidays (used by all other US-exchanges, including NASDAQ, etc.)</td>
|