holidays 0.70__py3-none-any.whl → 0.72__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 (254) hide show
  1. holidays/__init__.py +1 -2
  2. holidays/calendars/__init__.py +1 -1
  3. holidays/calendars/balinese_saka.py +1 -1
  4. holidays/calendars/buddhist.py +5 -3
  5. holidays/calendars/chinese.py +101 -13
  6. holidays/calendars/custom.py +1 -1
  7. holidays/calendars/gregorian.py +1 -1
  8. holidays/calendars/hebrew.py +1 -1
  9. holidays/calendars/hindu.py +47 -3
  10. holidays/calendars/islamic.py +1 -1
  11. holidays/calendars/julian.py +1 -1
  12. holidays/calendars/julian_revised.py +1 -1
  13. holidays/calendars/persian.py +1 -1
  14. holidays/calendars/sinhala.py +1 -1
  15. holidays/calendars/thai.py +1 -1
  16. holidays/constants.py +1 -1
  17. holidays/countries/__init__.py +7 -1
  18. holidays/countries/afghanistan.py +1 -1
  19. holidays/countries/albania.py +2 -2
  20. holidays/countries/algeria.py +1 -1
  21. holidays/countries/american_samoa.py +2 -1
  22. holidays/countries/andorra.py +10 -1
  23. holidays/countries/angola.py +1 -1
  24. holidays/countries/antigua_and_barbuda.py +1 -1
  25. holidays/countries/argentina.py +5 -5
  26. holidays/countries/armenia.py +1 -1
  27. holidays/countries/aruba.py +1 -1
  28. holidays/countries/australia.py +16 -5
  29. holidays/countries/austria.py +3 -3
  30. holidays/countries/azerbaijan.py +1 -1
  31. holidays/countries/bahamas.py +1 -1
  32. holidays/countries/bahrain.py +1 -1
  33. holidays/countries/bangladesh.py +1 -1
  34. holidays/countries/barbados.py +1 -1
  35. holidays/countries/belarus.py +1 -1
  36. holidays/countries/belgium.py +1 -1
  37. holidays/countries/belize.py +1 -1
  38. holidays/countries/bolivia.py +23 -12
  39. holidays/countries/bosnia_and_herzegovina.py +5 -5
  40. holidays/countries/botswana.py +1 -1
  41. holidays/countries/brazil.py +3 -4
  42. holidays/countries/brunei.py +1 -1
  43. holidays/countries/bulgaria.py +1 -1
  44. holidays/countries/burkina_faso.py +1 -1
  45. holidays/countries/burundi.py +1 -1
  46. holidays/countries/cambodia.py +22 -22
  47. holidays/countries/cameroon.py +1 -1
  48. holidays/countries/canada.py +91 -57
  49. holidays/countries/chad.py +1 -1
  50. holidays/countries/chile.py +36 -18
  51. holidays/countries/china.py +1 -1
  52. holidays/countries/colombia.py +1 -1
  53. holidays/countries/congo.py +1 -1
  54. holidays/countries/costa_rica.py +1 -1
  55. holidays/countries/croatia.py +1 -1
  56. holidays/countries/cuba.py +1 -1
  57. holidays/countries/curacao.py +1 -1
  58. holidays/countries/cyprus.py +1 -1
  59. holidays/countries/czechia.py +1 -1
  60. holidays/countries/denmark.py +1 -1
  61. holidays/countries/djibouti.py +1 -1
  62. holidays/countries/dominica.py +1 -1
  63. holidays/countries/dominican_republic.py +1 -1
  64. holidays/countries/ecuador.py +1 -1
  65. holidays/countries/egypt.py +1 -1
  66. holidays/countries/el_salvador.py +18 -18
  67. holidays/countries/estonia.py +1 -1
  68. holidays/countries/eswatini.py +1 -1
  69. holidays/countries/ethiopia.py +43 -24
  70. holidays/countries/fiji.py +1 -1
  71. holidays/countries/finland.py +1 -1
  72. holidays/countries/france.py +4 -5
  73. holidays/countries/french_southern_territories.py +53 -0
  74. holidays/countries/gabon.py +1 -1
  75. holidays/countries/georgia.py +1 -1
  76. holidays/countries/germany.py +20 -21
  77. holidays/countries/ghana.py +1 -1
  78. holidays/countries/greece.py +1 -1
  79. holidays/countries/greenland.py +1 -1
  80. holidays/countries/guam.py +2 -1
  81. holidays/countries/guatemala.py +1 -1
  82. holidays/countries/guernsey.py +1 -1
  83. holidays/countries/guinea.py +1 -1
  84. holidays/countries/haiti.py +1 -1
  85. holidays/countries/honduras.py +1 -1
  86. holidays/countries/hongkong.py +2 -2
  87. holidays/countries/hungary.py +1 -1
  88. holidays/countries/iceland.py +1 -1
  89. holidays/countries/india.py +17 -11
  90. holidays/countries/indonesia.py +1 -1
  91. holidays/countries/iran.py +1 -1
  92. holidays/countries/ireland.py +1 -1
  93. holidays/countries/isle_of_man.py +1 -1
  94. holidays/countries/israel.py +1 -1
  95. holidays/countries/italy.py +1 -1
  96. holidays/countries/ivory_coast.py +5 -5
  97. holidays/countries/jamaica.py +1 -1
  98. holidays/countries/japan.py +1 -1
  99. holidays/countries/jersey.py +1 -1
  100. holidays/countries/jordan.py +1 -1
  101. holidays/countries/kazakhstan.py +1 -1
  102. holidays/countries/kenya.py +1 -1
  103. holidays/countries/kuwait.py +1 -1
  104. holidays/countries/kyrgyzstan.py +1 -1
  105. holidays/countries/laos.py +1 -1
  106. holidays/countries/latvia.py +1 -1
  107. holidays/countries/lesotho.py +1 -1
  108. holidays/countries/liechtenstein.py +1 -1
  109. holidays/countries/lithuania.py +1 -1
  110. holidays/countries/luxembourg.py +1 -1
  111. holidays/countries/macau.py +5 -5
  112. holidays/countries/madagascar.py +1 -1
  113. holidays/countries/malawi.py +1 -1
  114. holidays/countries/malaysia.py +26 -22
  115. holidays/countries/maldives.py +1 -1
  116. holidays/countries/malta.py +1 -1
  117. holidays/countries/marshall_islands.py +1 -1
  118. holidays/countries/mauritania.py +1 -1
  119. holidays/countries/mexico.py +1 -1
  120. holidays/countries/moldova.py +1 -1
  121. holidays/countries/monaco.py +1 -1
  122. holidays/countries/montenegro.py +1 -1
  123. holidays/countries/morocco.py +1 -1
  124. holidays/countries/mozambique.py +1 -1
  125. holidays/countries/namibia.py +1 -1
  126. holidays/countries/netherlands.py +1 -1
  127. holidays/countries/new_zealand.py +19 -19
  128. holidays/countries/nicaragua.py +19 -19
  129. holidays/countries/nigeria.py +1 -1
  130. holidays/countries/north_macedonia.py +1 -1
  131. holidays/countries/northern_mariana_islands.py +2 -1
  132. holidays/countries/norway.py +1 -1
  133. holidays/countries/oman.py +185 -0
  134. holidays/countries/pakistan.py +8 -1
  135. holidays/countries/palau.py +1 -1
  136. holidays/countries/panama.py +1 -1
  137. holidays/countries/papua_new_guinea.py +1 -1
  138. holidays/countries/paraguay.py +1 -1
  139. holidays/countries/peru.py +1 -1
  140. holidays/countries/philippines.py +1 -1
  141. holidays/countries/poland.py +1 -1
  142. holidays/countries/portugal.py +23 -25
  143. holidays/countries/puerto_rico.py +2 -1
  144. holidays/countries/qatar.py +1 -1
  145. holidays/countries/romania.py +1 -1
  146. holidays/countries/russia.py +1 -1
  147. holidays/countries/saint_kitts_and_nevis.py +1 -1
  148. holidays/countries/saint_lucia.py +1 -1
  149. holidays/countries/samoa.py +1 -1
  150. holidays/countries/san_marino.py +1 -1
  151. holidays/countries/sao_tome_and_principe.py +112 -0
  152. holidays/countries/saudi_arabia.py +1 -1
  153. holidays/countries/serbia.py +1 -1
  154. holidays/countries/seychelles.py +1 -1
  155. holidays/countries/sierra_leone.py +149 -0
  156. holidays/countries/singapore.py +5 -2
  157. holidays/countries/slovakia.py +1 -1
  158. holidays/countries/slovenia.py +1 -1
  159. holidays/countries/south_africa.py +1 -1
  160. holidays/countries/south_korea.py +17 -46
  161. holidays/countries/spain.py +43 -20
  162. holidays/countries/sri_lanka.py +1 -1
  163. holidays/countries/suriname.py +227 -0
  164. holidays/countries/sweden.py +1 -1
  165. holidays/countries/switzerland.py +61 -28
  166. holidays/countries/taiwan.py +3 -2
  167. holidays/countries/tanzania.py +1 -1
  168. holidays/countries/thailand.py +3 -3
  169. holidays/countries/timor_leste.py +1 -1
  170. holidays/countries/tonga.py +1 -1
  171. holidays/countries/trinidad_and_tobago.py +197 -0
  172. holidays/countries/tunisia.py +1 -1
  173. holidays/countries/turkey.py +1 -1
  174. holidays/countries/tuvalu.py +6 -6
  175. holidays/countries/ukraine.py +1 -1
  176. holidays/countries/united_arab_emirates.py +1 -1
  177. holidays/countries/united_kingdom.py +1 -1
  178. holidays/countries/united_states.py +62 -4
  179. holidays/countries/united_states_minor_outlying_islands.py +2 -1
  180. holidays/countries/united_states_virgin_islands.py +2 -1
  181. holidays/countries/uruguay.py +1 -1
  182. holidays/countries/uzbekistan.py +1 -1
  183. holidays/countries/vanuatu.py +1 -1
  184. holidays/countries/vatican_city.py +1 -1
  185. holidays/countries/venezuela.py +1 -1
  186. holidays/countries/vietnam.py +3 -2
  187. holidays/countries/zambia.py +1 -1
  188. holidays/countries/zimbabwe.py +1 -1
  189. holidays/deprecations/v1_incompatibility.py +1 -1
  190. holidays/financial/__init__.py +1 -1
  191. holidays/financial/brasil_bolsa_balcao.py +1 -1
  192. holidays/financial/european_central_bank.py +1 -1
  193. holidays/financial/ice_futures_europe.py +1 -1
  194. holidays/financial/ny_stock_exchange.py +1 -1
  195. holidays/groups/__init__.py +1 -1
  196. holidays/groups/balinese_saka.py +1 -1
  197. holidays/groups/buddhist.py +1 -1
  198. holidays/groups/chinese.py +6 -4
  199. holidays/groups/christian.py +1 -1
  200. holidays/groups/custom.py +1 -1
  201. holidays/groups/eastern.py +1 -1
  202. holidays/groups/hebrew.py +1 -1
  203. holidays/groups/hindu.py +45 -3
  204. holidays/groups/international.py +1 -1
  205. holidays/groups/islamic.py +11 -1
  206. holidays/groups/persian.py +1 -1
  207. holidays/groups/sinhala.py +1 -1
  208. holidays/groups/thai.py +6 -6
  209. holidays/helpers.py +1 -1
  210. holidays/holiday_base.py +32 -6
  211. holidays/ical.py +2 -2
  212. holidays/locale/am/LC_MESSAGES/ET.mo +0 -0
  213. holidays/locale/ar/LC_MESSAGES/CA.mo +0 -0
  214. holidays/locale/ar/LC_MESSAGES/ET.mo +0 -0
  215. holidays/locale/ar/LC_MESSAGES/OM.mo +0 -0
  216. holidays/locale/en_CA/LC_MESSAGES/CA.mo +0 -0
  217. holidays/locale/en_CI/LC_MESSAGES/CI.mo +0 -0
  218. holidays/locale/en_ET/LC_MESSAGES/ET.mo +0 -0
  219. holidays/locale/en_IN/LC_MESSAGES/IN.mo +0 -0
  220. holidays/locale/en_SL/LC_MESSAGES/SL.mo +0 -0
  221. holidays/locale/en_TT/LC_MESSAGES/TT.mo +0 -0
  222. holidays/locale/en_US/LC_MESSAGES/CA.mo +0 -0
  223. holidays/locale/en_US/LC_MESSAGES/CI.mo +0 -0
  224. holidays/locale/en_US/LC_MESSAGES/ET.mo +0 -0
  225. holidays/locale/en_US/LC_MESSAGES/IN.mo +0 -0
  226. holidays/locale/en_US/LC_MESSAGES/KH.mo +0 -0
  227. holidays/locale/en_US/LC_MESSAGES/OM.mo +0 -0
  228. holidays/locale/en_US/LC_MESSAGES/PK.mo +0 -0
  229. holidays/locale/en_US/LC_MESSAGES/SL.mo +0 -0
  230. holidays/locale/en_US/LC_MESSAGES/SR.mo +0 -0
  231. holidays/locale/en_US/LC_MESSAGES/ST.mo +0 -0
  232. holidays/locale/en_US/LC_MESSAGES/TF.mo +0 -0
  233. holidays/locale/en_US/LC_MESSAGES/TT.mo +0 -0
  234. holidays/locale/fr/LC_MESSAGES/CA.mo +0 -0
  235. holidays/locale/fr/LC_MESSAGES/TF.mo +0 -0
  236. holidays/locale/hi/LC_MESSAGES/IN.mo +0 -0
  237. holidays/locale/km/LC_MESSAGES/KH.mo +0 -0
  238. holidays/locale/nl/LC_MESSAGES/SR.mo +0 -0
  239. holidays/locale/pt_ST/LC_MESSAGES/ST.mo +0 -0
  240. holidays/locale/th/LC_MESSAGES/CA.mo +0 -0
  241. holidays/locale/th/LC_MESSAGES/KH.mo +0 -0
  242. holidays/locale/uk/LC_MESSAGES/TF.mo +0 -0
  243. holidays/locale/ur_PK/LC_MESSAGES/PK.mo +0 -0
  244. holidays/mixins.py +1 -1
  245. holidays/observed_holiday_base.py +6 -2
  246. holidays/registry.py +7 -1
  247. holidays/utils.py +61 -9
  248. holidays/version.py +2 -2
  249. {holidays-0.70.dist-info → holidays-0.72.dist-info}/METADATA +64 -16
  250. {holidays-0.70.dist-info → holidays-0.72.dist-info}/RECORD +254 -234
  251. {holidays-0.70.dist-info → holidays-0.72.dist-info}/WHEEL +1 -1
  252. holidays-0.70.dist-info/licenses/AUTHORS.md → holidays-0.72.dist-info/licenses/CONTRIBUTORS +4 -2
  253. {holidays-0.70.dist-info → holidays-0.72.dist-info}/licenses/LICENSE +1 -1
  254. {holidays-0.70.dist-info → holidays-0.72.dist-info}/top_level.txt +0 -0
