holidays 0.69__py3-none-any.whl → 0.71__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 (249) hide show
  1. holidays/__init__.py +1 -1
  2. holidays/calendars/__init__.py +1 -1
  3. holidays/calendars/balinese_saka.py +3 -3
  4. holidays/calendars/buddhist.py +1 -1
  5. holidays/calendars/chinese.py +1 -1
  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 +1 -1
  10. holidays/calendars/islamic.py +161 -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 +309 -257
  16. holidays/constants.py +2 -1
  17. holidays/countries/__init__.py +10 -1
  18. holidays/countries/afghanistan.py +11 -7
  19. holidays/countries/albania.py +10 -7
  20. holidays/countries/algeria.py +10 -10
  21. holidays/countries/american_samoa.py +6 -4
  22. holidays/countries/andorra.py +5 -4
  23. holidays/countries/angola.py +15 -14
  24. holidays/countries/antigua_and_barbuda.py +145 -0
  25. holidays/countries/argentina.py +787 -169
  26. holidays/countries/armenia.py +5 -6
  27. holidays/countries/aruba.py +11 -9
  28. holidays/countries/australia.py +21 -20
  29. holidays/countries/austria.py +3 -1
  30. holidays/countries/azerbaijan.py +24 -19
  31. holidays/countries/bahamas.py +13 -11
  32. holidays/countries/bahrain.py +8 -7
  33. holidays/countries/bangladesh.py +5 -4
  34. holidays/countries/barbados.py +11 -9
  35. holidays/countries/belarus.py +15 -15
  36. holidays/countries/belgium.py +8 -6
  37. holidays/countries/belize.py +7 -6
  38. holidays/countries/bolivia.py +12 -11
  39. holidays/countries/bosnia_and_herzegovina.py +15 -11
  40. holidays/countries/botswana.py +8 -6
  41. holidays/countries/brazil.py +8 -7
  42. holidays/countries/brunei.py +50 -62
  43. holidays/countries/bulgaria.py +9 -10
  44. holidays/countries/burkina_faso.py +8 -5
  45. holidays/countries/burundi.py +13 -12
  46. holidays/countries/cambodia.py +15 -24
  47. holidays/countries/cameroon.py +10 -7
  48. holidays/countries/canada.py +13 -12
  49. holidays/countries/chad.py +9 -6
  50. holidays/countries/chile.py +29 -28
  51. holidays/countries/china.py +39 -38
  52. holidays/countries/colombia.py +15 -20
  53. holidays/countries/congo.py +6 -7
  54. holidays/countries/costa_rica.py +11 -10
  55. holidays/countries/croatia.py +8 -5
  56. holidays/countries/cuba.py +30 -27
  57. holidays/countries/curacao.py +6 -4
  58. holidays/countries/cyprus.py +4 -5
  59. holidays/countries/czechia.py +7 -6
  60. holidays/countries/denmark.py +5 -6
  61. holidays/countries/djibouti.py +7 -3
  62. holidays/countries/dominica.py +18 -16
  63. holidays/countries/dominican_republic.py +6 -4
  64. holidays/countries/ecuador.py +5 -4
  65. holidays/countries/egypt.py +6 -11
  66. holidays/countries/el_salvador.py +6 -5
  67. holidays/countries/estonia.py +3 -1
  68. holidays/countries/eswatini.py +6 -4
  69. holidays/countries/ethiopia.py +20 -11
  70. holidays/countries/fiji.py +183 -0
  71. holidays/countries/finland.py +11 -10
  72. holidays/countries/france.py +7 -10
  73. holidays/countries/french_southern_territories.py +53 -0
  74. holidays/countries/gabon.py +11 -8
  75. holidays/countries/georgia.py +7 -7
  76. holidays/countries/germany.py +11 -11
  77. holidays/countries/ghana.py +10 -6
  78. holidays/countries/greece.py +4 -5
  79. holidays/countries/greenland.py +5 -6
  80. holidays/countries/guam.py +6 -4
  81. holidays/countries/guatemala.py +7 -9
  82. holidays/countries/guernsey.py +37 -34
  83. holidays/countries/guinea.py +182 -0
  84. holidays/countries/haiti.py +6 -5
  85. holidays/countries/honduras.py +8 -4
  86. holidays/countries/hongkong.py +11 -8
  87. holidays/countries/hungary.py +26 -23
  88. holidays/countries/iceland.py +5 -4
  89. holidays/countries/india.py +14 -10
  90. holidays/countries/indonesia.py +57 -53
  91. holidays/countries/iran.py +12 -9
  92. holidays/countries/ireland.py +5 -4
  93. holidays/countries/isle_of_man.py +2 -2
  94. holidays/countries/israel.py +4 -5
  95. holidays/countries/italy.py +5 -4
  96. holidays/countries/ivory_coast.py +156 -0
  97. holidays/countries/jamaica.py +6 -4
  98. holidays/countries/japan.py +5 -5
  99. holidays/countries/jersey.py +29 -26
  100. holidays/countries/jordan.py +9 -6
  101. holidays/countries/kazakhstan.py +66 -51
  102. holidays/countries/kenya.py +22 -18
  103. holidays/countries/kuwait.py +10 -7
  104. holidays/countries/kyrgyzstan.py +7 -6
  105. holidays/countries/laos.py +21 -29
  106. holidays/countries/latvia.py +7 -5
  107. holidays/countries/lesotho.py +6 -5
  108. holidays/countries/liechtenstein.py +5 -5
  109. holidays/countries/lithuania.py +4 -5
  110. holidays/countries/luxembourg.py +5 -3
  111. holidays/countries/macau.py +32 -26
  112. holidays/countries/madagascar.py +5 -4
  113. holidays/countries/malawi.py +6 -4
  114. holidays/countries/malaysia.py +29 -19
  115. holidays/countries/maldives.py +10 -7
  116. holidays/countries/malta.py +10 -19
  117. holidays/countries/marshall_islands.py +6 -4
  118. holidays/countries/mauritania.py +9 -6
  119. holidays/countries/mexico.py +8 -7
  120. holidays/countries/moldova.py +6 -4
  121. holidays/countries/monaco.py +6 -4
  122. holidays/countries/montenegro.py +10 -7
  123. holidays/countries/morocco.py +9 -8
  124. holidays/countries/mozambique.py +3 -1
  125. holidays/countries/namibia.py +7 -5
  126. holidays/countries/netherlands.py +6 -6
  127. holidays/countries/new_zealand.py +3 -1
  128. holidays/countries/nicaragua.py +6 -5
  129. holidays/countries/nigeria.py +9 -5
  130. holidays/countries/north_macedonia.py +9 -5
  131. holidays/countries/northern_mariana_islands.py +6 -4
  132. holidays/countries/norway.py +15 -15
  133. holidays/countries/oman.py +185 -0
  134. holidays/countries/pakistan.py +48 -17
  135. holidays/countries/palau.py +13 -11
  136. holidays/countries/panama.py +9 -8
  137. holidays/countries/papua_new_guinea.py +25 -21
  138. holidays/countries/paraguay.py +10 -9
  139. holidays/countries/peru.py +4 -5
  140. holidays/countries/philippines.py +25 -21
  141. holidays/countries/poland.py +6 -5
  142. holidays/countries/portugal.py +13 -15
  143. holidays/countries/puerto_rico.py +6 -4
  144. holidays/countries/qatar.py +172 -0
  145. holidays/countries/romania.py +6 -4
  146. holidays/countries/russia.py +6 -4
  147. holidays/countries/saint_kitts_and_nevis.py +24 -22
  148. holidays/countries/saint_lucia.py +8 -7
  149. holidays/countries/samoa.py +7 -6
  150. holidays/countries/san_marino.py +4 -3
  151. holidays/countries/saudi_arabia.py +11 -15
  152. holidays/countries/serbia.py +3 -4
  153. holidays/countries/seychelles.py +22 -26
  154. holidays/countries/sierra_leone.py +149 -0
  155. holidays/countries/singapore.py +29 -39
  156. holidays/countries/slovakia.py +6 -5
  157. holidays/countries/slovenia.py +7 -6
  158. holidays/countries/south_africa.py +8 -6
  159. holidays/countries/south_korea.py +39 -47
  160. holidays/countries/spain.py +25 -24
  161. holidays/countries/sri_lanka.py +46 -42
  162. holidays/countries/suriname.py +227 -0
  163. holidays/countries/sweden.py +20 -19
  164. holidays/countries/switzerland.py +6 -5
  165. holidays/countries/taiwan.py +52 -49
  166. holidays/countries/tanzania.py +28 -27
  167. holidays/countries/thailand.py +134 -142
  168. holidays/countries/timor_leste.py +20 -18
  169. holidays/countries/tonga.py +46 -42
  170. holidays/countries/tunisia.py +5 -3
  171. holidays/countries/turkey.py +11 -9
  172. holidays/countries/tuvalu.py +12 -11
  173. holidays/countries/ukraine.py +54 -54
  174. holidays/countries/united_arab_emirates.py +37 -30
  175. holidays/countries/united_kingdom.py +7 -6
  176. holidays/countries/united_states.py +50 -55
  177. holidays/countries/united_states_minor_outlying_islands.py +6 -4
  178. holidays/countries/united_states_virgin_islands.py +6 -4
  179. holidays/countries/uruguay.py +10 -9
  180. holidays/countries/uzbekistan.py +10 -7
  181. holidays/countries/vanuatu.py +7 -5
  182. holidays/countries/vatican_city.py +16 -15
  183. holidays/countries/venezuela.py +11 -14
  184. holidays/countries/vietnam.py +15 -11
  185. holidays/countries/zambia.py +8 -6
  186. holidays/countries/zimbabwe.py +6 -4
  187. holidays/deprecations/v1_incompatibility.py +1 -1
  188. holidays/financial/__init__.py +1 -1
  189. holidays/financial/brasil_bolsa_balcao.py +14 -13
  190. holidays/financial/european_central_bank.py +7 -6
  191. holidays/financial/ice_futures_europe.py +7 -6
  192. holidays/financial/ny_stock_exchange.py +13 -10
  193. holidays/groups/__init__.py +1 -1
  194. holidays/groups/balinese_saka.py +1 -1
  195. holidays/groups/buddhist.py +1 -1
  196. holidays/groups/chinese.py +1 -1
  197. holidays/groups/christian.py +1 -1
  198. holidays/groups/custom.py +1 -1
  199. holidays/groups/eastern.py +1 -1
  200. holidays/groups/hebrew.py +1 -1
  201. holidays/groups/hindu.py +1 -1
  202. holidays/groups/international.py +1 -1
  203. holidays/groups/islamic.py +22 -1
  204. holidays/groups/persian.py +1 -1
  205. holidays/groups/sinhala.py +1 -1
  206. holidays/groups/thai.py +1 -7
  207. holidays/helpers.py +1 -1
  208. holidays/holiday_base.py +393 -245
  209. holidays/ical.py +228 -0
  210. holidays/locale/ar/LC_MESSAGES/OM.mo +0 -0
  211. holidays/locale/ar_QA/LC_MESSAGES/QA.mo +0 -0
  212. holidays/locale/en_CI/LC_MESSAGES/CI.mo +0 -0
  213. holidays/locale/en_PK/LC_MESSAGES/PK.mo +0 -0
  214. holidays/locale/en_SL/LC_MESSAGES/SL.mo +0 -0
  215. holidays/locale/en_TL/LC_MESSAGES/TL.mo +0 -0
  216. holidays/locale/en_US/LC_MESSAGES/AR.mo +0 -0
  217. holidays/locale/en_US/LC_MESSAGES/CI.mo +0 -0
  218. holidays/locale/en_US/LC_MESSAGES/GN.mo +0 -0
  219. holidays/locale/en_US/LC_MESSAGES/OM.mo +0 -0
  220. holidays/locale/en_US/LC_MESSAGES/PK.mo +0 -0
  221. holidays/locale/en_US/LC_MESSAGES/QA.mo +0 -0
  222. holidays/locale/en_US/LC_MESSAGES/SL.mo +0 -0
  223. holidays/locale/en_US/LC_MESSAGES/SR.mo +0 -0
  224. holidays/locale/en_US/LC_MESSAGES/TF.mo +0 -0
  225. holidays/locale/en_US/LC_MESSAGES/TL.mo +0 -0
  226. holidays/locale/es/LC_MESSAGES/AR.mo +0 -0
  227. holidays/locale/fr/LC_MESSAGES/CI.mo +0 -0
  228. holidays/locale/fr/LC_MESSAGES/GN.mo +0 -0
  229. holidays/locale/fr/LC_MESSAGES/TF.mo +0 -0
  230. holidays/locale/hi/LC_MESSAGES/IN.mo +0 -0
  231. holidays/locale/nl/LC_MESSAGES/SR.mo +0 -0
  232. holidays/locale/pt_TL/LC_MESSAGES/TL.mo +0 -0
  233. holidays/locale/tet/LC_MESSAGES/TL.mo +0 -0
  234. holidays/locale/th/LC_MESSAGES/TL.mo +0 -0
  235. holidays/locale/uk/LC_MESSAGES/AR.mo +0 -0
  236. holidays/locale/uk/LC_MESSAGES/TF.mo +0 -0
  237. holidays/locale/ur_PK/LC_MESSAGES/PK.mo +0 -0
  238. holidays/mixins.py +2 -2
  239. holidays/observed_holiday_base.py +10 -3
  240. holidays/registry.py +10 -1
  241. holidays/utils.py +203 -151
  242. holidays/version.py +2 -2
  243. holidays-0.71.dist-info/METADATA +1432 -0
  244. {holidays-0.69.dist-info → holidays-0.71.dist-info}/RECORD +248 -217
  245. {holidays-0.69.dist-info → holidays-0.71.dist-info}/WHEEL +1 -1
  246. holidays-0.69.dist-info/AUTHORS → holidays-0.71.dist-info/licenses/AUTHORS.md +9 -2
  247. {holidays-0.69.dist-info → holidays-0.71.dist-info/licenses}/LICENSE +1 -1
  248. holidays-0.69.dist-info/METADATA +0 -1085
  249. {holidays-0.69.dist-info → holidays-0.71.dist-info}/top_level.txt +0 -0