holidays/registry.py CHANGED
@@ -4,7 +4,7 @@
4
4
  # specific sets of holidays on the fly. It aims to make determining whether a
5
5
  # specific date is a holiday as fast and flexible as possible.
6
6
  #
7
- # Authors: Vacanza Team and individual contributors (see AUTHORS.md file)
7
+ # Authors: Vacanza Team and individual contributors (see CONTRIBUTORS file)
8
8
  # dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
9
9
  # ryanss <ryanssdev@icloud.com> (c) 2014-2017
10
10
  # Website: https://github.com/vacanza/holidays
@@ -76,6 +76,7 @@ COUNTRIES: RegistryDict = {
76
76
  "fiji": ("Fiji", "FJ", "FJI"),
77
77
  "finland": ("Finland", "FI", "FIN"),
78
78
  "france": ("France", "FR", "FRA"),
79
+ "french_southern_territories": ("FrenchSouthernTerritories", "TF", "ATF", "HolidaysTF"),
79
80
  "gabon": ("Gabon", "GA", "GAB"),
80
81
  "georgia": ("Georgia", "GE", "GEO"),
81
82
  "germany": ("Germany", "DE", "DEU"),
@@ -134,6 +135,7 @@ COUNTRIES: RegistryDict = {
134
135
  "north_macedonia": ("NorthMacedonia", "MK", "MKD"),
135
136
  "northern_mariana_islands": ("NorthernMarianaIslands", "MP", "MNP", "HolidaysMP"),
136
137
  "norway": ("Norway", "NO", "NOR"),
138
+ "oman": ("Oman", "OM", "OMN"),
137
139
  "pakistan": ("Pakistan", "PK", "PAK"),
138
140
  "palau": ("Palau", "PW", "PLW"),
139
141
  "panama": ("Panama", "PA", "PAN"),
@@ -151,9 +153,11 @@ COUNTRIES: RegistryDict = {
151
153
  "saint_lucia": ("SaintLucia", "LC", "LCA"),
152
154
  "samoa": ("Samoa", "WS", "WSM"),
153
155
  "san_marino": ("SanMarino", "SM", "SMR"),
156
+ "sao_tome_and_principe": ("SaoTomeAndPrincipe", "ST", "STP"),
154
157
  "saudi_arabia": ("SaudiArabia", "SA", "SAU"),
155
158
  "serbia": ("Serbia", "RS", "SRB"),
156
159
  "seychelles": ("Seychelles", "SC", "SYC"),
160
+ "sierra_leone": ("SierraLeone", "SL", "SLE"),
157
161
  "singapore": ("Singapore", "SG", "SGP"),
158
162
  "slovakia": ("Slovakia", "SK", "SVK"),
159
163
  "slovenia": ("Slovenia", "SI", "SVN"),
@@ -161,6 +165,7 @@ COUNTRIES: RegistryDict = {
161
165
  "south_korea": ("SouthKorea", "KR", "KOR", "Korea"),
162
166
  "spain": ("Spain", "ES", "ESP"),
163
167
  "sri_lanka": ("SriLanka", "LK", "LKA"),
168
+ "suriname": ("Suriname", "SR", "SUR"),
164
169
  "sweden": ("Sweden", "SE", "SWE"),
165
170
  "switzerland": ("Switzerland", "CH", "CHE"),
166
171
  "taiwan": ("Taiwan", "TW", "TWN"),
@@ -168,6 +173,7 @@ COUNTRIES: RegistryDict = {
168
173
  "thailand": ("Thailand", "TH", "THA"),
169
174
  "timor_leste": ("TimorLeste", "TL", "TLS"),
170
175
  "tonga": ("Tonga", "TO", "TON"),
176
+ "trinidad_and_tobago": ("TrinidadAndTobago", "TT", "TTO"),
171
177
  "tunisia": ("Tunisia", "TN", "TUN"),
172
178
  "turkey": ("Turkey", "TR", "TUR"),
173
179
  "tuvalu": ("Tuvalu", "TV", "TUV"),
holidays/utils.py CHANGED
@@ -4,7 +4,7 @@
4
4
  # specific sets of holidays on the fly. It aims to make determining whether a
5
5
  # specific date is a holiday as fast and flexible as possible.
6
6
  #
7
- # Authors: Vacanza Team and individual contributors (see AUTHORS.md file)
7
+ # Authors: Vacanza Team and individual contributors (see CONTRIBUTORS file)
8
8
  # dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
9
9
  # ryanss <ryanssdev@icloud.com> (c) 2014-2017
10
10
  # Website: https://github.com/vacanza/holidays
@@ -71,10 +71,36 @@ def country_holidays(
71
71
  *deprecated* use `subdiv` instead.
72
72
 
73
73
  language:
74
- The language which the returned holiday names will be translated
75
- into. It must be an ISO 639-1 (2-letter) language code. If the
76
- language translation is not supported the original holiday names
77
- will be used.
74
+ Specifies the language in which holiday names are returned.
75
+
76
+ Accepts either:
77
+
78
+ * A two-letter ISO 639-1 language code (e.g., 'en' for English, 'fr' for French),
79
+ or
80
+ * A language and entity combination using an underscore (e.g., 'en_US' for U.S.
81
+ English, 'pt_BR' for Brazilian Portuguese).
82
+
83
+ !!! warning
84
+ The provided language or locale code must be supported by the holiday
85
+ entity. Unsupported values will result in names being shown in the entity's
86
+ original language.
87
+
88
+ If not explicitly set (`language=None`), the system attempts to infer the
89
+ language from the environment's locale settings. The following environment
90
+ variables are checked, in order of precedence: LANGUAGE, LC_ALL, LC_MESSAGES, LANG.
91
+
92
+ If none of these are set or they are empty, holiday names will default to the
93
+ original language of the entity's holiday implementation.
94
+
95
+ !!! warning
96
+ This fallback mechanism may yield inconsistent results across environments
97
+ (e.g., between a terminal session and a Jupyter notebook).
98
+
99
+ To ensure consistent behavior, it is recommended to set the language parameter
100
+ explicitly. If the specified language is not supported, holiday names will remain
101
+ in the original language of the entity's holiday implementation.
102
+
103
+ This behavior will be updated and formalized in v1.
78
104
 
79
105
  categories:
80
106
  Requested holiday categories.
@@ -235,10 +261,36 @@ def financial_holidays(
235
261
  Monday). False may not work for all countries.
236
262
 
237
263
  language:
238
- The language which the returned holiday names will be translated
239
- into. It must be an ISO 639-1 (2-letter) language code. If the
240
- language translation is not supported the original holiday names
241
- will be used.
264
+ Specifies the language in which holiday names are returned.
265
+
266
+ Accepts either:
267
+
268
+ * A two-letter ISO 639-1 language code (e.g., 'en' for English, 'fr' for French),
269
+ or
270
+ * A language and entity combination using an underscore (e.g., 'en_US' for U.S.
271
+ English, 'pt_BR' for Brazilian Portuguese).
272
+
273
+ !!! warning
274
+ The provided language or locale code must be supported by the holiday
275
+ entity. Unsupported values will result in names being shown in the entity's
276
+ original language.
277
+
278
+ If not explicitly set (`language=None`), the system attempts to infer the
279
+ language from the environment's locale settings. The following environment
280
+ variables are checked, in order of precedence: LANGUAGE, LC_ALL, LC_MESSAGES, LANG.
281
+
282
+ If none of these are set or they are empty, holiday names will default to the
283
+ original language of the entity's holiday implementation.
284
+
285
+ !!! warning
286
+ This fallback mechanism may yield inconsistent results across environments
287
+ (e.g., between a terminal session and a Jupyter notebook).
288
+
289
+ To ensure consistent behavior, it is recommended to set the language parameter
290
+ explicitly. If the specified language is not supported, holiday names will remain
291
+ in the original language of the entity's holiday implementation.
292
+
293
+ This behavior will be updated and formalized in v1.
242
294
 
243
295
  Returns:
244
296
  A `HolidayBase` object matching the **market**.
holidays/version.py CHANGED
@@ -4,10 +4,10 @@
4
4
  # specific sets of holidays on the fly. It aims to make determining whether a
5
5
  # specific date is a holiday as fast and flexible as possible.
6
6
  #
7
- # Authors: Vacanza Team and individual contributors (see AUTHORS.md file)
7
+ # Authors: Vacanza Team and individual contributors (see CONTRIBUTORS file)
8
8
  # dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
9
9
  # ryanss <ryanssdev@icloud.com> (c) 2014-2017
10
10
  # Website: https://github.com/vacanza/holidays
11
11
  # License: MIT (see LICENSE file)
12
12
 
13
- __version__ = "0.70"
13
+ __version__ = "0.72"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: holidays
3
- Version: 0.70
3
+ Version: 0.72
4
4
  Summary: Open World Holidays Framework
5
5
  Author: Vacanza Team
6
6
  Maintainer: Arkadii Yakovets, Panpakorn Siripanich, Serhii Murza
@@ -30,8 +30,8 @@ Classifier: Topic :: Office/Business :: Scheduling
30
30
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
31
31
  Requires-Python: >=3.9
32
32
  Description-Content-Type: text/markdown
33
+ License-File: CONTRIBUTORS
33
34
  License-File: LICENSE
34
- License-File: AUTHORS.md
35
35
  Requires-Dist: python-dateutil
36
36
  Dynamic: license-file
37
37
 
@@ -73,6 +73,12 @@ specific date is a holiday as fast and flexible as possible.
73
73
  <a href="https://doi.org/10.5281/zenodo.14884702"><img src="https://img.shields.io/badge/DOI-10.5281/zenodo.14884702-41B5BE?style=flat" alt="Open World Holidays Framework DOI"></a>
74
74
  </td>
75
75
  </tr>
76
+ <tr>
77
+ <td>Snyk</td>
78
+ <td>
79
+ <a href="https://snyk.io/advisor/python/holidays/"><img src="https://snyk.io/advisor/python/holidays/badge.svg" alt="Open World Holidays Package Health Score"></a>
80
+ </td>
81
+ </tr>
76
82
  </table>
77
83
 
78
84
  ## Install
@@ -136,7 +142,7 @@ and detailed information.
136
142
 
137
143
  ## Available Countries
138
144
 
139
- We currently support 165 country codes. The standard way to refer to a country is by using its [ISO
145
+ We currently support 171 country codes. The standard way to refer to a country is by using its [ISO
140
146
  3166-1 alpha-2 code](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes), the same used
141
147
  for domain names, and for a subdivision its [ISO 3166-2
142
148
  code](https://en.wikipedia.org/wiki/ISO_3166-2). Some countries have common or foreign names or
@@ -208,7 +214,7 @@ any) in brackets, available languages and additional holiday categories. All cou
208
214
  <tr>
209
215
  <td>Andorra</td>
210
216
  <td>AD</td>
211
- <td>Parishes: 02, 03, 04, 05, 06, 07, 08</td>
217
+ <td>Parishes: 02 (Canillo), 03 (Encamp), 04 (La Massana), 05 (Ordino), 06 (Sant Julià de Lòria), 07 (Andorra la Vella), 08 (Escaldes-Engordany)</td>
212
218
  <td></td>
213
219
  <td></td>
214
220
  </tr>
@@ -320,7 +326,7 @@ any) in brackets, available languages and additional holiday categories. All cou
320
326
  <tr>
321
327
  <td>Bolivia</td>
322
328
  <td>BO</td>
323
- <td>Departments: B, C, H, L, N, O, P, S, T</td>
329
+ <td>Departments: B (El Beni), C (Cochabamba), H (Chuquisaca), L (La Paz), N (Pando), O (Oruro), P (Potosí), S (Santa Cruz), T (Tarija)</td>
324
330
  <td>en_US, <strong>es</strong>, uk</td>
325
331
  <td></td>
326
332
  </tr>
@@ -390,7 +396,7 @@ any) in brackets, available languages and additional holiday categories. All cou
390
396
  <tr>
391
397
  <td>Canada</td>
392
398
  <td>CA</td>
393
- <td>Provinces and territories: AB, BC, MB, NB, NL, NS, NT, NU, ON, PE, QC, SK, YT</td>
399
+ <td>Provinces and territories: AB (Alberta), BC (British Columbia, Colombie-Britannique), MB (Manitoba), NB (New Brunswick, Nouveau-Brunswick), NL (Newfoundland and Labrador, Terre-Neuve-et-Labrador), NS (Nova Scotia, Nouvelle-Écosse), NT (Northwest Territories, Territoires du Nord-Ouest), NU (Nunavut), ON (Ontario), PE (Prince Edward Island, Île-du-Prince-Édouard), QC (Quebec, Québec), SK (Saskatchewan), YT (Yukon)</td>
394
400
  <td>ar, <strong>en_CA</strong>, en_US, fr, th</td>
395
401
  <td>GOVERNMENT, OPTIONAL</td>
396
402
  </tr>
@@ -404,7 +410,7 @@ any) in brackets, available languages and additional holiday categories. All cou
404
410
  <tr>
405
411
  <td>Chile</td>
406
412
  <td>CL</td>
407
- <td>Regions: AI, AN, AP, AR, AT, BI, CO, LI, LL, LR, MA, ML, NB, RM, TA, VS</td>
413
+ <td>Regions: AI (Aisén del General Carlos Ibañez del Campo), AN (Antofagasta), AP (Arica y Parinacota), AR (La Araucanía), AT (Atacama), BI (Biobío), CO (Coquimbo), LI (Libertador General Bernardo O'Higgins), LL (Los Lagos), LR (Los Ríos), MA (Magallanes), ML (Maule), NB (Ñuble), RM (Región Metropolitana de Santiago), TA (Tarapacá), VS (Valparaíso)</td>
408
414
  <td>en_US, <strong>es</strong>, uk</td>
409
415
  <td>BANK</td>
410
416
  </tr>
@@ -538,8 +544,8 @@ any) in brackets, available languages and additional holiday categories. All cou
538
544
  <td>Ethiopia</td>
539
545
  <td>ET</td>
540
546
  <td></td>
541
- <td><strong>am</strong>, ar, en_US</td>
542
- <td></td>
547
+ <td><strong>am</strong>, ar, en_ET, en_US</td>
548
+ <td>WORKDAY</td>
543
549
  </tr>
544
550
  <tr>
545
551
  <td>Fiji</td>
@@ -563,6 +569,13 @@ any) in brackets, available languages and additional holiday categories. All cou
563
569
  <td></td>
564
570
  </tr>
565
571
  <tr>
572
+ <td>French Southern Territories</td>
573
+ <td>TF</td>
574
+ <td></td>
575
+ <td>en_US, <strong>fr</strong>, uk</td>
576
+ <td></td>
577
+ </tr>
578
+ <tr>
566
579
  <td>Gabon</td>
567
580
  <td>GA</td>
568
581
  <td></td>
@@ -579,7 +592,7 @@ any) in brackets, available languages and additional holiday categories. All cou
579
592
  <tr>
580
593
  <td>Germany</td>
581
594
  <td>DE</td>
582
- <td>States: BB (Brandenburg), BE (Berlin), BW (Baden-Württemberg), BY (Bayern), HB (Bremen), HE (Hessen), HH (Hamburg), MV (Mecklenburg-Vorpommern), NI (Niedersachsen), NW (Nordrhein-Westfalen), RP (Rheinland-Pfalz), SH (Schleswig-Holstein), SL (Saarland), SN (Sachsen), ST (Sachsen-Anhalt), TH (Thüringen)</td>
595
+ <td>Lands: BB (Brandenburg), BE (Berlin), BW (Baden-Württemberg), BY (Bayern), HB (Bremen), HE (Hessen), HH (Hamburg), MV (Mecklenburg-Vorpommern), NI (Niedersachsen), NW (Nordrhein-Westfalen), RP (Rheinland-Pfalz), SH (Schleswig-Holstein), SL (Saarland), SN (Sachsen), ST (Sachsen-Anhalt), TH (Thüringen)</td>
583
596
  <td><strong>de</strong>, en_US, th, uk</td>
584
597
  <td>CATHOLIC</td>
585
598
  </tr>
@@ -713,7 +726,7 @@ any) in brackets, available languages and additional holiday categories. All cou
713
726
  <tr>
714
727
  <td>Italy</td>
715
728
  <td>IT</td>
716
- <td>Provinces: AG (Agrigento), AL (Alessandria), AN (Ancona), AO (Aosta), AP (Ascoli Piceno), AQ (L'Aquila), AR (Arezzo), AT (Asti), AV (Avellino), BA (Bari), BG (Bergamo), BI (Biella), BL (Belluno), BN (Benevento), BO (Bologna), BR (Brindisi), BS (Brescia), BT (Barletta-Andria-Trani), BZ (Bolzano), CA (Cagliari), CB (Campobasso), CE (Caserta), CH (Chieti), CL (Caltanissetta), CN (Cuneo), CO (Como), CR (Cremona), CS (Cosenza), CT (Catania), CZ (Catanzaro), EN (Enna), FC (Forli-Cesena, Forlì-Cesena), FE (Ferrara), FG (Foggia), FI (Firenze), FM (Fermo), FR (Frosinone), GE (Genova), GO (Gorizia), GR (Grosseto), IM (Imperia), IS (Isernia), KR (Crotone), LC (Lecco), LE (Lecce), LI (Livorno), LO (Lodi), LT (Latina), LU (Lucca), MB (Monza e Brianza), MC (Macerata), ME (Messina), MI (Milano), MN (Mantova), MO (Modena), MS (Massa-Carrara), MT (Matera), NA (Napoli), NO (Novara), NU (Nuoro), OR (Oristano), PA (Palermo), PC (Piacenza), PD (Padova), PE (Pescara), PG (Perugia), PI (Pisa), PN (Pordenone), PO (Prato), PR (Parma), PT (Pistoia), PU (Pesaro e Urbino), PV (Pavia), PZ (Potenza), RA (Ravenna), RC (Reggio Calabria), RE (Reggio Emilia), RG (Ragusa), RI (Rieti), RM (Roma), RN (Rimini), RO (Rovigo), SA (Salerno), SI (Siena), SO (Sondrio), SP (La Spezia), SR (Siracusa), SS (Sassari), SU (Sud Sardegna), SV (Savona), TA (Taranto), TE (Teramo), TN (Trento), TO (Torino), TP (Trapani), TR (Terni), TS (Trieste), TV (Treviso), UD (Udine), VA (Varese), VB (Verbano-Cusio-Ossola), VC (Vercelli), VE (Venezia), VI (Vicenza), VR (Verona), VT (Viterbo), VV (Vibo Valentia). Cities: Andria, Barletta, Cesena, Forli (Forlì), Pesaro, Trani, Urbino</td>
729
+ <td>Provinces: AG (Agrigento), AL (Alessandria), AN (Ancona), AO (Aosta), AP (Ascoli Piceno), AQ (L'Aquila), AR (Arezzo), AT (Asti), AV (Avellino), BA (Bari), BG (Bergamo), BI (Biella), BL (Belluno), BN (Benevento), BO (Bologna), BR (Brindisi), BS (Brescia), BT (Barletta-Andria-Trani), BZ (Bolzano), CA (Cagliari), CB (Campobasso), CE (Caserta), CH (Chieti), CL (Caltanissetta), CN (Cuneo), CO (Como), CR (Cremona), CS (Cosenza), CT (Catania), CZ (Catanzaro), EN (Enna), FC (Forli-Cesena, Forlì-Cesena), FE (Ferrara), FG (Foggia), FI (Firenze), FM (Fermo), FR (Frosinone), GE (Genova), GO (Gorizia), GR (Grosseto), IM (Imperia), IS (Isernia), KR (Crotone), LC (Lecco), LE (Lecce), LI (Livorno), LO (Lodi), LT (Latina), LU (Lucca), MB (Monza e Brianza), MC (Macerata), ME (Messina), MI (Milano), MN (Mantova), MO (Modena), MS (Massa-Carrara), MT (Matera), NA (Napoli), NO (Novara), NU (Nuoro), OR (Oristano), PA (Palermo), PC (Piacenza), PD (Padova), PE (Pescara), PG (Perugia), PI (Pisa), PN (Pordenone), PO (Prato), PR (Parma), PT (Pistoia), PU (Pesaro e Urbino), PV (Pavia), PZ (Potenza), RA (Ravenna), RC (Reggio Calabria), RE (Reggio Emilia), RG (Ragusa), RI (Rieti), RM (Roma), RN (Rimini), RO (Rovigo), SA (Salerno), SI (Siena), SO (Sondrio), SP (La Spezia), SR (Siracusa), SS (Sassari), SU (Sud Sardegna), SV (Savona), TA (Taranto), TE (Teramo), TN (Trento), TO (Torino), TP (Trapani), TR (Terni), TS (Trieste), TV (Treviso), UD (Udine), VA (Varese), VB (Verbano-Cusio-Ossola), VC (Vercelli), VE (Venezia), VI (Vicenza), VR (Verona), VT (Viterbo), VV (Vibo Valentia); cities: Andria, Barletta, Cesena, Forli (Forlì), Pesaro, Trani, Urbino</td>
717
730
  <td></td>
718
731
  <td></td>
719
732
  </tr>
@@ -846,7 +859,7 @@ any) in brackets, available languages and additional holiday categories. All cou
846
859
  <tr>
847
860
  <td>Malaysia</td>
848
861
  <td>MY</td>
849
- <td>States and federal territories: 01 (Johor, JHR), 02 (Kedah, KDH), 03 (Kelantan, KTN), 04 (Melaka, MLK), 05 (Negeri Sembilan, NSN), 06 (Pahang, PHG), 07 (Pulau Pinang, PNG), 08 (Perak, PRK), 09 (Perlis, PLS), 10 (Selangor, SGR), 11 (Terengganu, TRG), 12 (Sabah, SBH), 13 (Sarawak, SWK), 14 (WP Kuala Lumpur, KUL), 15 (WP Labuan, LBN), 16 (WP Putrajaya, PJY)</td>
862
+ <td>States and federal territories: 01 (Johor, JHR), 02 (Kedah, KDH), 03 (Kelantan, KTN), 04 (Melaka, MLK), 05 (Negeri Sembilan, NSN), 06 (Pahang, PHG), 07 (Pulau Pinang, PNG), 08 (Perak, PRK), 09 (Perlis, PLS), 10 (Selangor, SGR), 11 (Terengganu, TRG), 12 (Sabah, SBH), 13 (Sarawak, SWK), 14 (Wilayah Persekutuan Kuala Lumpur, KUL), 15 (Wilayah Persekutuan Labuan, LBN), 16 (Wilayah Persekutuan Putrajaya, PJY)</td>
850
863
  <td>en_US, <strong>ms_MY</strong>, th</td>
851
864
  <td></td>
852
865
  </tr>
@@ -937,7 +950,7 @@ any) in brackets, available languages and additional holiday categories. All cou
937
950
  <tr>
938
951
  <td>New Zealand</td>
939
952
  <td>NZ</td>
940
- <td>Regions and Special Island Authorities: AUK (Auckland, Tāmaki-Makaurau, AU), BOP (Bay of Plenty, Toi Moana, BP), CAN (Canterbury, Waitaha, CA), CIT (Chatham Islands Territory, Chatham Islands, Wharekauri, CI), GIS (Gisborne, Te Tairāwhiti, GI), HKB (Hawke's Bay, Te Matau-a-Māui, HB), MBH (Marlborough, MA), MWT (Manawatū Whanganui, Manawatū-Whanganui, MW), NSN (Nelson, Whakatū, NE), NTL (Northland, Te Taitokerau, NO), OTA (Otago, Ō Tākou, OT), STL (Southland, Te Taiao Tonga, SO), TAS (Tasman, Te tai o Aorere, TS), TKI (Taranaki, TK), WGN (Greater Wellington, Te Pane Matua Taiao, Wellington, Te Whanganui-a-Tara, WG), WKO (Waikato, WK), WTC (West Coast, Te Tai o Poutini, WC). Subregions: South Canterbury</td>
953
+ <td>Regions and Special Island Authorities: AUK (Auckland, Tāmaki-Makaurau, AU), BOP (Bay of Plenty, Toi Moana, BP), CAN (Canterbury, Waitaha, CA), CIT (Chatham Islands Territory, Chatham Islands, Wharekauri, CI), GIS (Gisborne, Te Tairāwhiti, GI), HKB (Hawke's Bay, Te Matau-a-Māui, HB), MBH (Marlborough, MA), MWT (Manawatū Whanganui, Manawatū-Whanganui, MW), NSN (Nelson, Whakatū, NE), NTL (Northland, Te Taitokerau, NO), OTA (Otago, Ō Tākou, OT), STL (Southland, Te Taiao Tonga, SO), TAS (Tasman, Te tai o Aorere, TS), TKI (Taranaki, TK), WGN (Greater Wellington, Te Pane Matua Taiao, Wellington, Te Whanganui-a-Tara, WG), WKO (Waikato, WK), WTC (West Coast, Te Tai o Poutini, WC); subregions: South Canterbury</td>
941
954
  <td></td>
942
955
  <td></td>
943
956
  </tr>
@@ -977,6 +990,13 @@ any) in brackets, available languages and additional holiday categories. All cou
977
990
  <td></td>
978
991
  </tr>
979
992
  <tr>
993
+ <td>Oman</td>
994
+ <td>OM</td>
995
+ <td></td>
996
+ <td><strong>ar</strong>, en_US</td>
997
+ <td></td>
998
+ </tr>
999
+ <tr>
980
1000
  <td>Pakistan</td>
981
1001
  <td>PK</td>
982
1002
  <td></td>
@@ -1096,6 +1116,13 @@ any) in brackets, available languages and additional holiday categories. All cou
1096
1116
  <td></td>
1097
1117
  </tr>
1098
1118
  <tr>
1119
+ <td>Sao Tome and Principe</td>
1120
+ <td>ST</td>
1121
+ <td>Districts and Autonomous Region: 01 (Água Grande), 02 (Cantagalo), 03 (Caué), 04 (Lembá), 05 (Lobata), 06 (Mé-Zóchi), P (Príncipe)</td>
1122
+ <td>en_US, <strong>pt_ST</strong></td>
1123
+ <td></td>
1124
+ </tr>
1125
+ <tr>
1099
1126
  <td>Saudi Arabia</td>
1100
1127
  <td>SA</td>
1101
1128
  <td></td>
@@ -1117,6 +1144,13 @@ any) in brackets, available languages and additional holiday categories. All cou
1117
1144
  <td></td>
1118
1145
  </tr>
1119
1146
  <tr>
1147
+ <td>Sierra Leone</td>
1148
+ <td>SL</td>
1149
+ <td></td>
1150
+ <td><strong>en_SL</strong>, en_US</td>
1151
+ <td></td>
1152
+ </tr>
1153
+ <tr>
1120
1154
  <td>Singapore</td>
1121
1155
  <td>SG</td>
1122
1156
  <td></td>
@@ -1154,7 +1188,7 @@ any) in brackets, available languages and additional holiday categories. All cou
1154
1188
  <tr>
1155
1189
  <td>Spain</td>
1156
1190
  <td>ES</td>
1157
- <td>Autonomous communities: AN, AR, AS, CB, CE, CL, CM, CN, CT, EX, GA, IB, MC, MD, ML, NC, PV, RI, VC</td>
1191
+ <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>
1158
1192
  <td>en_US, <strong>es</strong>, uk</td>
1159
1193
  <td></td>
1160
1194
  </tr>
@@ -1166,6 +1200,13 @@ any) in brackets, available languages and additional holiday categories. All cou
1166
1200
  <td>BANK, GOVERNMENT, WORKDAY</td>
1167
1201
  </tr>
1168
1202
  <tr>
1203
+ <td>Suriname</td>
1204
+ <td>SR</td>
1205
+ <td></td>
1206
+ <td>en_US, <strong>nl</strong></td>
1207
+ <td></td>
1208
+ </tr>
1209
+ <tr>
1169
1210
  <td>Sweden</td>