@@ -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 file)
7
+ # Authors: Vacanza Team and individual contributors (see AUTHORS.md 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
@@ -12,8 +12,16 @@
12
12
 
13
13
  from gettext import gettext as tr
14
14
 
15
+ from holidays.calendars import _CustomIslamicHolidays
15
16
  from holidays.calendars.gregorian import JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC
16
- from holidays.groups import ChristianHolidays, InternationalHolidays, StaticHolidays
17
+ from holidays.constants import ARMENIAN, BANK, GOVERNMENT, HEBREW, ISLAMIC, PUBLIC
18
+ from holidays.groups import (
19
+ ChristianHolidays,
20
+ HebrewCalendarHolidays,
21
+ InternationalHolidays,
22
+ IslamicHolidays,
23
+ StaticHolidays,
24
+ )
17
25
  from holidays.observed_holiday_base import (
18
26
  ObservedHolidayBase,
19
27
  THU_TO_NEXT_MON,
@@ -22,241 +30,743 @@ from holidays.observed_holiday_base import (
22
30
  )
23
31
 
24
32
 
25
- class Argentina(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, StaticHolidays):
26
- """
27
- A subclass of :py:class:`HolidayBase` representing public holidays
28
- in Argentina.
29
-
33
+ class Argentina(
34
+ ObservedHolidayBase,
35
+ ChristianHolidays,
36
+ HebrewCalendarHolidays,
37
+ InternationalHolidays,
38
+ IslamicHolidays,
39
+ StaticHolidays,
40
+ ):
41
+ """Argentina holidays.
30
42
 
31
43
  References:
32
-
33
- - Based on:
34
- https://es.wikipedia.org/wiki/Anexo:D%C3%ADas_feriados_en_Argentina
35
- - [Ley 24455] Belgrano and San Martin Day as third Monday
36
- https://servicios.infoleg.gob.ar/infolegInternet/anexos/0-4999/782/norma.htm
37
- - [Ley 27399] - For 2018++
38
- https://www.argentina.gob.ar/normativa/nacional/ley-27399-281835/texto
39
- - [Decreto 1585/2010] - 2011-2013 Bridge Holidays, Movable Holidays Law
40
- https://www.argentina.gob.ar/normativa/nacional/decreto-1585-2010-174391/texto
41
- - [Decreto 1768/2013] - 2014-2016 Bridge Holidays
42
- https://www.argentina.gob.ar/normativa/nacional/decreto-1768-2013-222021/texto
43
- - [Decretos 52-80-923/2017] - 2017-2019 Bridge Holidays
44
- https://www.argentina.gob.ar/normativa/nacional/decreto-52-2017-271094/texto
45
- https://www.argentina.gob.ar/normativa/nacional/decreto-80-2017-271382/texto
46
- https://www.argentina.gob.ar/normativa/nacional/decreto-923-2017-287145
47
- - [Decreto 717/2019] - 2020 Bridge Holidays
48
- https://www.argentina.gob.ar/normativa/nacional/decreto-717-2019-330204/texto
49
- - [Decreto 297/2020] - Veteran Day moved due to Covid-19
50
- https://www.argentina.gob.ar/normativa/nacional/decreto-297-2020-335741/texto
51
- - [Decreto 947/2020] - 2021 Bridge Holidays
52
- https://www.argentina.gob.ar/normativa/nacional/decreto-947-2020-344620/texto
53
- - [Decreto 789/2021] - 2022 Bridge Holidays
54
- https://www.argentina.gob.ar/normativa/nacional/decreto-789-2021-356678/texto
55
- - [Decreto 764/2022] - 2023 Bridge Holidays
56
- https://www.argentina.gob.ar/normativa/nacional/decreto-764-2022-375264/texto
57
- - [Decreto 106/2023] - 2024 Bridge Holidays
58
- https://www.argentina.gob.ar/normativa/nacional/decreto-106-2023-395689/texto
59
- - [Decreto 1017/2024] - 2025 Bridge Holidays
60
- https://www.argentina.gob.ar/normativa/nacional/decreto-1027-2024-406417/texto
61
- - [Always Update Calendar Year Link]
62
- https://www.argentina.gob.ar/interior/feriados
63
- http://servicios.lanacion.com.ar/feriados
64
- https://www.clarin.com/feriados/
65
- - [Specific Calendar Year]
66
- https://www.argentina.gob.ar/interior/feriados-nacionales-2024
67
- https://www.argentina.gob.ar/interior/feriados-nacionales-2023
68
- https://www.argentina.gob.ar/interior/feriados-nacionales-2022
69
- https://www.argentina.gob.ar/interior/feriados-nacionales-2021
70
- https://www.argentina.gob.ar/interior/feriados-nacionales-2020
71
- https://www.cultura.gob.ar/feriados-2019-en-argentina_7326/
72
- https://servicios.lanacion.com.ar/app-mobile/feriados/2019
73
- https://servicios.lanacion.com.ar/app-mobile/feriados/2018
74
- https://servicios.lanacion.com.ar/app-mobile/feriados/2017
75
- https://servicios.lanacion.com.ar/app-mobile/feriados/2016
76
- https://servicios.lanacion.com.ar/app-mobile/feriados/2015
77
-
78
- Movable Holidays Laws:
79
-
80
- - Decreto 1584/2010: 2010-11-03
81
- - AUG 17, OCT 12, NOV 20 Holidays will always be on MON
82
- - Decreto 52/2017: 2017-01-23 (Reconfirmed in Ley 27399)
83
- - If TUE/WED - observed on previous MON
84
- - If THU/FRI - observed on next MON
44
+ * [Spanish Wikipedia](https://es.wikipedia.org/wiki/Anexo:D%C3%ADas_feriados_en_Argentina)
45
+ * [Decree-Law 2446](https://www.argentina.gob.ar/normativa/nacional/decreto_ley-2446-1956-161122/texto)
46
+ * [Law 21329](https://www.argentina.gob.ar/normativa/nacional/ley-21329-65453/texto)
47
+ * [Law 22655](https://www.argentina.gob.ar/normativa/nacional/ley-22655-140416/texto)
48
+ * [Law 22769](https://www.argentina.gob.ar/normativa/nacional/ley-22769-65454/texto)
49
+ * [Decree 901/1984](https://www.argentina.gob.ar/normativa/nacional/decreto-901-1984-65455)
50
+ * [Law 23555](https://www.argentina.gob.ar/normativa/nacional/ley-23555-20986/texto)
51
+ * [Law 24023](https://www.argentina.gob.ar/normativa/nacional/ley-24023-422/texto)
52
+ * [Law 24160](https://www.argentina.gob.ar/normativa/nacional/ley-24160-558/texto)
53
+ * [Law 24360](https://www.argentina.gob.ar/normativa/nacional/ley-24360-756/texto)
54
+ * [Law 24445](https://www.argentina.gob.ar/normativa/nacional/ley-24445-782/texto)
55
+ * [Law 24571](https://www.argentina.gob.ar/normativa/nacional/ley-24571-29129/texto)
56
+ * [Law 24757](https://www.argentina.gob.ar/normativa/nacional/ley-24757-41168/texto)
57
+ * [Law 25370](https://www.argentina.gob.ar/normativa/nacional/ley-25370-65442/texto)
58
+ * [Law 25442](https://www.argentina.gob.ar/normativa/nacional/ley-25442-67888/texto)
59
+ * [Decree 1932/2002](https://www.argentina.gob.ar/normativa/nacional/decreto-1932-2002-78207/texto)
60
+ * [Law 26085](https://www.argentina.gob.ar/normativa/nacional/ley-26085-114811/texto)
61
+ * [Law 26089](https://www.argentina.gob.ar/normativa/nacional/ley-26089-115677/texto)
62
+ * [Law 26110](https://www.argentina.gob.ar/normativa/nacional/ley-26110-117507/texto)
63
+ * [Law 26199](https://www.argentina.gob.ar/normativa/nacional/ley-26199-124099/texto)
64
+ * [Law 26416](https://www.argentina.gob.ar/normativa/nacional/ley-26416-145231/texto)
65
+ * [Decree 1584/2010](https://www.argentina.gob.ar/normativa/nacional/decreto-1584-2010-174389/texto)
66
+ * [Decree 521/2011](https://www.argentina.gob.ar/normativa/nacional/decreto-521-2011-181754/texto)
67
+ * [Decree 2226/2015](https://www.argentina.gob.ar/normativa/nacional/decreto-2226-2015-253971/texto)
68
+ * [Law 26876](https://www.argentina.gob.ar/normativa/nacional/ley-26876-218152/texto)
69
+ * [Law 27258](https://www.argentina.gob.ar/normativa/nacional/ley-27258-262574/texto)
70
+ * [Decree 52/2017](https://www.argentina.gob.ar/normativa/nacional/decreto-52-2017-271094/texto)
71
+ * [Decree 80/2017](https://www.argentina.gob.ar/normativa/nacional/decreto-80-2017-271382/texto)
72
+ * [Law 27399](https://www.argentina.gob.ar/normativa/nacional/ley-27399-281835/texto)
73
+ * [Decreto 297/2020](https://www.argentina.gob.ar/normativa/nacional/decreto-297-2020-335741/texto)
74
+ * [Collective Agreement 18/75](https://labancaria.org/convenio-colectivo-18-75/)
75
+
76
+ Subdivisions Holidays References:
77
+ * Catamarca:
78
+ * [Law 4553](https://www.argentina.gob.ar/normativa/provincial/ley-4553-123456789-0abc-defg-355-4000kvorpyel)
79
+ * [Law 5525](https://digesto.catamarca.gob.ar/ley/ley_detail/1650)
80
+ * Chubut:
81
+ * [Law I-85](https://digesto.legislaturadelchubut.gob.ar/public/rama/1/ley/85)
82
+ * [Law I-547](https://www.argentina.gob.ar/normativa/provincial/ley-547-123456789-0abc-defg-745-0001uvorpyel/actualizacion)
83
+ * Corrientes:
84
+ * [Law 5874](https://www.argentina.gob.ar/normativa/provincial/ley-5874-123456789-0abc-defg-478-5000wvorpyel/actualizacion)
85
+ * [Law 5884](https://www.argentina.gob.ar/normativa/provincial/ley-5884-123456789-0abc-defg-488-5000wvorpyel/actualizacion)
86
+ * Entre Ríos:
87
+ * [Law 7285/84](https://www.entrerios.gov.ar/dgrrhh/normativas/7285%20-%20Feriado%203%20de%20febrero.pdf)
88
+ * [Decree 4359/93](https://www.entrerios.gov.ar/dgrrhh/normativas/1993%20-%204359%20MGJE%20(San%20Miguel%20Arcangel).pdf)
89
+ * [Decree 216/2003](https://www.entrerios.gov.ar/dgrrhh/normativas/2003%20-%20216%20GOB%20(Dia%20del%20Empleado%20Publico).pdf)
90
+ * [Law 10541](https://www.argentina.gob.ar/normativa/provincial/ley-10541-123456789-0abc-defg-145-0100evorpyel/actualizacion)
91
+ * Jujuy:
92
+ * [Law 4059](https://boletinoficial.jujuy.gob.ar/?p=44711)
93
+ * [Law 4927](https://boletinoficial.jujuy.gob.ar/?p=56587)
94
+ * [Law 5005](https://boletinoficial.jujuy.gob.ar/?p=51196)
95
+ * [Law 6197](https://boletinoficial.jujuy.gob.ar/?p=204052)
96
+ * La Rioja:
97
+ * [Law 6886](https://www.argentina.gob.ar/normativa/provincial/ley-6886-123456789-0abc-defg-688-6000fvorpyel/actualizacion)
98
+ * [Law 9844](https://www.argentina.gob.ar/normativa/provincial/ley-9844-123456789-0abc-defg-448-9000fvorpyel/actualizacion)
99
+ * [Law 9955](https://www.argentina.gob.ar/normativa/provincial/ley-9955-123456789-0abc-defg-559-9000fvorpyel/actualizacion)
100
+ * [Law 10242](https://www.argentina.gob.ar/normativa/provincial/ley-10242-123456789-0abc-defg-242-0100fvorpyel/actualizacion)
101
+ * [Law 10298](https://www.argentina.gob.ar/normativa/provincial/ley-10298-123456789-0abc-defg-892-0100fvorpyel/actualizacion)
102
+ * [Law 1035](https://www.argentina.gob.ar/normativa/provincial/ley-1035-123456789-0abc-defg-153-0100fvorpyel/actualizacion)
103
+ * Mendoza:
104
+ * [Law 4081](https://www.argentina.gob.ar/normativa/provincial/ley-4081-123456789-0abc-defg-534-0000mvorpyel/actualizacion)
105
+ * Salta:
106
+ * [Law 5032](https://www.argentina.gob.ar/normativa/provincial/ley-5032-123456789-0abc-defg-230-5000avorpyel/actualizacion)
107
+ * San Juan:
108
+ * [Law 14-P](https://www.argentina.gob.ar/normativa/provincial/ley-14-123456789-0abc-defg-410-0061jvorpyel/actualizacion)
109
+ * San Luis:
110
+ * [Law II-0046-2004](https://www.argentina.gob.ar/normativa/provincial/ley-46-123456789-0abc-defg-640-0001dvorpyel/actualizacion)
111
+ * Santa Cruz:
112
+ * [Law 2882](https://www.argentina.gob.ar/normativa/provincial/ley-2882-123456789-0abc-defg-288-2000zvorpyel/actualizacion)
113
+ * [Law 3342](https://www.argentina.gob.ar/normativa/provincial/ley-3342-123456789-0abc-defg-243-3000zvorpyel/actualizacion)
114
+ * [Law 3419](https://www.argentina.gob.ar/normativa/provincial/ley-3419-123456789-0abc-defg-914-3000zvorpyel/actualizacion)
115
+ * [Law 3668](https://www.argentina.gob.ar/normativa/provincial/ley-3668-123456789-0abc-defg-866-3000zvorpyel/actualizacion)
116
+ * Tierra del Fuego:
117
+ * [Law 7/92](https://www.argentina.gob.ar/normativa/provincial/ley-7-123456789-0abc-defg-751-0000vvorpyel/actualizacion)
118
+ * [Law 1389/2021](https://www.argentina.gob.ar/normativa/provincial/ley-1389-123456789-0abc-defg-588-1000vvorpyel/actualizacion)
119
+ * Tucumán:
120
+ * [Law 1765](https://www.fet.com.ar/nota/1054/feriado-en-tucuman-24-de-setiembre)
121
+
122
+ Other sources:
123
+ * <https://biblioteca.afip.gob.ar/search/query/index.aspx>
124
+ * <https://www.argentina.gob.ar/interior/feriados>
125
+ * <http://servicios.lanacion.com.ar/feriados>
126
+ * <https://www.clarin.com/feriados/>
127
+ * <https://www.saij.gob.ar/>
128
+
129
+ Checked With:
130
+ * <https://servicios.lanacion.com.ar/app-mobile/feriados/2015>
131
+ * <https://servicios.lanacion.com.ar/app-mobile/feriados/2016>
132
+ * <https://servicios.lanacion.com.ar/app-mobile/feriados/2017>
133
+ * <https://servicios.lanacion.com.ar/app-mobile/feriados/2018>
134
+ * <https://www.argentina.gob.ar/interior/feriados-nacionales-2019>
135
+ * <https://www.argentina.gob.ar/interior/feriados-nacionales-2020>
136
+ * <https://www.argentina.gob.ar/interior/feriados-nacionales-2021>
137
+ * <https://www.argentina.gob.ar/interior/feriados-nacionales-2022>
138
+ * <https://www.argentina.gob.ar/interior/feriados-nacionales-2023>
139
+ * <https://www.argentina.gob.ar/interior/feriados-nacionales-2024>
140
+ * <https://www.argentina.gob.ar/interior/feriados-nacionales-2025>
141
+ * [Entre Ríos](https://www.entrerios.gov.ar/dgrrhh/index.php?i=7)
142
+ * [Tierra del Fuego](https://www.justierradelfuego.gov.ar/dias-no-laborables/)
143
+ * Jujuy:
144
+ * <https://agpjujuy.gob.ar/Archivos/Calendario2024.pdf>
145
+ * <https://agpjujuy.gob.ar/Archivos/Calendario2025.pdf>
85
146
  """
86
147
 
87
148
  country = "AR"
88
149
  default_language = "es"
89
150
  supported_languages = ("en_US", "es", "uk")
151
+ supported_categories = (ARMENIAN, BANK, GOVERNMENT, HEBREW, ISLAMIC, PUBLIC)
90
152
  # %s (observed).
91
153
  observed_label = tr("%s (observado)")
92
- start_year = 1801
93
-
94
- def __init__(self, *args, **kwargs):
154
+ subdivisions = (
155
+ "A", # Salta.
156
+ "B", # Buenos Aires.
157
+ "C", # Ciudad Autónoma de Buenos Aires.
158
+ "D", # San Luis.
159
+ "E", # Entre Ríos.
160
+ "F", # La Rioja.
161
+ "G", # Santiago del Estero.
162
+ "H", # Chaco.
163
+ "J", # San Juan.
164
+ "K", # Catamarca.
165
+ "L", # La Pampa.
166
+ "M", # Mendoza.
167
+ "N", # Misiones.
168
+ "P", # Formosa.
169
+ "Q", # Neuquén.
170
+ "R", # Río Negro.
171
+ "S", # Santa Fe.
172
+ "T", # Tucumán.
173
+ "U", # Chubut.
174
+ "V", # Tierra del Fuego.
175
+ "W", # Corrientes.
176
+ "X", # Córdoba.
177
+ "Y", # Jujuy.
178
+ "Z", # Santa Cruz.
179
+ )
180
+ subdivisions_aliases = {
181
+ "Salta": "A",
182
+ "Buenos Aires": "B",
183
+ "Ciudad Autónoma de Buenos Aires": "C",
184
+ "San Luis": "D",
185
+ "Entre Ríos": "E",
186
+ "La Rioja": "F",
187
+ "Santiago del Estero": "G",
188
+ "Chaco": "H",
189
+ "San Juan": "J",
190
+ "Catamarca": "K",
191
+ "La Pampa": "L",
192
+ "Mendoza": "M",
193
+ "Misiones": "N",
194
+ "Formosa": "P",
195
+ "Neuquén": "Q",
196
+ "Río Negro": "R",
197
+ "Santa Fe": "S",
198
+ "Tucumán": "T",
199
+ "Chubut": "U",
200
+ "Tierra del Fuego": "V",
201
+ "Corrientes": "W",
202
+ "Córdoba": "X",
203
+ "Jujuy": "Y",
204
+ "Santa Cruz": "Z",
205
+ }
206
+ # Decree-Law 2446.
207
+ start_year = 1957
208
+
209
+ def __init__(self, islamic_show_estimated: bool = True, *args, **kwargs):
210
+ """
211
+ Args:
212
+ islamic_show_estimated:
213
+ Whether to add "estimated" label to Islamic holidays name
214
+ if holiday date is estimated.
215
+ """
95
216
  ChristianHolidays.__init__(self)
217
+ HebrewCalendarHolidays.__init__(self)
96
218
  InternationalHolidays.__init__(self)
219
+ IslamicHolidays.__init__(
220
+ self, cls=ArgentinaIslamicHolidays, show_estimated=islamic_show_estimated
221
+ )
97
222
  StaticHolidays.__init__(self, ArgentinaStaticHolidays)
223
+ # Law 23555.
98
224
  kwargs.setdefault("observed_rule", TUE_WED_TO_PREV_MON + THU_FRI_TO_NEXT_MON)
225
+ kwargs.setdefault("observed_since", 1988)
99
226
  super().__init__(*args, **kwargs)
100
227
 
101
228
  def _populate_public_holidays(self):
102
- # Fixed Holidays
103
-
104
- # Status: In-Use.
105
-
106
229
  # New Year's Day.
107
230
  self._add_new_years_day(tr("Año Nuevo"))
108
231
 
109
- # Status: In-Use.
110
- # Started in 1956, abandoned in 1976.
111
- # Restarted in 2011 via Decreto 1584/2010.
232
+ # Established in 1957 by Decree-Law 2446.
233
+ # Abolished in 1977 by Law 21329.
112
234
 
113
- if 1956 <= self._year <= 1975 or self._year >= 2011:
114
- # Carnival Day.
115
- name = tr("Día de Carnaval")
116
- self._add_carnival_monday(name)
117
- self._add_carnival_tuesday(name)
235
+ if self._year <= 1976:
236
+ # Epiphany.
237
+ self._add_epiphany_day(tr("Día de Reyes"))
118
238
 
119
- # Status: In-Use
120
- # Started in 2006, nearly reclassified as Movable Holidays in 2017
239
+ # Established in 1956 by Decree-Law 2446.
240
+ # Abolished in 1977 by Law 21329.
241
+ # Restored in 2011 by Decree 1584/2010.
242
+
243
+ if self._year <= 1976 or self._year >= 2011:
244
+ # Carnival Monday.
245
+ self._add_carnival_monday(tr("Lunes de Carnaval"))
246
+
247
+ # Carnival Tuesday.
248
+ self._add_carnival_tuesday(tr("Martes de Carnaval"))
249
+
250
+ # Established in 2006 by Law 26085.
121
251
 
122
252
  if self._year >= 2006:
123
253
  self._add_holiday_mar_24(
124
- # Memory's National Day for the Truth and Justice.
254
+ # National Day of Remembrance for Truth and Justice.
125
255
  tr("Día Nacional de la Memoria por la Verdad y la Justicia")
126
256
  )
127
257
 
128
- # Status: In-Use.
129
- # Started in 1993 as War Veterans Day via Ley 24160.
130
- # Merged in 2001, confirmed as Fixed Holiday in 2006.
131
- # Superseded "Day of Argentine Sovereignty over the Malvinas".
132
- # Got moved temporary in 2020 (Decreto 297/2020).
258
+ # Established in 1993 by Law 24160.
259
+ # Merged in 2001 with "Day of Affirmation of Argentine Rights..." by Law 25370.
260
+ # Made fixed in 2007 by Law 26110.
261
+ # Got moved temporary in 2020 (Decree 297/2020).
133
262
 
134
263
  if self._year >= 1993:
135
264
  name = (
136
- # War Veterans Day.
265
+ # War Veteran's Day.
137
266
  tr("Día del Veterano de Guerra")
138
267
  if self._year <= 2000
139
- # Veterans Day and the Fallen in the Malvinas War.
268
+ # Veteran's Day and the Fallen in the Malvinas War.
140
269
  else tr("Día del Veterano y de los Caidos en la Guerra de Malvinas")
141
270
  )
142
271
  if self._year == 2020:
143
272
  self._add_holiday_mar_31(name)
144
273
  else:
145
- self._add_holiday_apr_2(name)
274
+ apr_2 = self._add_holiday_apr_2(name)
275
+ if self._year <= 2006:
276
+ self._move_holiday(apr_2, show_observed_label=False)
277
+
278
+ # Established in 1957 by Decree-Law 2446.
279
+ # Abolished in 1977 by Law 21329.
280
+ # Restored in 2011 by Decree 1584/2010 (as non-working day).
281
+
282
+ if self._year <= 1976 or self._year >= 2011:
283
+ # Maundy Thursday.
284
+ self._add_holy_thursday(tr("Jueves Santo"))
285
+
286
+ # Established in 1977 by Law 21329.
287
+
288
+ if self._year >= 1977:
289
+ # Good Friday.
290
+ self._add_good_friday(tr("Viernes Santo"))
291
+
292
+ # Labor Day.
293
+ self._add_labor_day(tr("Día del Trabajo"))
146
294
 
147
- # Good Friday.
148
- self._add_good_friday(tr("Viernes Santo"))
295
+ # May Revolution Day.
296
+ self._add_holiday_may_25(tr("Día de la Revolución de Mayo"))
149
297
 
150
- if self._year >= 1930:
151
- # Labor Day.
152
- self._add_labor_day(tr("Día del Trabajo"))
298
+ # Established in 1957 by Decree-Law 2446.
299
+ # Abolished in 1976 by Law 21329.
153
300
 
154
- if self._year >= 1813:
155
- # May Revolution Day.
156
- self._add_holiday_may_25(tr("Día de la Revolución de Mayo"))
301
+ if self._year <= 1975:
302
+ # Corpus Christi.
303
+ self._add_corpus_christi_day(tr("Corpus Christi"))
157
304
 
158
- # Status: Defunct.
159
- # Started in 1983 on April 2, moved to June 10 in Decreto 901/1984.
160
- # Abandoned in 2001.
161
- # Superseded by "Veterans Day and the Fallen in the Malvinas War".
305
+ # Established in 1983 on April 2 by Law 22769.
306
+ # Moved to June 10 by Decree 901/1984.
307
+ # Made movable in 1988 by Law 23555.
308
+ # Abandoned in 2001 (superseded by "Veterans Day and the Fallen in the Malvinas War").
162
309
 
163
310
  if 1983 <= self._year <= 2000:
164
- # Day of Argentine Sovereignty over the Malvinas, Sandwich and
165
- # South Atlantic Islands.
311
+ # Day of Affirmation of Argentine Rights over the Malvinas, Islands and
312
+ # Antarctic Sector.
166
313
  name = tr(
167
- "Día de los Derechos Argentinos sobre las Islas Malvinas, "
168
- "Sandwich y del Atlántico Sur"
314
+ "Día de la Afirmación de los Derechos Argentinos sobre las Malvinas, "
315
+ "Islas y Sector Antártico"
169
316
  )
170
317
  if self._year == 1983:
171
318
  self._add_holiday_apr_2(name)
172
319
  else:
173
- self._add_holiday_jun_10(name)
320
+ self._move_holiday(self._add_holiday_jun_10(name), show_observed_label=False)
174
321
 
175
- # Also called "National Flag Day" (Día de la Bandera Nacional).
176
- # Status: In-Use.
177
- # Started in 1938 via Ley 12361 as Fixed Holiday.
178
- # Set as 3rd MON of JUN via Ley 24455 in Dec 1994.
179
- # Made Fixed Holiday again in 2011.
180
-
181
- if self._year >= 1938:
182
- # Pass to the Immortality of General Don Manuel Belgrano.
183
- name = tr("Paso a la Inmortalidad del General Don Manuel Belgrano")
184
-
185
- if 1995 <= self._year <= 2010:
186
- self._add_holiday_3rd_mon_of_jun(name)
187
- else:
188
- self._add_holiday_jun_20(name)
189
-
190
- if self._year >= 1816:
191
- # Independence Day.
192
- self._add_holiday_jul_9(tr("Día de la Independencia"))
193
-
194
- # Immaculate Conception.
195
- self._add_immaculate_conception_day(tr("Inmaculada Concepción de María"))
196
-
197
- # Christmas Day.
198
- self._add_christmas_day(tr("Navidad"))
199
-
200
- # Movable Holidays
201
-
202
- # Status: In-Use.
203
- # Started in 2014 for Salta, 2016 for the whole country via Ley 27258.
322
+ # Established in 2016 by Law 27258.
204
323
 
205
324
  if self._year >= 2016:
206
- jun_17 = self._add_holiday_jun_17(
207
- # Pass to the Immortality of General Don Martin Miguel de Guemes.
208
- tr("Paso a la Inmortalidad del General Don Martín Miguel de Güemes")
209
- )
210
325
  # If Jun 17 is Friday, then it should move to Mon, Jun 20
211
- # but Jun 20 is Gen. Belgrano holiday
212
- self._move_holiday(jun_17, rule=TUE_WED_TO_PREV_MON + THU_TO_NEXT_MON)
326
+ # but Jun 20 is Gen. Belgrano holiday.
327
+ self._move_holiday(
328
+ self._add_holiday_jun_17(
329
+ # Pass to the Immortality of General Don Martín Miguel de Güemes.
330
+ tr("Paso a la Inmortalidad del General Don Martín Miguel de Güemes")
331
+ ),
332
+ rule=TUE_WED_TO_PREV_MON + THU_TO_NEXT_MON,
333
+ show_observed_label=False,
334
+ )
213
335
 
214
- # Status: In-Use.
215
- # Started in 1938 via Ley 12387 on Aug 17.
216
- # Set as 3rd MON of AUG via Ley 24455 in Dec 1994.
217
- # Moved to Aug 22 for 2011 (election interfere) via Decreto 521/2011.
336
+ # Established in 1938 as fixed by Law 12361.
337
+ # Made movable in 1988 by Law 23555.
338
+ # Made fixed in 1992 by Law 24023.
339
+ # Set as 3rd MON of JUN in 1995 by Law 24445.
340
+ # Made fixed in 2011 by Decree 1584/2010.
341
+ # Also called "National Flag Day" (Día de la Bandera Nacional).
218
342
 
219
- # Pass to the Immortality of General Don Jose de San Martin.
220
- name = tr("Paso a la Inmortalidad del General Don José de San Martin")
221
- if self._year == 2011:
343
+ # Pass to the Immortality of General Don Manuel Belgrano.
344
+ name = tr("Paso a la Inmortalidad del General Don Manuel Belgrano")
345
+
346
+ if 1995 <= self._year <= 2010:
347
+ self._add_holiday_3rd_mon_of_jun(name)
348
+ else:
349
+ jun_20 = self._add_holiday_jun_20(name)
350
+ if self._year <= 1991:
351
+ self._move_holiday(jun_20, show_observed_label=False)
352
+
353
+ # Independence Day.
354
+ self._add_holiday_jul_9(tr("Día de la Independencia"))
355
+
356
+ # Established in 1957 by Decree-Law 2446.
357
+ # Abolished in 1976 by Law 21329.
358
+
359
+ # Established in 1938 as fixed by Law 12387.
360
+ # Made movable in 1988 by Law 23555.
361
+ # Set as 3rd MON of AUG in 1995 by Law 24445.
362
+ # Moved to Aug 22 for 2011 (election interfere) by Decree 521/2011.
363
+ # Made movable in 2017 by Decree 52/2017.
364
+
365
+ # Pass to the Immortality of General Don José de San Martín.
366
+ name = tr("Paso a la Inmortalidad del General Don José de San Martín")
367
+ if self._year <= 1994 or self._year >= 2017:
368
+ self._move_holiday(self._add_holiday_aug_17(name), show_observed_label=False)
369
+ elif self._year == 2011:
222
370
  self._add_holiday_aug_22(name)
223
- elif 1938 <= self._year <= 1994:
224
- self._add_holiday_aug_17(name)
225
- elif 1995 <= self._year <= 2010:
371
+ else:
226
372
  self._add_holiday_3rd_mon_of_aug(name)
227
- elif self._year >= 2012:
228
- self._move_holiday(self._add_holiday_aug_17(name))
229
373
 
230
- # Status: In-Use.
231
- # First started in 1917 for Argentina.
232
- # In 2010 the holiday became movable and its name was changed.
233
-
234
- if self._year >= 1917:
235
- oct_12 = self._add_columbus_day(
374
+ # Established in 1957 by Decree-Law 2446.
375
+ # Abolished in 1977 by Law 21329.
376
+
377
+ if self._year <= 1975:
378
+ # Assumption Day.
379
+ self._add_assumption_of_mary_day(tr("Día de la Asunción"))
380
+
381
+ # Established in 1917.
382
+ # Abolished in 1976 by Law 21329.
383
+ # Restored in 1982 by Law 22655.
384
+ # Made movable in 1988 by Law 23555.
385
+ # Observed on Oct 8 in 2001 by Law 25442.
386
+ # Observed on Oct 14 in 2002 by Decree 1932/2002.
387
+ # Changed moving rule in 2008 by Law 26146
388
+ # 2008-2009 actual dates match the dates by the 2010 rule, so code is simplified.
389
+ # Changed name and moving rule in 2010 by Decree 1584/2010.
390
+ # Changed moving rule in 2017 by Decree 52/2017.
391
+
392
+ if self._year <= 1975 or self._year >= 1982:
393
+ name = (
236
394
  # Respect for Cultural Diversity Day.
237
395
  tr("Día del Respeto a la Diversidad Cultural")
238
396
  if self._year >= 2010
239
397
  # Columbus Day.
240
398
  else tr("Día de la Raza")
241
399
  )
242
- if self._year >= 2010:
243
- self._move_holiday(oct_12)
400
+ if self._year == 2001:
401
+ self._add_holiday_oct_8(name)
402
+ elif self._year == 2002:
403
+ self._add_holiday_oct_14(name)
404
+ elif 2008 <= self._year <= 2016:
405
+ self._add_holiday_2nd_mon_of_oct(name)
406
+ else:
407
+ self._move_holiday(self._add_columbus_day(name), show_observed_label=False)
408
+
409
+ # Established in 1957 by Decree-Law 2446.
410
+ # Abolished in 1977 by Law 21329.
244
411
 
245
- # Status: In-Use.
246
- # First observed with no holiday via Ley 20770 in 1974.
247
- # Started in 2010.
248
- # Moved to Nov 27 for 2015 (election interfere).
412
+ if self._year <= 1975:
413
+ # All Saints' Day.
414
+ self._add_all_saints_day(tr("Todos Los Santos"))
415
+
416
+ # First observed with no holiday in 1974 by Law 20770.
417
+ # Established in 2010 as 4th MON of NOV by Decree 1584/2010.
418
+ # Moved to Nov 27 in 2015 by Decree 2226/2015.
249
419
  # Moved to Nov 28 again for 2016.
250
420
 
251
421
  if self._year >= 2010:
252
422
  # National Sovereignty Day.
253
423
  name = tr("Día de la Soberanía Nacional")
254
- if self._year == 2015:
255
- self._add_holiday_nov_27(name)
424
+ if self._year >= 2017:
425
+ self._move_holiday(self._add_holiday_nov_20(name), show_observed_label=False)
256
426
  elif self._year == 2016:
257
427
  self._add_holiday_nov_28(name)
428
+ elif self._year == 2015:
429
+ self._add_holiday_nov_27(name)
430
+ else:
431
+ self._add_holiday_4th_mon_of_nov(name)
432
+
433
+ # Established in 1957 by Decree-Law 2446.
434
+ # Abolished in 1976 by Law 21329.
435
+ # Restored in 1995 by Law 24445.
436
+
437
+ if self._year <= 1975 or self._year >= 1995:
438
+ # Immaculate Conception.
439
+ self._add_immaculate_conception_day(tr("Inmaculada Concepción de María"))
440
+
441
+ # Christmas Day.
442
+ self._add_christmas_day(tr("Navidad"))
443
+
444
+ def _populate_subdiv_a_public_holidays(self):
445
+ """Salta holidays."""
446
+
447
+ # Law 5032.
448
+ if self._year >= 1977:
449
+ # Anniversary of the Battle of Salta.
450
+ self._add_holiday_feb_20(tr("Aniversario de la Batalla de Salta"))
451
+
452
+ self._add_holiday_jun_17(
453
+ # Day of Memory of General Don Martín Miguel de Güemes.
454
+ tr(
455
+ "Dia de la memoria del Guerrero de la Independencia y Gobernador "
456
+ "de la Provincia de Salta General Don Martín Miguel de Güemes"
457
+ )
458
+ )
459
+
460
+ # Feasts of the Lord and the Virgin of Miracle.
461
+ name = tr("Festividades del Señor y de la Virgen del Milagro")
462
+ self._add_holiday_sep_13(name)
463
+ self._add_holiday_sep_14(name)
464
+ self._add_holiday_sep_15(name)
465
+
466
+ def _populate_subdiv_d_public_holidays(self):
467
+ """San Luis holidays."""
468
+
469
+ # Law II-0046-2004.
470
+ if self._year >= 2004:
471
+ # Exaltation of the Holy Cross Day.
472
+ self._add_holiday_may_3(tr("Día de la Exaltación de la Santa Cruz"))
473
+
474
+ # Saint Louis the King of France's Day.
475
+ self._add_holiday_aug_25(tr("Día de San Luis Rey de Francia"))
476
+
477
+ def _populate_subdiv_e_public_holidays(self):
478
+ """Entre Ríos holidays."""
479
+
480
+ # Law 10541.
481
+ if self._year >= 2018:
482
+ self._add_holiday_mar_24(
483
+ # Provincial Day of Remembrance for Truth and Justice.
484
+ tr("Día Provincial de la Memoria por la Verdad y la Justicia")
485
+ )
486
+
487
+ # Law 7285/84.
488
+ if self._year >= 1984:
489
+ # Commemoration of the Battle of Caseros.
490
+ self._add_holiday_feb_3(tr("Conmemoración de la Batalla de Caseros"))
491
+
492
+ # Decree 216/2003.
493
+ if self._year >= 2004:
494
+ # State Worker's Day.
495
+ self._add_holiday_jun_27(tr("Día del Trabajador Estatal"))
496
+
497
+ # Decree 4359/93.
498
+ if self._year >= 1993:
499
+ # Saint Michael the Archangel's Day.
500
+ self._add_holiday_sep_29(tr("San Miguel Arcángel"))
501
+
502
+ def _populate_subdiv_f_public_holidays(self):
503
+ """La Rioja holidays."""
504
+
505
+ # Law 1035.
506
+ if self._year >= 2021:
507
+ # Day of the Death of Juan Facundo Quiroga.
508
+ self._add_holiday_feb_16(tr("Día del fallecimiento de Juan Facundo Quiroga"))
509
+
510
+ # Law 10242.
511
+ if self._year >= 2020:
512
+ # Provincial Autonomy Day.
513
+ self._add_holiday_mar_1(tr("Día de la Autonomía Provincial"))
514
+
515
+ # Law 9955.
516
+ if self._year >= 2017:
517
+ # Day of Remembrance for Truth and Justice.
518
+ self._add_holiday_mar_24(tr("Día de la Memoria por la Verdad y la Justicia"))
519
+
520
+ # Established by Law 9955.
521
+ # Abolished by Law 10298.
522
+ if 2017 <= self._year <= 2020:
523
+ # Malvinas Memorial Day.
524
+ self._add_holiday_apr_2(tr("Día de los Caídos en Malvinas"))
525
+
526
+ # Law 6886.
527
+ if self._year >= 2000:
528
+ # La Rioja Foundation Day.
529
+ self._add_holiday_may_20(tr("Día de la fundación de La Rioja"))
530
+
531
+ # Law 9844.
532
+ if self._year >= 2016:
533
+ self._add_holiday_aug_4(
534
+ # Anniversary of the Death of Enrique Angelelli.
535
+ tr("Día del Aniversario del Fallecimiento de Monseñor Enrique Angelelli")
536
+ )
537
+
538
+ # Law 10298.
539
+ if self._year >= 2020:
540
+ self._add_holiday_nov_12(
541
+ # Anniversary of the Death of Ángel Vicente Peñaloza.
542
+ tr("Día del Aniversario del Fallecimiento de Ángel Vicente Peñaloza")
543
+ )
544
+
545
+ # Law 6886.
546
+ if self._year >= 2000:
547
+ # Tinkunaco Festival.
548
+ self._add_holiday_dec_31(tr("Día del Tinkunaco Riojano"))
549
+
550
+ def _populate_subdiv_j_public_holidays(self):
551
+ """San Juan holidays."""
552
+
553
+ # Law 14-P.
554
+ if self._year >= 2015:
555
+ # Teacher's Day.
556
+ self._add_holiday_sep_11(tr("Día del Maestro"))
557
+
558
+ def _populate_subdiv_k_public_holidays(self):
559
+ """Catamarca holidays."""
560
+
561
+ # Law 4553.
562
+ if self._year >= 1990:
563
+ # Birthday of Mamerto Esquiú.
564
+ self._add_holiday_may_11(tr("Natalicio de Fray Mamerto Esquiú"))
565
+
566
+ # Catamarca Autonomy Day.
567
+ self._add_holiday_aug_25(tr("Autonomía de Catamarca"))
568
+
569
+ # Law 5525.
570
+ if self._year >= 2018:
571
+ # Miracle Day.
572
+ self._add_holiday_sep_7(tr("Día del Milagro"))
573
+
574
+ # Law 4553.
575
+ if self._year >= 1989:
576
+ # Immaculate Conception.
577
+ self._add_immaculate_conception_day(tr("Inmaculada Concepción de María"))
578
+
579
+ def _populate_subdiv_m_public_holidays(self):
580
+ """Mendoza holidays."""
581
+
582
+ # Law 4081.
583
+ if self._year >= 1977:
584
+ # Saint James' Day.
585
+ self._add_saint_james_day(tr("Día del Apóstol Santiago"))
586
+
587
+ def _populate_subdiv_t_public_holidays(self):
588
+ """Tucumán holidays."""
589
+
590
+ # Law 1765.
591
+
592
+ # Anniversary of the Battle of Tucumán.
593
+ self._add_holiday_sep_24(tr("Aniversario de la Batalla de Tucumán"))
594
+
595
+ def _populate_subdiv_u_public_holidays(self):
596
+ """Chubut holidays."""
597
+
598
+ # Law I-85.
599
+ if self._year >= 1984:
600
+ # Plebiscite 1902 Trevelin.
601
+ self._add_holiday_apr_30(tr("Plebiscito 1902 Trevelin"))
602
+
603
+ self._add_holiday_jul_28(
604
+ # Anniversary of the arrival of the first Welsh settlers.
605
+ tr("Aniversario del arribo de los primeros colonizadores galeses")
606
+ )
607
+
608
+ # National Petroleum Day.
609
+ self._add_holiday_dec_13(tr("Día del Petróleo Nacional"))
610
+
611
+ # Law I-547.
612
+ if self._year >= 2015:
613
+ self._add_holiday_nov_3(
614
+ # Tehuelches and Mapuches declare loyalty to the Argentine flag.
615
+ tr("Tehuelches y Mapuches declaran lealtad a la bandera Argentina")
616
+ )
617
+
618
+ def _populate_subdiv_v_public_holidays(self):
619
+ """Tierra del Fuego holidays."""
620
+
621
+ # Law 7/92.
622
+ if self._year >= 1992:
623
+ self._add_holiday_jun_1(
624
+ # Day of the Province of Tierra del Fuego, Antarctica
625
+ # and the South Atlantic Islands.
626
+ tr("Día de la Provincia de Tierra del Fuego, Antártida e Islas del Atlántico Sur")
627
+ )
628
+
629
+ # Law 1389/2021.
630
+ if self._year >= 2021:
631
+ # Selk'Nam Genocide Day.
632
+ self._add_holiday_nov_25(tr("Día del Genocidio Selk'Nam"))
633
+
634
+ def _populate_subdiv_w_public_holidays(self):
635
+ """Corrientes holidays."""
636
+
637
+ if self._year >= 2009:
638
+ # Law 5884.
639
+ self._add_holiday_jun_20(
640
+ # Anniversary of the Death of General Manuel Belgrano.
641
+ tr(
642
+ "Día del Aniversario del Fallecimiento del General Manuel José Joaquín "
643
+ "del Corazón de Jesús Belgrano"
644
+ )
645
+ )
646
+
647
+ # Law 5874.
648
+ self._add_holiday_aug_17(
649
+ # Anniversary of the Death of General José Francisco de San Martín.
650
+ tr(
651
+ "Día del Aniversario del Fallecimiento del General José Francisco "
652
+ "de San Martín"
653
+ )
654
+ )
655
+
656
+ def _populate_subdiv_y_public_holidays(self):
657
+ """Jujuy holidays."""
658
+
659
+ # Law 4059.
660
+ if self._year >= 1984:
661
+ # Carnival Monday.
662
+ self._add_carnival_monday(tr("Lunes de Carnaval"))
663
+
664
+ # Carnival Tuesday.
665
+ self._add_carnival_tuesday(tr("Martes de Carnaval"))
666
+
667
+ # Jujuy Exodus Day.
668
+ self._add_holiday_aug_23(tr("Día del Éxodo Jujeño"))
669
+
670
+ # Jujuy Political Autonomy Day.
671
+ self._add_holiday_nov_18(tr("Autonomía Política de Jujuy"))
672
+
673
+ # Law 4927.
674
+ if self._year >= 1996:
675
+ # Pachamama Day.
676
+ self._add_holiday_aug_1(tr("Día de la Pachamama"))
677
+
678
+ # Law 5005.
679
+ if self._year >= 1997:
680
+ # Day of the Virgin of the Rosary of Río Blanco and Paypaya.
681
+ self._add_holiday_oct_7(tr("Día de la Virgen del Rosario de Río Blanco y Paypaya"))
682
+
683
+ # Law 6197.
684
+ if self._year >= 2021:
685
+ # Great Day of Jujuy.
686
+ self._add_holiday_apr_27(tr("Día Grande de Jujuy"))
687
+
688
+ def _populate_subdiv_z_public_holidays(self):
689
+ """Santa Cruz holidays."""
690
+
691
+ # Law 2882, Law 3419.
692
+ if self._year >= 2007:
693
+ # Saint John Bosco's Day.
694
+ name = tr("Homenaje al Patrono de la Provincia San Juan Bosco")
695
+ if self._year >= 2015:
696
+ self._add_holiday_aug_16(name)
258
697
  else:
259
- self._move_holiday(self._add_holiday_nov_20(name))
698
+ self._add_holiday_jan_31(name)
699
+
700
+ # Law 3342.
701
+ if self._year >= 2014:
702
+ self._add_holiday_oct_27(
703
+ # Anniversary of the Death of Néstor Carlos Kirchner.
704
+ tr(
705
+ "Día del Aniversario del Fallecimiento del ex Presidente de la Nación "
706
+ "Doctor Néstor Carlos Kirchner"
707
+ )
708
+ )
709
+
710
+ # Law 3669.
711
+ if self._year >= 2019:
712
+ self._add_holiday_dec_7(
713
+ # Commemoration of the workers shot in the Patagonian Strikes.
714
+ tr("Conmemoración a los obreros fusilados en las Huelgas Patagónicas")
715
+ )
716
+
717
+ def _populate_armenian_holidays(self):
718
+ # Established in 2007 by Law 26199.
719
+
720
+ if self._year >= 2007:
721
+ self._add_holiday_apr_24(
722
+ # Day of Action for Tolerance and Respect among Peoples.
723
+ tr("Día de acción por la tolerancia y el respeto entre los pueblos")
724
+ )
725
+
726
+ def _populate_bank_holidays(self):
727
+ # Established in 1975 by Collective Agreement 18/75, Art. 50.
728
+
729
+ if self._year >= 1975:
730
+ # Bankers' Day.
731
+ self._add_holiday_nov_6(tr("Día del Bancario"))
732
+
733
+ def _populate_government_holidays(self):
734
+ # Established in 2014 by Law 26876.
735
+
736
+ if self._year >= 2014:
737
+ # State Worker's Day.
738
+ self._add_holiday_jun_27(tr("Día del Trabajador del Estado"))
739
+
740
+ def _populate_hebrew_holidays(self):
741
+ # Established in 1996 by Law 24571.
742
+
743
+ if self._year >= 1996:
744
+ # Rosh Hashanah.
745
+ self._add_rosh_hashanah(tr("Año Nuevo Judío (Rosh Hashana)"), range(2))
746
+
747
+ # Yom Kippur.
748
+ self._add_yom_kippur(tr("Día del Perdón (Iom Kipur)"))
749
+
750
+ # Established in 2007 by Law 26089.
751
+
752
+ if self._year >= 2007:
753
+ # Pesach.
754
+ name = tr("Pascua Judía (Pésaj)")
755
+ self._add_passover(name, range(2))
756
+ self._add_passover(name, range(6, 8))
757
+
758
+ def _populate_islamic_holidays(self):
759
+ # Established in 1997 by Law 24757.
760
+
761
+ if self._year >= 1997:
762
+ # Islamic New Year.
763
+ self._add_islamic_new_year_day(tr("Año Nuevo Musulmán (Hégira)"))
764
+
765
+ # Eid al-Fitr.
766
+ self._add_eid_al_fitr_day(tr("Día posterior a la culminación del ayuno (Id Al-Fitr)"))
767
+
768
+ # Eid al-Adha.
769
+ self._add_eid_al_adha_day(tr("Día de la Fiesta del Sacrificio (Id Al-Adha)"))
260
770
 
261
771
 
262
772
  class AR(Argentina):
@@ -267,16 +777,79 @@ class ARG(Argentina):
267
777
  pass
268
778
 
269
779
 
780
+ class ArgentinaIslamicHolidays(_CustomIslamicHolidays):
781
+ EID_AL_ADHA_DATES = {
782
+ 2019: (AUG, 11),
783
+ 2020: (JUL, 31),
784
+ 2021: (JUL, 20),
785
+ 2022: (JUL, 9),
786
+ 2023: (JUN, 28),
787
+ 2024: (JUN, 16),
788
+ 2025: (JUN, 10),
789
+ }
790
+
791
+ EID_AL_FITR_DATES = {
792
+ 2019: (JUN, 4),
793
+ 2020: (MAY, 24),
794
+ 2021: (MAY, 13),
795
+ 2022: (MAY, 2),
796
+ 2023: (APR, 21),
797
+ 2024: (APR, 10),
798
+ 2025: (MAR, 31),
799
+ }
800
+
801
+ HIJRI_NEW_YEAR_DATES = {
802
+ 2019: (AUG, 31),
803
+ 2020: (AUG, 20),
804
+ 2021: (AUG, 8),
805
+ 2022: (JUL, 30),
806
+ 2023: (JUL, 19),
807
+ 2024: (JUL, 7),
808
+ 2025: (JUN, 26),
809
+ }
810
+
811
+
270
812
  class ArgentinaStaticHolidays:
271
- """
272
- Special Bridge Holidays are given upto 3 days a year
273
- as long as it's declared 50 days before calendar year's end
813
+ """Argentina special holidays.
814
+
815
+ Special Holidays References:
816
+ * [Decree 615/2010](https://www.argentina.gob.ar/normativa/nacional/decreto-615-2010-166825/texto)
817
+ * [Joint Resolution 1159/2010](https://www.argentina.gob.ar/normativa/nacional/resoluci%C3%B3n-1159-2010-173748/texto)
818
+ * [Law 26721](https://www.argentina.gob.ar/normativa/nacional/ley-26721-191835/texto)
819
+ * [Law 26763](https://www.argentina.gob.ar/normativa/nacional/ley-26763-201915/texto)
820
+ * [Law 26837](https://www.argentina.gob.ar/normativa/nacional/ley-26837-207405/texto)
821
+ * [Law 26840](https://www.argentina.gob.ar/normativa/nacional/ley-26840-207258/texto)
822
+ * [Decree 42/2022](https://www.argentina.gob.ar/normativa/nacional/decreto-42-2022-360018/texto)
823
+ * [Decree 842/2022](https://www.argentina.gob.ar/normativa/nacional/decreto-842-2022-376857/texto)
824
+
825
+ Special Bank Holidays References:
826
+ * [Release P50962 (2019)](https://bcra.gob.ar/Pdfs/comytexord/P50962.pdf)
827
+ * [Release P50983 (2020)](https://bcra.gob.ar/Pdfs/comytexord/P50983.pdf)
828
+ * [Release P51020 (2021)](https://bcra.gob.ar/Pdfs/comytexord/P51020.pdf)
829
+ * [Release P51155 (2024)](https://bcra.gob.ar/Pdfs/comytexord/P51155.pdf)
830
+
831
+ Special Bridge Holidays are given upto 3 days a year as long as it's declared
832
+ 50 days before calendar year's end.
274
833
  There's no Bridge Holidays declared in 2017.
834
+
835
+ Bridge Holidays References:
836
+ * [Decree 1585/2010 (2011-2013 Bridge Holidays)](https://www.argentina.gob.ar/normativa/nacional/decreto-1585-2010-174391/texto)
837
+ * [Decree 1768/2013 (2014-2016 Bridge Holidays)](https://www.argentina.gob.ar/normativa/nacional/decreto-1768-2013-222021/texto)
838
+ * [Decree 923/2017 (2018-2019 Bridge Holidays)](https://www.argentina.gob.ar/normativa/nacional/decreto-923-2017-287145)
839
+ * [Decree 717/2019 (2020 Bridge Holidays)](https://www.argentina.gob.ar/normativa/nacional/decreto-717-2019-330204/texto)
840
+ * [Decree 947/2020 (2021 Bridge Holidays)](https://www.argentina.gob.ar/normativa/nacional/decreto-947-2020-344620/texto)
841
+ * [Decree 789/2021 (2022 Bridge Holidays)](https://www.argentina.gob.ar/normativa/nacional/decreto-789-2021-356678/texto)
842
+ * [Decree 764/2022 (2023 Bridge Holidays)](https://www.argentina.gob.ar/normativa/nacional/decreto-764-2022-375264/texto)
843
+ * [Decree 106/2023 (2024 Bridge Holidays)](https://www.argentina.gob.ar/normativa/nacional/decreto-106-2023-395689/texto)
844
+ * [Decree 1017/2024 (2025 Bridge Holidays)](https://www.argentina.gob.ar/normativa/nacional/decreto-1027-2024-406417/texto)
275
845
  """
276
846
 
277
847
  # Bridge Public Holiday.
278
848
  arg_bridge_public_holiday = tr("Feriado con fines turísticos")
279
849
 
850
+ # Bicentenary of the May Revolution.
851
+ bicentennial_may_revolution = tr("Bicentenario de la Revolución de Mayo")
852
+
280
853
  # Bicentenary of the creation and first oath of the national flag.
281
854
  bicentennial_national_flag = tr(
282
855
  "Bicentenario de la creación y primera jura de la bandera nacional"
@@ -293,22 +866,41 @@ class ArgentinaStaticHolidays:
293
866
  # Bicentenary of the Battle of Salta.
294
867
  bicentennial_battle_salta = tr("Bicentenario de la Batalla de Salta")
295
868
 
869
+ # National Census Day 2010.
870
+ national_census_2010 = tr("Censo Nacional 2010")
871
+
296
872
  # National Census Day 2022.
297
- national_census_2022 = tr("Censo nacional 2022")
873
+ national_census_2022 = tr("Censo Nacional 2022")
874
+
875
+ # FIFA World Cup 2022 Victory Day.
876
+ fifa_world_cup_2022_victory_day = tr("Día de la Victoria de la Copa Mundial de la FIFA 2022")
877
+
878
+ # Bank Holiday.
879
+ bank_holiday = tr("Asueto bancario")
298
880
 
299
881
  special_public_holidays = {
882
+ 2010: (
883
+ # Decree 615/2010.
884
+ (MAY, 24, bicentennial_may_revolution),
885
+ # Joint Resolution 1159/2010.
886
+ (OCT, 27, national_census_2010),
887
+ ),
300
888
  2011: (
301
889
  (MAR, 25, arg_bridge_public_holiday),
302
890
  (DEC, 9, arg_bridge_public_holiday),
303
891
  ),
304
892
  2012: (
893
+ # Law 26721.
305
894
  (FEB, 27, bicentennial_national_flag),
306
895
  (APR, 30, arg_bridge_public_holiday),
896
+ # Law 26763.
307
897
  (SEP, 24, bicentennial_battle_tucuman),
308
898
  (DEC, 24, arg_bridge_public_holiday),
309
899
  ),
310
900
  2013: (
901
+ # Law 26840.
311
902
  (JAN, 31, bicentennial_assembly_1813),
903
+ # Law 26837.
312
904
  (FEB, 20, bicentennial_battle_salta),
313
905
  (APR, 1, arg_bridge_public_holiday),
314
906
  (JUN, 21, arg_bridge_public_holiday),
@@ -346,10 +938,13 @@ class ArgentinaStaticHolidays:
346
938
  (NOV, 22, arg_bridge_public_holiday),
347
939
  ),
348
940
  2022: (
941
+ # Decree 42/2022.
349
942
  (MAY, 18, national_census_2022),
350
943
  (OCT, 7, arg_bridge_public_holiday),
351
944
  (NOV, 21, arg_bridge_public_holiday),
352
945
  (DEC, 9, arg_bridge_public_holiday),
946
+ # Decree 842/2022.
947
+ (DEC, 20, fifa_world_cup_2022_victory_day),
353
948
  ),
354
949
  2023: (
355
950
  (MAY, 26, arg_bridge_public_holiday),
@@ -367,3 +962,26 @@ class ArgentinaStaticHolidays:
367
962
  (NOV, 21, arg_bridge_public_holiday),
368
963
  ),
369
964
  }
965
+
966
+ special_bank_holidays = {
967
+ # Release P50962.
968
+ 2019: (
969
+ (DEC, 24, bank_holiday),
970
+ (DEC, 31, bank_holiday),
971
+ ),
972
+ # Release P50983.
973
+ 2020: (
974
+ (DEC, 24, bank_holiday),
975
+ (DEC, 31, bank_holiday),
976
+ ),
977
+ # Release P51020.
978
+ 2021: (
979
+ (DEC, 24, bank_holiday),
980
+ (DEC, 31, bank_holiday),
981
+ ),
982
+ # Release P51155.
983
+ 2024: (
984
+ (DEC, 24, bank_holiday),
985
+ (DEC, 31, bank_holiday),
986
+ ),
987
+ }