1170
1211
  <td>SE</td>
1171
1212
  <td></td>
@@ -1175,7 +1216,7 @@ any) in brackets, available languages and additional holiday categories. All cou
1175
1216
  <tr>
1176
1217
  <td>Switzerland</td>
1177
1218
  <td>CH</td>
1178
- <td>Cantons: AG, AI, AR, BL, BS, BE, FR, GE, GL, GR, JU, LU, NE, NW, OW, SG, SH, SZ, SO, TG, TI, UR, VD, VS, ZG, ZH</td>
1219
+ <td>Cantons: AG (Aargau), AI (Appenzell Innerrhoden), AR (Appenzell Ausserrhoden), BE (Bern, Berne), BL (Basel-Landschaft), BS (Basel-Stadt), FR (Freiburg, Fribourg), GE (Genève), GL (Glarus), GR (Graubünden, Grigioni, Grischun), JU (Jura), LU (Luzern), NE (Neuchâtel), NW (Nidwalden), OW (Obwalden), SG (Sankt Gallen), SH (Schaffhausen), SO (Solothurn), SZ (Schwyz), TG (Thurgau), TI (Ticino), UR (Uri), VD (Vaud), VS (Valais, Wallis), ZG (Zug), ZH (Zürich)</td>
1179
1220
  <td><strong>de</strong>, en_US, fr, it, uk</td>
1180
1221
  <td>HALF_DAY, OPTIONAL</td>
1181
1222
  </tr>
@@ -1215,6 +1256,13 @@ any) in brackets, available languages and additional holiday categories. All cou
1215
1256
  <td></td>
1216
1257
  </tr>
1217
1258
  <tr>
1259
+ <td>Trinidad and Tobago</td>
1260
+ <td>TT</td>
1261
+ <td></td>
1262
+ <td><strong>en_TT</strong>, en_US</td>
1263
+ <td>OPTIONAL</td>
1264
+ </tr>
1265
+ <tr>
1218
1266
  <td>Tunisia</td>
1219
1267
  <td>TN</td>
1220
1268
  <td></td>
@@ -1266,7 +1314,7 @@ any) in brackets, available languages and additional holiday categories. All cou
1266
1314
  <tr>
1267
1315
  <td>United States of America (the)</td>
1268
1316
  <td>US</td>
1269
- <td>States and territories: AK, AL, AR, AS, AZ, CA, CO, CT, DC, DE, FL, GA, GU, HI, IA, ID, IL, IN, KS, KY, LA, MA, MD, ME, MI, MN, MO, MP, MS, MT, NC, ND, NE, NH, NJ, NM, NV, NY, OH, OK, OR, PA, PR, RI, SC, SD, TN, TX, UM, UT, VA, VI, VT, WA, WI, WV, WY</td>
1317
+ <td>States and territories: AK (Alaska), AL (Alabama), AR (Arkansas), AS (American Samoa), AZ (Arizona), CA (California), CO (Colorado), CT (Connecticut), DC (District of Columbia), DE (Delaware), FL (Florida), GA (Georgia), GU (Guam), HI (Hawaii), IA (Iowa), ID (Idaho), IL (Illinois), IN (Indiana), KS (Kansas), KY (Kentucky), LA (Louisiana), MA (Massachusetts), MD (Maryland), ME (Maine), MI (Michigan), MN (Minnesota), MO (Missouri), MP (Northern Mariana Islands), MS (Mississippi), MT (Montana), NC (North Carolina), ND (North Dakota), NE (Nebraska), NH (New Hampshire), NJ (New Jersey), NM (New Mexico), NV (Nevada), NY (New York), OH (Ohio), OK (Oklahoma), OR (Oregon), PA (Pennsylvania), PR (Puerto Rico), RI (Rhode Island), SC (South Carolina), SD (South Dakota), TN (Tennessee), TX (Texas), UM (United States Minor Outlying Islands), UT (Utah), VA (Virginia), VI (Virgin Islands, U.S.), VT (Vermont), WA (Washington), WI (Wisconsin), WV (West Virginia), WY (Wyoming)</td>
1270
1318
  <td></td>
1271
1319
  <td>GOVERNMENT, UNOFFICIAL</td>
1272
1320
  </tr>