holidays 0.65__py3-none-any.whl → 0.66__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 (383) hide show
  1. holidays/calendars/__init__.py +1 -0
  2. holidays/calendars/persian.py +6 -0
  3. holidays/calendars/sinhala.py +414 -0
  4. holidays/countries/__init__.py +1 -0
  5. holidays/countries/czechia.py +39 -30
  6. holidays/countries/germany.py +11 -22
  7. holidays/countries/iceland.py +16 -8
  8. holidays/countries/iran.py +522 -43
  9. holidays/countries/israel.py +1 -1
  10. holidays/countries/netherlands.py +1 -1
  11. holidays/countries/slovakia.py +14 -7
  12. holidays/countries/slovenia.py +63 -19
  13. holidays/countries/sri_lanka.py +515 -0
  14. holidays/countries/sweden.py +6 -9
  15. holidays/countries/thailand.py +1 -1
  16. holidays/countries/ukraine.py +1 -1
  17. holidays/countries/united_arab_emirates.py +95 -11
  18. holidays/countries/vatican_city.py +134 -53
  19. holidays/groups/__init__.py +1 -0
  20. holidays/groups/christian.py +10 -0
  21. holidays/groups/persian.py +12 -0
  22. holidays/groups/sinhala.py +192 -0
  23. holidays/locale/ar/LC_MESSAGES/AE.mo +0 -0
  24. holidays/locale/ar/LC_MESSAGES/UA.mo +0 -0
  25. holidays/locale/cs/LC_MESSAGES/CZ.mo +0 -0
  26. holidays/locale/en_US/LC_MESSAGES/AE.mo +0 -0
  27. holidays/locale/en_US/LC_MESSAGES/CZ.mo +0 -0
  28. holidays/locale/en_US/LC_MESSAGES/IR.mo +0 -0
  29. holidays/locale/en_US/LC_MESSAGES/IS.mo +0 -0
  30. holidays/locale/en_US/LC_MESSAGES/LK.mo +0 -0
  31. holidays/locale/en_US/LC_MESSAGES/SI.mo +0 -0
  32. holidays/locale/en_US/LC_MESSAGES/UA.mo +0 -0
  33. holidays/locale/en_US/LC_MESSAGES/VA.mo +0 -0
  34. holidays/locale/{fa → fa_IR}/LC_MESSAGES/IR.mo +0 -0
  35. holidays/locale/fy/LC_MESSAGES/NL.mo +0 -0
  36. holidays/locale/is/LC_MESSAGES/IS.mo +0 -0
  37. holidays/locale/it/LC_MESSAGES/VA.mo +0 -0
  38. holidays/locale/si_LK/LC_MESSAGES/LK.mo +0 -0
  39. holidays/locale/sk/LC_MESSAGES/CZ.mo +0 -0
  40. holidays/locale/sl/LC_MESSAGES/SI.mo +0 -0
  41. holidays/locale/ta_LK/LC_MESSAGES/LK.mo +0 -0
  42. holidays/locale/th/LC_MESSAGES/AE.mo +0 -0
  43. holidays/locale/th/LC_MESSAGES/IL.mo +0 -0
  44. holidays/locale/th/LC_MESSAGES/UA.mo +0 -0
  45. holidays/locale/th/LC_MESSAGES/VA.mo +0 -0
  46. holidays/locale/uk/LC_MESSAGES/AO.mo +0 -0
  47. holidays/locale/uk/LC_MESSAGES/CL.mo +0 -0
  48. holidays/locale/uk/LC_MESSAGES/CU.mo +0 -0
  49. holidays/locale/uk/LC_MESSAGES/CZ.mo +0 -0
  50. holidays/locale/uk/LC_MESSAGES/EE.mo +0 -0
  51. holidays/locale/uk/LC_MESSAGES/IS.mo +0 -0
  52. holidays/locale/uk/LC_MESSAGES/MZ.mo +0 -0
  53. holidays/locale/uk/LC_MESSAGES/PL.mo +0 -0
  54. holidays/locale/uk/LC_MESSAGES/SI.mo +0 -0
  55. holidays/locale/uk/LC_MESSAGES/UA.mo +0 -0
  56. holidays/locale/uk/LC_MESSAGES/UZ.mo +0 -0
  57. holidays/registry.py +1 -0
  58. holidays/version.py +1 -1
  59. {holidays-0.65.dist-info → holidays-0.66.dist-info}/METADATA +15 -10
  60. {holidays-0.65.dist-info → holidays-0.66.dist-info}/RECORD +64 -371
  61. holidays/locale/am/LC_MESSAGES/ET.po +0 -92
  62. holidays/locale/ar/LC_MESSAGES/AE.po +0 -76
  63. holidays/locale/ar/LC_MESSAGES/BH.po +0 -76
  64. holidays/locale/ar/LC_MESSAGES/CA.po +0 -161
  65. holidays/locale/ar/LC_MESSAGES/DJ.po +0 -85
  66. holidays/locale/ar/LC_MESSAGES/DZ.po +0 -80
  67. holidays/locale/ar/LC_MESSAGES/EG.po +0 -104
  68. holidays/locale/ar/LC_MESSAGES/ET.po +0 -93
  69. holidays/locale/ar/LC_MESSAGES/JO.po +0 -79
  70. holidays/locale/ar/LC_MESSAGES/KW.po +0 -75
  71. holidays/locale/ar/LC_MESSAGES/MA.po +0 -88
  72. holidays/locale/ar/LC_MESSAGES/SA.po +0 -67
  73. holidays/locale/ar/LC_MESSAGES/TN.po +0 -92
  74. holidays/locale/ar/LC_MESSAGES/UA.po +0 -113
  75. holidays/locale/az/LC_MESSAGES/AZ.po +0 -136
  76. holidays/locale/be/LC_MESSAGES/BY.po +0 -109
  77. holidays/locale/bg/LC_MESSAGES/BG.po +0 -87
  78. holidays/locale/bs/LC_MESSAGES/BA.po +0 -113
  79. holidays/locale/cnr/LC_MESSAGES/ME.po +0 -102
  80. holidays/locale/cs/LC_MESSAGES/CZ.po +0 -88
  81. holidays/locale/da/LC_MESSAGES/DK.po +0 -87
  82. holidays/locale/da/LC_MESSAGES/GL.po +0 -91
  83. holidays/locale/de/LC_MESSAGES/AT.po +0 -115
  84. holidays/locale/de/LC_MESSAGES/BE.po +0 -88
  85. holidays/locale/de/LC_MESSAGES/CH.po +0 -123
  86. holidays/locale/de/LC_MESSAGES/DE.po +0 -121
  87. holidays/locale/de/LC_MESSAGES/LI.po +0 -115
  88. holidays/locale/de/LC_MESSAGES/LU.po +0 -72
  89. holidays/locale/el/LC_MESSAGES/CY.po +0 -99
  90. holidays/locale/el/LC_MESSAGES/GR.po +0 -89
  91. holidays/locale/en_AU/LC_MESSAGES/AU.po +0 -177
  92. holidays/locale/en_CA/LC_MESSAGES/CA.po +0 -161
  93. holidays/locale/en_CY/LC_MESSAGES/CY.po +0 -100
  94. holidays/locale/en_PH/LC_MESSAGES/PH.po +0 -128
  95. holidays/locale/en_SC/LC_MESSAGES/SC.po +0 -117
  96. holidays/locale/en_SG/LC_MESSAGES/SG.po +0 -98
  97. holidays/locale/en_US/LC_MESSAGES/AE.po +0 -77
  98. holidays/locale/en_US/LC_MESSAGES/AF.po +0 -92
  99. holidays/locale/en_US/LC_MESSAGES/AL.po +0 -106
  100. holidays/locale/en_US/LC_MESSAGES/AM.po +0 -88
  101. holidays/locale/en_US/LC_MESSAGES/AO.po +0 -117
  102. holidays/locale/en_US/LC_MESSAGES/AR.po +0 -139
  103. holidays/locale/en_US/LC_MESSAGES/AT.po +0 -116
  104. holidays/locale/en_US/LC_MESSAGES/AU.po +0 -177
  105. holidays/locale/en_US/LC_MESSAGES/AW.po +0 -84
  106. holidays/locale/en_US/LC_MESSAGES/AZ.po +0 -136
  107. holidays/locale/en_US/LC_MESSAGES/BA.po +0 -113
  108. holidays/locale/en_US/LC_MESSAGES/BE.po +0 -88
  109. holidays/locale/en_US/LC_MESSAGES/BG.po +0 -87
  110. holidays/locale/en_US/LC_MESSAGES/BH.po +0 -77
  111. holidays/locale/en_US/LC_MESSAGES/BN.po +0 -109
  112. holidays/locale/en_US/LC_MESSAGES/BO.po +0 -117
  113. holidays/locale/en_US/LC_MESSAGES/BR.po +0 -263
  114. holidays/locale/en_US/LC_MESSAGES/BVMF.po +0 -79
  115. holidays/locale/en_US/LC_MESSAGES/BY.po +0 -114
  116. holidays/locale/en_US/LC_MESSAGES/CA.po +0 -161
  117. holidays/locale/en_US/LC_MESSAGES/CG.po +0 -67
  118. holidays/locale/en_US/LC_MESSAGES/CH.po +0 -124
  119. holidays/locale/en_US/LC_MESSAGES/CL.po +0 -136
  120. holidays/locale/en_US/LC_MESSAGES/CN.po +0 -102
  121. holidays/locale/en_US/LC_MESSAGES/CO.po +0 -105
  122. holidays/locale/en_US/LC_MESSAGES/CR.po +0 -85
  123. holidays/locale/en_US/LC_MESSAGES/CU.po +0 -69
  124. holidays/locale/en_US/LC_MESSAGES/CW.po +0 -84
  125. holidays/locale/en_US/LC_MESSAGES/CY.po +0 -100
  126. holidays/locale/en_US/LC_MESSAGES/CZ.po +0 -88
  127. holidays/locale/en_US/LC_MESSAGES/DE.po +0 -126
  128. holidays/locale/en_US/LC_MESSAGES/DJ.po +0 -84
  129. holidays/locale/en_US/LC_MESSAGES/DK.po +0 -88
  130. holidays/locale/en_US/LC_MESSAGES/DO.po +0 -76
  131. holidays/locale/en_US/LC_MESSAGES/DZ.po +0 -81
  132. holidays/locale/en_US/LC_MESSAGES/EC.po +0 -73
  133. holidays/locale/en_US/LC_MESSAGES/EE.po +0 -76
  134. holidays/locale/en_US/LC_MESSAGES/EG.po +0 -105
  135. holidays/locale/en_US/LC_MESSAGES/ES.po +0 -225
  136. holidays/locale/en_US/LC_MESSAGES/ET.po +0 -93
  137. holidays/locale/en_US/LC_MESSAGES/FI.po +0 -164
  138. holidays/locale/en_US/LC_MESSAGES/FR.po +0 -116
  139. holidays/locale/en_US/LC_MESSAGES/GE.po +0 -96
  140. holidays/locale/en_US/LC_MESSAGES/GL.po +0 -92
  141. holidays/locale/en_US/LC_MESSAGES/GR.po +0 -89
  142. holidays/locale/en_US/LC_MESSAGES/GT.po +0 -72
  143. holidays/locale/en_US/LC_MESSAGES/HN.po +0 -76
  144. holidays/locale/en_US/LC_MESSAGES/HR.po +0 -94
  145. holidays/locale/en_US/LC_MESSAGES/HT.po +0 -127
  146. holidays/locale/en_US/LC_MESSAGES/HU.po +0 -101
  147. holidays/locale/en_US/LC_MESSAGES/ID.po +0 -195
  148. holidays/locale/en_US/LC_MESSAGES/IL.po +0 -105
  149. holidays/locale/en_US/LC_MESSAGES/IR.po +0 -125
  150. holidays/locale/en_US/LC_MESSAGES/IS.po +0 -92
  151. holidays/locale/en_US/LC_MESSAGES/JO.po +0 -80
  152. holidays/locale/en_US/LC_MESSAGES/JP.po +0 -128
  153. holidays/locale/en_US/LC_MESSAGES/KH.po +0 -132
  154. holidays/locale/en_US/LC_MESSAGES/KR.po +0 -219
  155. holidays/locale/en_US/LC_MESSAGES/KW.po +0 -76
  156. holidays/locale/en_US/LC_MESSAGES/KZ.po +0 -103
  157. holidays/locale/en_US/LC_MESSAGES/LA.po +0 -160
  158. holidays/locale/en_US/LC_MESSAGES/LI.po +0 -116
  159. holidays/locale/en_US/LC_MESSAGES/LT.po +0 -94
  160. holidays/locale/en_US/LC_MESSAGES/LU.po +0 -72
  161. holidays/locale/en_US/LC_MESSAGES/LV.po +0 -106
  162. holidays/locale/en_US/LC_MESSAGES/MA.po +0 -89
  163. holidays/locale/en_US/LC_MESSAGES/MC.po +0 -85
  164. holidays/locale/en_US/LC_MESSAGES/MD.po +0 -84
  165. holidays/locale/en_US/LC_MESSAGES/ME.po +0 -102
  166. holidays/locale/en_US/LC_MESSAGES/MG.po +0 -92
  167. holidays/locale/en_US/LC_MESSAGES/MT.po +0 -83
  168. holidays/locale/en_US/LC_MESSAGES/MX.po +0 -60
  169. holidays/locale/en_US/LC_MESSAGES/MY.po +0 -250
  170. holidays/locale/en_US/LC_MESSAGES/MZ.po +0 -69
  171. holidays/locale/en_US/LC_MESSAGES/NI.po +0 -76
  172. holidays/locale/en_US/LC_MESSAGES/NL.po +0 -76
  173. holidays/locale/en_US/LC_MESSAGES/NO.po +0 -80
  174. holidays/locale/en_US/LC_MESSAGES/PE.po +0 -88
  175. holidays/locale/en_US/LC_MESSAGES/PH.po +0 -128
  176. holidays/locale/en_US/LC_MESSAGES/PL.po +0 -115
  177. holidays/locale/en_US/LC_MESSAGES/PT.po +0 -184
  178. holidays/locale/en_US/LC_MESSAGES/PY.po +0 -88
  179. holidays/locale/en_US/LC_MESSAGES/RO.po +0 -76
  180. holidays/locale/en_US/LC_MESSAGES/RS.po +0 -69
  181. holidays/locale/en_US/LC_MESSAGES/RU.po +0 -93
  182. holidays/locale/en_US/LC_MESSAGES/SA.po +0 -67
  183. holidays/locale/en_US/LC_MESSAGES/SC.po +0 -117
  184. holidays/locale/en_US/LC_MESSAGES/SE.po +0 -104
  185. holidays/locale/en_US/LC_MESSAGES/SG.po +0 -98
  186. holidays/locale/en_US/LC_MESSAGES/SI.po +0 -76
  187. holidays/locale/en_US/LC_MESSAGES/SK.po +0 -97
  188. holidays/locale/en_US/LC_MESSAGES/SV.po +0 -75
  189. holidays/locale/en_US/LC_MESSAGES/TH.po +0 -354
  190. holidays/locale/en_US/LC_MESSAGES/TL.po +0 -169
  191. holidays/locale/en_US/LC_MESSAGES/TN.po +0 -93
  192. holidays/locale/en_US/LC_MESSAGES/TO.po +0 -91
  193. holidays/locale/en_US/LC_MESSAGES/TR.po +0 -89
  194. holidays/locale/en_US/LC_MESSAGES/TW.po +0 -78
  195. holidays/locale/en_US/LC_MESSAGES/TZ.po +0 -119
  196. holidays/locale/en_US/LC_MESSAGES/UA.po +0 -113
  197. holidays/locale/en_US/LC_MESSAGES/UY.po +0 -120
  198. holidays/locale/en_US/LC_MESSAGES/UZ.po +0 -96
  199. holidays/locale/en_US/LC_MESSAGES/VE.po +0 -92
  200. holidays/locale/en_US/LC_MESSAGES/VN.po +0 -93
  201. holidays/locale/es/LC_MESSAGES/AR.po +0 -135
  202. holidays/locale/es/LC_MESSAGES/BO.po +0 -117
  203. holidays/locale/es/LC_MESSAGES/CL.po +0 -136
  204. holidays/locale/es/LC_MESSAGES/CO.po +0 -105
  205. holidays/locale/es/LC_MESSAGES/CR.po +0 -85
  206. holidays/locale/es/LC_MESSAGES/CU.po +0 -69
  207. holidays/locale/es/LC_MESSAGES/DO.po +0 -76
  208. holidays/locale/es/LC_MESSAGES/EC.po +0 -73
  209. holidays/locale/es/LC_MESSAGES/ES.po +0 -225
  210. holidays/locale/es/LC_MESSAGES/GT.po +0 -72
  211. holidays/locale/es/LC_MESSAGES/HN.po +0 -76
  212. holidays/locale/es/LC_MESSAGES/HT.po +0 -127
  213. holidays/locale/es/LC_MESSAGES/MX.po +0 -60
  214. holidays/locale/es/LC_MESSAGES/NI.po +0 -76
  215. holidays/locale/es/LC_MESSAGES/PE.po +0 -88
  216. holidays/locale/es/LC_MESSAGES/PY.po +0 -88
  217. holidays/locale/es/LC_MESSAGES/SV.po +0 -75
  218. holidays/locale/es/LC_MESSAGES/UY.po +0 -120
  219. holidays/locale/es/LC_MESSAGES/VE.po +0 -92
  220. holidays/locale/et/LC_MESSAGES/EE.po +0 -76
  221. holidays/locale/fa/LC_MESSAGES/IR.po +0 -125
  222. holidays/locale/fa_AF/LC_MESSAGES/AF.po +0 -92
  223. holidays/locale/fi/LC_MESSAGES/FI.po +0 -164
  224. holidays/locale/fil/LC_MESSAGES/PH.po +0 -129
  225. holidays/locale/fr/LC_MESSAGES/BE.po +0 -88
  226. holidays/locale/fr/LC_MESSAGES/CA.po +0 -161
  227. holidays/locale/fr/LC_MESSAGES/CG.po +0 -67
  228. holidays/locale/fr/LC_MESSAGES/CH.po +0 -123
  229. holidays/locale/fr/LC_MESSAGES/DJ.po +0 -84
  230. holidays/locale/fr/LC_MESSAGES/DZ.po +0 -81
  231. holidays/locale/fr/LC_MESSAGES/FR.po +0 -116
  232. holidays/locale/fr/LC_MESSAGES/LU.po +0 -72
  233. holidays/locale/fr/LC_MESSAGES/MA.po +0 -89
  234. holidays/locale/fr/LC_MESSAGES/MC.po +0 -85
  235. holidays/locale/fr_HT/LC_MESSAGES/HT.po +0 -127
  236. holidays/locale/he/LC_MESSAGES/IL.po +0 -104
  237. holidays/locale/hr/LC_MESSAGES/HR.po +0 -94
  238. holidays/locale/ht/LC_MESSAGES/HT.po +0 -127
  239. holidays/locale/hu/LC_MESSAGES/HU.po +0 -101
  240. holidays/locale/hy/LC_MESSAGES/AM.po +0 -87
  241. holidays/locale/id/LC_MESSAGES/ID.po +0 -195
  242. holidays/locale/is/LC_MESSAGES/IS.po +0 -92
  243. holidays/locale/it/LC_MESSAGES/CH.po +0 -123
  244. holidays/locale/ja/LC_MESSAGES/JP.po +0 -128
  245. holidays/locale/ka/LC_MESSAGES/GE.po +0 -96
  246. holidays/locale/kk/LC_MESSAGES/KZ.po +0 -103
  247. holidays/locale/kl/LC_MESSAGES/GL.po +0 -91
  248. holidays/locale/km/LC_MESSAGES/KH.po +0 -132
  249. holidays/locale/ko/LC_MESSAGES/KR.po +0 -219
  250. holidays/locale/lb/LC_MESSAGES/LU.po +0 -72
  251. holidays/locale/lo/LC_MESSAGES/LA.po +0 -160
  252. holidays/locale/lt/LC_MESSAGES/LT.po +0 -94
  253. holidays/locale/lv/LC_MESSAGES/LV.po +0 -104
  254. holidays/locale/mg/LC_MESSAGES/MG.po +0 -92
  255. holidays/locale/ms/LC_MESSAGES/BN.po +0 -107
  256. holidays/locale/ms_MY/LC_MESSAGES/MY.po +0 -250
  257. holidays/locale/mt/LC_MESSAGES/MT.po +0 -83
  258. holidays/locale/nl/LC_MESSAGES/AW.po +0 -84
  259. holidays/locale/nl/LC_MESSAGES/BE.po +0 -88
  260. holidays/locale/nl/LC_MESSAGES/CW.po +0 -84
  261. holidays/locale/nl/LC_MESSAGES/NL.po +0 -76
  262. holidays/locale/no/LC_MESSAGES/NO.po +0 -80
  263. holidays/locale/pap_AW/LC_MESSAGES/AW.po +0 -84
  264. holidays/locale/pap_CW/LC_MESSAGES/CW.po +0 -84
  265. holidays/locale/pl/LC_MESSAGES/PL.po +0 -115
  266. holidays/locale/ps_AF/LC_MESSAGES/AF.po +0 -92
  267. holidays/locale/pt_AO/LC_MESSAGES/AO.po +0 -117
  268. holidays/locale/pt_BR/LC_MESSAGES/BR.po +0 -263
  269. holidays/locale/pt_BR/LC_MESSAGES/BVMF.po +0 -79
  270. holidays/locale/pt_MZ/LC_MESSAGES/MZ.po +0 -69
  271. holidays/locale/pt_PT/LC_MESSAGES/PT.po +0 -184
  272. holidays/locale/pt_TL/LC_MESSAGES/TL.po +0 -167
  273. holidays/locale/ro/LC_MESSAGES/MD.po +0 -82
  274. holidays/locale/ro/LC_MESSAGES/RO.po +0 -76
  275. holidays/locale/ru/LC_MESSAGES/BY.po +0 -111
  276. holidays/locale/ru/LC_MESSAGES/RU.po +0 -91
  277. holidays/locale/sk/LC_MESSAGES/CZ.po +0 -88
  278. holidays/locale/sk/LC_MESSAGES/SK.po +0 -96
  279. holidays/locale/sl/LC_MESSAGES/SI.po +0 -76
  280. holidays/locale/sq/LC_MESSAGES/AL.po +0 -106
  281. holidays/locale/sr/LC_MESSAGES/BA.po +0 -113
  282. holidays/locale/sr/LC_MESSAGES/RS.po +0 -68
  283. holidays/locale/sv/LC_MESSAGES/SE.po +0 -104
  284. holidays/locale/sv_FI/LC_MESSAGES/FI.po +0 -164
  285. holidays/locale/sw/LC_MESSAGES/TZ.po +0 -119
  286. holidays/locale/tet/LC_MESSAGES/TL.po +0 -167
  287. holidays/locale/th/LC_MESSAGES/AU.po +0 -177
  288. holidays/locale/th/LC_MESSAGES/BN.po +0 -109
  289. holidays/locale/th/LC_MESSAGES/BY.po +0 -109
  290. holidays/locale/th/LC_MESSAGES/CA.po +0 -161
  291. holidays/locale/th/LC_MESSAGES/CN.po +0 -101
  292. holidays/locale/th/LC_MESSAGES/DE.po +0 -126
  293. holidays/locale/th/LC_MESSAGES/ID.po +0 -195
  294. holidays/locale/th/LC_MESSAGES/JP.po +0 -128
  295. holidays/locale/th/LC_MESSAGES/KH.po +0 -138
  296. holidays/locale/th/LC_MESSAGES/KR.po +0 -219
  297. holidays/locale/th/LC_MESSAGES/LA.po +0 -160
  298. holidays/locale/th/LC_MESSAGES/MY.po +0 -250
  299. holidays/locale/th/LC_MESSAGES/NO.po +0 -80
  300. holidays/locale/th/LC_MESSAGES/PH.po +0 -128
  301. holidays/locale/th/LC_MESSAGES/RU.po +0 -90
  302. holidays/locale/th/LC_MESSAGES/SE.po +0 -104
  303. holidays/locale/th/LC_MESSAGES/SG.po +0 -98
  304. holidays/locale/th/LC_MESSAGES/TH.po +0 -352
  305. holidays/locale/th/LC_MESSAGES/TW.po +0 -78
  306. holidays/locale/th/LC_MESSAGES/UA.po +0 -114
  307. holidays/locale/th/LC_MESSAGES/VN.po +0 -93
  308. holidays/locale/to/LC_MESSAGES/TO.po +0 -91
  309. holidays/locale/tr/LC_MESSAGES/TR.po +0 -90
  310. holidays/locale/uk/LC_MESSAGES/AL.po +0 -106
  311. holidays/locale/uk/LC_MESSAGES/AO.po +0 -117
  312. holidays/locale/uk/LC_MESSAGES/AR.po +0 -138
  313. holidays/locale/uk/LC_MESSAGES/AT.po +0 -116
  314. holidays/locale/uk/LC_MESSAGES/AW.po +0 -84
  315. holidays/locale/uk/LC_MESSAGES/AZ.po +0 -136
  316. holidays/locale/uk/LC_MESSAGES/BA.po +0 -114
  317. holidays/locale/uk/LC_MESSAGES/BE.po +0 -88
  318. holidays/locale/uk/LC_MESSAGES/BG.po +0 -89
  319. holidays/locale/uk/LC_MESSAGES/BO.po +0 -117
  320. holidays/locale/uk/LC_MESSAGES/BR.po +0 -263
  321. holidays/locale/uk/LC_MESSAGES/BVMF.po +0 -79
  322. holidays/locale/uk/LC_MESSAGES/CH.po +0 -123
  323. holidays/locale/uk/LC_MESSAGES/CL.po +0 -136
  324. holidays/locale/uk/LC_MESSAGES/CO.po +0 -105
  325. holidays/locale/uk/LC_MESSAGES/CR.po +0 -85
  326. holidays/locale/uk/LC_MESSAGES/CU.po +0 -69
  327. holidays/locale/uk/LC_MESSAGES/CW.po +0 -84
  328. holidays/locale/uk/LC_MESSAGES/CY.po +0 -100
  329. holidays/locale/uk/LC_MESSAGES/CZ.po +0 -88
  330. holidays/locale/uk/LC_MESSAGES/DE.po +0 -126
  331. holidays/locale/uk/LC_MESSAGES/DK.po +0 -88
  332. holidays/locale/uk/LC_MESSAGES/DO.po +0 -76
  333. holidays/locale/uk/LC_MESSAGES/EC.po +0 -73
  334. holidays/locale/uk/LC_MESSAGES/EE.po +0 -76
  335. holidays/locale/uk/LC_MESSAGES/ES.po +0 -225
  336. holidays/locale/uk/LC_MESSAGES/FI.po +0 -164
  337. holidays/locale/uk/LC_MESSAGES/FR.po +0 -116
  338. holidays/locale/uk/LC_MESSAGES/GE.po +0 -96
  339. holidays/locale/uk/LC_MESSAGES/GR.po +0 -89
  340. holidays/locale/uk/LC_MESSAGES/HN.po +0 -76
  341. holidays/locale/uk/LC_MESSAGES/HR.po +0 -94
  342. holidays/locale/uk/LC_MESSAGES/HU.po +0 -101
  343. holidays/locale/uk/LC_MESSAGES/ID.po +0 -195
  344. holidays/locale/uk/LC_MESSAGES/IL.po +0 -104
  345. holidays/locale/uk/LC_MESSAGES/IS.po +0 -92
  346. holidays/locale/uk/LC_MESSAGES/KZ.po +0 -103
  347. holidays/locale/uk/LC_MESSAGES/LI.po +0 -116
  348. holidays/locale/uk/LC_MESSAGES/LT.po +0 -94
  349. holidays/locale/uk/LC_MESSAGES/LU.po +0 -72
  350. holidays/locale/uk/LC_MESSAGES/LV.po +0 -105
  351. holidays/locale/uk/LC_MESSAGES/MC.po +0 -85
  352. holidays/locale/uk/LC_MESSAGES/MD.po +0 -84
  353. holidays/locale/uk/LC_MESSAGES/ME.po +0 -102
  354. holidays/locale/uk/LC_MESSAGES/MG.po +0 -92
  355. holidays/locale/uk/LC_MESSAGES/MX.po +0 -60
  356. holidays/locale/uk/LC_MESSAGES/MZ.po +0 -69
  357. holidays/locale/uk/LC_MESSAGES/NI.po +0 -76
  358. holidays/locale/uk/LC_MESSAGES/NL.po +0 -76
  359. holidays/locale/uk/LC_MESSAGES/NO.po +0 -80
  360. holidays/locale/uk/LC_MESSAGES/PE.po +0 -88
  361. holidays/locale/uk/LC_MESSAGES/PL.po +0 -115
  362. holidays/locale/uk/LC_MESSAGES/PT.po +0 -184
  363. holidays/locale/uk/LC_MESSAGES/PY.po +0 -88
  364. holidays/locale/uk/LC_MESSAGES/RO.po +0 -76
  365. holidays/locale/uk/LC_MESSAGES/SE.po +0 -104
  366. holidays/locale/uk/LC_MESSAGES/SI.po +0 -76
  367. holidays/locale/uk/LC_MESSAGES/SK.po +0 -96
  368. holidays/locale/uk/LC_MESSAGES/SV.po +0 -75
  369. holidays/locale/uk/LC_MESSAGES/TR.po +0 -89
  370. holidays/locale/uk/LC_MESSAGES/UA.po +0 -112
  371. holidays/locale/uk/LC_MESSAGES/UY.po +0 -120
  372. holidays/locale/uk/LC_MESSAGES/UZ.po +0 -96
  373. holidays/locale/uk/LC_MESSAGES/VE.po +0 -92
  374. holidays/locale/uz/LC_MESSAGES/UZ.po +0 -96
  375. holidays/locale/vi/LC_MESSAGES/VN.po +0 -93
  376. holidays/locale/zh_CN/LC_MESSAGES/CN.po +0 -100
  377. holidays/locale/zh_CN/LC_MESSAGES/TW.po +0 -78
  378. holidays/locale/zh_TW/LC_MESSAGES/CN.po +0 -100
  379. holidays/locale/zh_TW/LC_MESSAGES/TW.po +0 -78
  380. {holidays-0.65.dist-info → holidays-0.66.dist-info}/AUTHORS +0 -0
  381. {holidays-0.65.dist-info → holidays-0.66.dist-info}/LICENSE +0 -0
  382. {holidays-0.65.dist-info → holidays-0.66.dist-info}/WHEEL +0 -0
  383. {holidays-0.65.dist-info → holidays-0.66.dist-info}/top_level.txt +0 -0
@@ -13,25 +13,26 @@
13
13
  from gettext import gettext as tr
14
14
 
15
15
  from holidays.calendars.gregorian import AUG
16
+ from holidays.constants import PUBLIC, WORKDAY
16
17
  from holidays.groups import ChristianHolidays, InternationalHolidays, StaticHolidays
17
18
  from holidays.holiday_base import HolidayBase
18
19
 
19
20
 
20
21
  class Slovenia(HolidayBase, ChristianHolidays, InternationalHolidays, StaticHolidays):
21
22
  """
22
- Contains all work-free public holidays in Slovenia.
23
- No holidays are returned before year 1991 when Slovenia became independent
24
- country. Before that Slovenia was part of Socialist federal republic of
25
- Yugoslavia.
26
-
27
- List of holidays (including those that are not work-free:
28
- https://en.wikipedia.org/wiki/Public_holidays_in_Slovenia
23
+ References:
24
+ - https://en.wikipedia.org/wiki/Public_holidays_in_Slovenia
25
+ - https://sl.wikipedia.org/wiki/Dr%C5%BEavni_prazniki_v_Sloveniji
26
+ - https://www.uradni-list.si/glasilo-uradni-list-rs/vsebina/1991-01-1091/zakon-o-praznikih-in-dela-prostih-dnevih-v-republiki-sloveniji
27
+ - https://www.gov.si/teme/drzavni-prazniki-in-dela-prosti-dnevi/
29
28
  """
30
29
 
31
30
  country = "SI"
32
31
  default_language = "sl"
32
+ supported_categories = (PUBLIC, WORKDAY)
33
33
  supported_languages = ("en_US", "sl", "uk")
34
- start_year = 1991
34
+ # Act on Holidays and Non-Working Days in the Republic of Slovenia, 1991-11-21.
35
+ start_year = 1992
35
36
 
36
37
  def __init__(self, *args, **kwargs):
37
38
  ChristianHolidays.__init__(self)
@@ -40,17 +41,22 @@ class Slovenia(HolidayBase, ChristianHolidays, InternationalHolidays, StaticHoli
40
41
  super().__init__(*args, **kwargs)
41
42
 
42
43
  def _populate_public_holidays(self):
44
+ # Work-free national holidays and other work-free days.
45
+
43
46
  # New Year's Day.
44
47
  name = tr("novo leto")
45
48
  self._add_new_years_day(name)
46
49
  if self._year <= 2012 or self._year >= 2017:
47
50
  self._add_new_years_day_two(name)
48
51
 
49
- # Preseren's Day.
50
- self._add_holiday_feb_8(tr("Prešernov dan"))
52
+ # Prešeren's Day, the Slovenian Cultural Holiday.
53
+ self._add_holiday_feb_8(tr("Prešernov dan, slovenski kulturni praznik"))
54
+
55
+ # Easter Sunday.
56
+ self._add_easter_sunday(tr("velikonočna nedelja"))
51
57
 
52
58
  # Easter Monday.
53
- self._add_easter_monday(tr("Velikonočni ponedeljek"))
59
+ self._add_easter_monday(tr("velikonočni ponedeljek"))
54
60
 
55
61
  # Day of Uprising Against Occupation.
56
62
  self._add_holiday_apr_27(tr("dan upora proti okupatorju"))
@@ -60,24 +66,62 @@ class Slovenia(HolidayBase, ChristianHolidays, InternationalHolidays, StaticHoli
60
66
  self._add_labor_day(name)
61
67
  self._add_labor_day_two(name)
62
68
 
69
+ # Whit Sunday.
70
+ self._add_whit_sunday(tr("binkoštna nedelja"))
71
+
63
72
  # Statehood Day.
64
73
  self._add_holiday_jun_25(tr("dan državnosti"))
65
74
 
66
75
  # Assumption Day.
67
76
  self._add_assumption_of_mary_day(tr("Marijino vnebovzetje"))
68
77
 
69
- if self._year >= 1992:
70
- # Reformation Day.
71
- self._add_holiday_oct_31(tr("dan reformacije"))
78
+ # Reformation Day.
79
+ self._add_holiday_oct_31(tr("dan reformacije"))
72
80
 
73
- # Remembrance Day.
81
+ # Day of Remembrance for the Dead.
74
82
  self._add_all_saints_day(tr("dan spomina na mrtve"))
75
83
 
76
84
  # Christmas Day.
77
- self._add_christmas_day(tr("Božič"))
78
-
79
- # Independence and Unity Day.
80
- self._add_holiday_dec_26(tr("dan samostojnosti in enotnosti"))
85
+ self._add_christmas_day(tr("božič"))
86
+
87
+ self._add_holiday_dec_26(
88
+ # Independence and Unity Day.
89
+ tr("dan samostojnosti in enotnosti")
90
+ if self._year >= 2005
91
+ # Independence Day.
92
+ else tr("dan samostojnosti")
93
+ )
94
+
95
+ def _populate_workday_holidays(self):
96
+ # Not work-free national holidays.
97
+
98
+ if self._year >= 2011:
99
+ # Primož Trubar Day.
100
+ self._add_holiday_jun_8(tr("dan Primoža Trubarja"))
101
+
102
+ if self._year >= 2006:
103
+ # Unification of Prekmurje Slovenes with the Mother Nation.
104
+ self._add_holiday_aug_17(tr("združitev prekmurskih Slovencev z matičnim narodom"))
105
+
106
+ self._add_holiday_sep_15(
107
+ # Integration of Primorska into the Homeland.
108
+ tr("priključitev Primorske k matični domovini")
109
+ if self._year >= 2025
110
+ # Return of Primorska into the Homeland.
111
+ else tr("vrnitev Primorske k matični domovini")
112
+ )
113
+
114
+ if self._year >= 2020:
115
+ # Slovenian Sport's Day.
116
+ self._add_holiday_sep_23(tr("dan slovenskega športa"))
117
+
118
+ if self._year >= 2015:
119
+ # Sovereignty Day.
120
+ self._add_holiday_oct_25(tr("dan suverenosti"))
121
+
122
+ if self._year >= 2005:
123
+ # Rudolf Maister Day.
124
+ self._add_holiday_nov_23(tr("dan Rudolfa Maistra"))
81
125
 
82
126
 
83
127
  class SI(Slovenia):
@@ -0,0 +1,515 @@
1
+ # holidays
2
+ # --------
3
+ # A fast, efficient Python library for generating country, province and state
4
+ # specific sets of holidays on the fly. It aims to make determining whether a
5
+ # specific date is a holiday as fast and flexible as possible.
6
+ #
7
+ # Authors: Vacanza Team and individual contributors (see AUTHORS file)
8
+ # dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
9
+ # ryanss <ryanssdev@icloud.com> (c) 2014-2017
10
+ # Website: https://github.com/vacanza/holidays
11
+ # License: MIT (see LICENSE file)
12
+
13
+ from gettext import gettext as tr
14
+
15
+ from holidays.calendars import _CustomHinduHolidays, _CustomIslamicHolidays
16
+ from holidays.calendars.gregorian import (
17
+ JAN,
18
+ FEB,
19
+ MAR,
20
+ APR,
21
+ MAY,
22
+ JUN,
23
+ JUL,
24
+ AUG,
25
+ SEP,
26
+ OCT,
27
+ NOV,
28
+ DEC,
29
+ _timedelta,
30
+ )
31
+ from holidays.constants import BANK, GOVERNMENT, PUBLIC, WORKDAY
32
+ from holidays.groups import (
33
+ ChristianHolidays,
34
+ HinduCalendarHolidays,
35
+ InternationalHolidays,
36
+ IslamicHolidays,
37
+ SinhalaCalendarHolidays,
38
+ StaticHolidays,
39
+ )
40
+ from holidays.holiday_base import HolidayBase
41
+
42
+
43
+ class SriLanka(
44
+ HolidayBase,
45
+ ChristianHolidays,
46
+ HinduCalendarHolidays,
47
+ InternationalHolidays,
48
+ IslamicHolidays,
49
+ SinhalaCalendarHolidays,
50
+ StaticHolidays,
51
+ ):
52
+ """
53
+ References:
54
+ - http://www.commonlii.org/lk/legis/num_act/ha29o1971152/ # No. 29 of 1971 (Holidays Act)
55
+ - http://www.commonlii.org/lk/legis/num_act/ha21o1991232/ # No. 21 of 1991 (Amendment)
56
+ - https://web.archive.org/web/20110722150724/http://www.pubad.gov.lk/Holidays/holidays%202003.htm
57
+ - https://web.archive.org/web/20111018053717/http://www.pubad.gov.lk/Holidays/Public%20&%20Bank%20Holidays%202004.pdf
58
+ - https://web.archive.org/web/20241120204015/https://documents.gov.lk/en/calendar.php
59
+
60
+ Cross-Checked With:
61
+ - https://web.archive.org/web/20111018053927/http://www.pubad.gov.lk/Holidays/Public%20&%20Bank%20Holidays%202005.pdf
62
+ - https://web.archive.org/web/20111018061003/http://www.pubad.gov.lk/Holidays/Public%20&%20Bank%20Holidays%202006.pdf
63
+ - https://web.archive.org/web/20110722150032/http://www.pubad.gov.lk/Holidays/Public%20&%20Bank%20Holidays%202007.pdf
64
+ - https://web.archive.org/web/20111018071837/http://www.pubad.gov.lk/Holidays/PublicBankHolidays2008.pdf
65
+ - https://web.archive.org/web/20120309065711/http://www.pubad.gov.lk/Holidays/Public&BankHolidays2009.pdf
66
+ - https://web.archive.org/web/20111018071247/http://www.pubad.gov.lk/Holidays/Public&BankHolidays2010.pdf
67
+ - https://web.archive.org/web/20110722151043/http://www.pubad.gov.lk/Holidays/Public&BankHolidays2011.pdf
68
+ - https://web.archive.org/web/20111125074237/http://www.pubad.gov.lk/Holidays/Public&BankHolidays2012.pdf
69
+ - https://www.cbsl.gov.lk/en/about/about-the-bank/bank-holidays-2019
70
+ - https://www.cbsl.gov.lk/en/about/about-the-bank/bank-holidays-2020
71
+ - https://www.cbsl.gov.lk/en/about/about-the-bank/bank-holidays-2021
72
+ - https://www.cbsl.gov.lk/en/about/about-the-bank/bank-holidays-2022
73
+ - https://www.cbsl.gov.lk/en/about/about-the-bank/bank-holidays-2023
74
+ - https://www.cbsl.gov.lk/en/about/about-the-bank/bank-holidays-2024
75
+ - https://www.cbsl.gov.lk/en/about/about-the-bank/bank-holidays-2025
76
+ """
77
+
78
+ country = "LK"
79
+ supported_categories = (BANK, GOVERNMENT, PUBLIC, WORKDAY)
80
+ default_language = "si_LK"
81
+ # %s (estimated).
82
+ estimated_label = tr("%s (අනුමානිත)")
83
+ supported_languages = ("en_US", "si_LK", "ta_LK")
84
+ # Sri Lanka's Holidays Act (No. 29 of 1971) was first proclaimed on SEP 2nd, 1971
85
+ # but the earliest citable calendar online is from 2003.
86
+ # As there's no source for future Poya dates, end year is capped at 2025.
87
+ start_year = 1972
88
+ end_year = 2025
89
+
90
+ def __init__(self, *args, **kwargs):
91
+ ChristianHolidays.__init__(self)
92
+ HinduCalendarHolidays.__init__(self, SriLankaHinduHolidays)
93
+ InternationalHolidays.__init__(self)
94
+ IslamicHolidays.__init__(self, SriLankaIslamicHolidays)
95
+ SinhalaCalendarHolidays.__init__(self)
96
+ StaticHolidays.__init__(self, cls=SriLankaStaticHolidays)
97
+ super().__init__(*args, **kwargs)
98
+
99
+ def _populate_public_holidays(self):
100
+ # Non-Sectarian Holidays.
101
+
102
+ # Tamil Thai Pongal Day.
103
+ name = tr("දෙමළ තෛපොංැලල් දිනය")
104
+ thai_pongal_years_jan_14 = {
105
+ 2005,
106
+ 2006,
107
+ 2009,
108
+ 2010,
109
+ 2013,
110
+ 2014,
111
+ 2017,
112
+ 2018,
113
+ 2021,
114
+ 2022,
115
+ 2025,
116
+ }
117
+ if self._year in thai_pongal_years_jan_14:
118
+ self._add_holiday_jan_14(name)
119
+ else:
120
+ self._add_holiday_jan_15(name)
121
+
122
+ # Independence Day.
123
+ self._add_holiday_feb_4(tr("නිදහස් සමරු දිනය"))
124
+
125
+ # Sinhala and Tamil New Year.
126
+ name = tr("සිංහල හා දෙමළ අලුත් අවුරුදු දිනය")
127
+ aluth_avurudda_years_apr_13 = {
128
+ 2004,
129
+ 2008,
130
+ 2012,
131
+ # 2016 is on APR, 14.
132
+ 2020,
133
+ 2024,
134
+ }
135
+ if self._year in aluth_avurudda_years_apr_13:
136
+ dt = self._add_holiday_apr_13(name)
137
+ else:
138
+ dt = self._add_holiday_apr_14(name)
139
+ # Day Before Sinhala and Tamil New Year.
140
+ self._add_holiday(tr("සිංහල හා දෙමළ අලුත් අවුරුදු දිනට පෙර දිනය"), _timedelta(dt, -1))
141
+
142
+ # International Workers' Day.
143
+ self._add_labor_day(tr("ලොක කම්කරු දිනය"))
144
+
145
+ # Hindu Holidays.
146
+
147
+ maha_sivarathri_dates = {
148
+ # The one used in Sri Lanka isn't an exact match with India, used with caution.
149
+ 2003: (MAR, 1),
150
+ 2004: (FEB, 18),
151
+ 2005: (MAR, 8),
152
+ 2006: (FEB, 26),
153
+ 2007: (FEB, 16),
154
+ 2008: (MAR, 6),
155
+ 2009: (FEB, 23),
156
+ 2010: (MAR, 13),
157
+ 2011: (MAR, 2),
158
+ 2012: (FEB, 20),
159
+ 2013: (MAR, 10),
160
+ 2014: (FEB, 27),
161
+ 2015: (FEB, 17),
162
+ 2016: (MAR, 7),
163
+ 2017: (FEB, 24),
164
+ 2018: (FEB, 13),
165
+ 2019: (MAR, 4),
166
+ 2020: (FEB, 21),
167
+ 2021: (MAR, 11),
168
+ 2022: (MAR, 1),
169
+ 2023: (FEB, 18),
170
+ 2024: (MAR, 8),
171
+ 2025: (FEB, 26),
172
+ }
173
+ maha_sivarathri_date = maha_sivarathri_dates.get(self._year)
174
+ if maha_sivarathri_date:
175
+ # Maha Sivarathri Day.
176
+ self._add_holiday(tr("මහ සිවරාත්රි දිනය"), maha_sivarathri_date)
177
+
178
+ # Deepavali was a working day in 2003.
179
+ if self._year >= 2004:
180
+ # Deepavali Festival Day.
181
+ self._add_diwali(tr("දීපවාලි උත්සව දිනය"))
182
+
183
+ # Christian Holidays.
184
+
185
+ # Good Friday.
186
+ self._add_good_friday(tr("මහ සිකුරාදා දිනය"))
187
+
188
+ # Christmas Day.
189
+ self._add_christmas_day(tr("නත්තල් උත්සව දිනය"))
190
+
191
+ # Poya Holidays.
192
+ # All Adhi Poya Holidays will instead be added in StaticHolidays.
193
+
194
+ # Duruthu Full Moon Poya Day.
195
+ self._add_duruthu_poya(tr("දුරුතු පුර පසළොස්වක පෝය දිනය"))
196
+
197
+ # Nawam Full Moon Poya Day.
198
+ self._add_nawam_poya(tr("නවම් පුර පසළොස්වක පෝය දිනය"))
199
+
200
+ # Medin Full Moon Poya Day.
201
+ self._add_medin_poya(tr("මැදින් පුර පසළොස්වක පෝය දිනය"))
202
+
203
+ # Bak Full Moon Poya Day.
204
+ self._add_bak_poya(tr("බක් පුර පසළොස්වක පෝය දිනය"))
205
+
206
+ # Vesak Full Moon Poya Day.
207
+ dt = self._add_vesak_poya(tr("වෙසක් පුර පසළොස්වක පෝය දිනය"))
208
+
209
+ if self._year >= 2003:
210
+ # Day Following Vesak Full Moon Poya Day.
211
+ self._add_holiday(tr("වෙසක් පුර පසළොස්වක පෝය දිනට පසු දිනය"), _timedelta(dt, +1))
212
+
213
+ # Poson Full Moon Poya Day.
214
+ self._add_poson_poya(tr("පොසොන් පුර පසළොස්වක පෝය දිනය"))
215
+
216
+ # Esala Full Moon Poya Day.
217
+ self._add_esala_poya(tr("ඇසල පුර පසළොස්වක පෝය දිනය"))
218
+
219
+ # Nikini Full Moon Poya Day.
220
+ self._add_nikini_poya(tr("නිකිණි පුර පසළොස්වක පෝය දිනය"))
221
+
222
+ # Binara Full Moon Poya Day.
223
+ self._add_binara_poya(tr("බිනර පුර පසළොස්වක පෝය දිනය"))
224
+
225
+ # Vap Full Moon Poya Day.
226
+ self._add_vap_poya(tr("වප් පුර පසළොස්වක පෝය දිනය"))
227
+
228
+ # Il Full Moon Poya Day.
229
+ self._add_il_poya(tr("ඉල් පුර පසළොස්වක පෝය දිනය"))
230
+
231
+ # Unduvap Full Moon Poya Day.
232
+ self._add_unduvap_poya(tr("උඳුවප් පුර පසළොස්වක පෝය දිනය"))
233
+
234
+ # Islamic Holidays.
235
+
236
+ # Eid al-Fitr.
237
+ self._add_eid_al_fitr_day(tr("ඊදුල් ෆීතර්"))
238
+
239
+ # Eid al-Adha.
240
+ self._add_eid_al_adha_day(tr("ඊදුල් අල්හා"))
241
+
242
+ # The Prophet's Birthday.
243
+ self._add_mawlid_day(tr("නබි නායකතුමාගේ උපන් දිනය"))
244
+
245
+
246
+ class LK(SriLanka):
247
+ pass
248
+
249
+
250
+ class LKA(SriLanka):
251
+ pass
252
+
253
+
254
+ class SriLankaHinduHolidays(_CustomHinduHolidays):
255
+ DIWALI_DATES = {
256
+ 2003: (OCT, 24),
257
+ 2004: (NOV, 11),
258
+ 2005: (NOV, 1),
259
+ 2006: (OCT, 21),
260
+ 2007: (NOV, 8),
261
+ 2008: (OCT, 27),
262
+ 2009: (OCT, 17),
263
+ 2010: (NOV, 5),
264
+ 2011: (OCT, 26),
265
+ 2012: (NOV, 13),
266
+ 2013: (NOV, 2),
267
+ 2014: (OCT, 22),
268
+ 2015: (NOV, 10),
269
+ 2016: (OCT, 29),
270
+ 2017: (OCT, 18),
271
+ 2018: (NOV, 6),
272
+ 2019: (OCT, 27),
273
+ 2020: (NOV, 14),
274
+ 2021: (NOV, 4),
275
+ 2022: (OCT, 24),
276
+ 2023: (NOV, 12),
277
+ 2024: (OCT, 31),
278
+ 2025: (OCT, 20),
279
+ }
280
+
281
+
282
+ class SriLankaIslamicHolidays(_CustomIslamicHolidays):
283
+ EID_AL_ADHA_DATES = {
284
+ 2003: (FEB, 12),
285
+ 2004: (FEB, 1),
286
+ 2005: (JAN, 21),
287
+ 2006: ((JAN, 11), (DEC, 31)),
288
+ 2007: (DEC, 21),
289
+ 2008: (DEC, 9),
290
+ 2009: (NOV, 28),
291
+ 2010: (NOV, 17),
292
+ # https://www.adaderana.lk/news.php?nid=15606
293
+ 2011: (NOV, 7),
294
+ # https://www.adaderana.lk/news.php?nid=20136
295
+ 2012: (OCT, 27),
296
+ 2013: (OCT, 16),
297
+ 2014: (OCT, 5),
298
+ 2015: (SEP, 24),
299
+ 2016: (SEP, 12),
300
+ 2017: (SEP, 1),
301
+ 2018: (AUG, 22),
302
+ 2019: (AUG, 12),
303
+ 2020: (AUG, 1),
304
+ 2021: (JUL, 21),
305
+ 2022: (JUL, 10),
306
+ 2023: (JUN, 29),
307
+ 2024: (JUN, 17),
308
+ 2025: (JUN, 7),
309
+ }
310
+
311
+ EID_AL_FITR_DATES = {
312
+ 2003: (NOV, 26),
313
+ 2004: (NOV, 14),
314
+ 2005: (NOV, 4),
315
+ 2006: (OCT, 24),
316
+ 2007: (OCT, 13),
317
+ 2008: (OCT, 1),
318
+ 2009: (SEP, 21),
319
+ 2010: (SEP, 10),
320
+ 2011: (AUG, 31),
321
+ 2012: (AUG, 19),
322
+ 2013: (AUG, 9),
323
+ 2014: (JUL, 29),
324
+ 2015: (JUL, 18),
325
+ 2016: (JUL, 6),
326
+ 2017: (JUN, 26),
327
+ 2018: (JUN, 15),
328
+ 2019: (JUN, 5),
329
+ 2020: (MAY, 25),
330
+ 2021: (MAY, 14),
331
+ 2022: (MAY, 3),
332
+ 2023: (APR, 22),
333
+ 2024: (APR, 11),
334
+ 2025: (MAR, 31),
335
+ }
336
+
337
+ MAWLID_DATES = {
338
+ 2003: (MAY, 14),
339
+ 2004: (MAY, 2),
340
+ 2005: (APR, 22),
341
+ 2006: (APR, 11),
342
+ 2007: (APR, 1),
343
+ 2008: (MAR, 20),
344
+ 2009: (MAR, 10),
345
+ 2010: (FEB, 27),
346
+ 2011: (FEB, 16),
347
+ 2012: (FEB, 5),
348
+ 2013: (JAN, 25),
349
+ 2014: (JAN, 14),
350
+ # Technically 2015 has both JAN 5 and DEC 24
351
+ # but this is only observed for JAN 4.
352
+ 2015: (JAN, 4),
353
+ 2016: (DEC, 12),
354
+ 2017: (DEC, 1),
355
+ 2018: (NOV, 20),
356
+ 2019: (NOV, 10),
357
+ 2020: (OCT, 30),
358
+ 2021: (OCT, 19),
359
+ 2022: (OCT, 9),
360
+ 2023: (SEP, 28),
361
+ 2024: (SEP, 16),
362
+ 2025: (SEP, 5),
363
+ }
364
+
365
+
366
+ class SriLankaStaticHolidays:
367
+ """
368
+ References:
369
+ - https://www.adaderana.lk/news.php?nid=13026
370
+ - https://www.adaderana.lk/news.php?nid=17539
371
+ - https://www.adaderana.lk/news.php?nid=22168
372
+ - https://www.adaderana.lk/news.php?nid=34870
373
+ - https://www.adaderana.lk/news.php?nid=55146
374
+ - https://www.adaderana.lk/news.php?nid=61437
375
+ - https://www.adaderana.lk/news.php?nid=64367
376
+ - https://www.adaderana.lk/news.php?nid=81686
377
+ - https://www.adaderana.lk/news.php?nid=82111
378
+ - https://www.adaderana.lk/news.php?nid=82979
379
+ - https://www.adaderana.lk/news.php?nid=83082
380
+ - https://www.adaderana.lk/news.php?nid=84035
381
+ - https://www.adaderana.lk/news.php?nid=98560
382
+ - https://www.adaderana.lk/news.php?nid=102125
383
+ - https://web.archive.org/web/20110722150724/http://www.pubad.gov.lk/Holidays/holidays%202003.htm
384
+ - https://web.archive.org/web/20111018053717/http://www.pubad.gov.lk/Holidays/Public%20&%20Bank%20Holidays%202004.pdf
385
+ - https://web.archive.org/web/20241120204015/https://documents.gov.lk/en/calendar.php
386
+ """
387
+
388
+ # Adhi Binara Full Moon Poya Day.
389
+ adhi_binara_poya_name = tr("අධි බිනර පුර පසළොස්වක පෝය දිනය")
390
+
391
+ # Adhi Esala Full Moon Poya Day.
392
+ adhi_esala_poya_name = tr("අධි ඇසල පුර පසළොස්වක පෝය දිනය")
393
+
394
+ # Adhi Poson Full Moon Poya Day.
395
+ adhi_poson_poya_name = tr("අධි පොසොන් පුර පසළොස්වක පෝය දිනය")
396
+
397
+ # Adhi Vap Full Moon Poya Day.
398
+ adhi_vap_poya_name = tr("අධි වප් පුර පසළොස්වක පෝය දිනය")
399
+
400
+ # Adhi Vesak Full Mon Poya Day.
401
+ adhi_vesak_poya_name = tr("අධි වෙසක් පුර පසළොස්වක පෝය දිනය")
402
+
403
+ # Half-Day Special Bank Holiday.
404
+ half_day_special_bank_holiday_name = tr("දින භාගයක විශේෂ බැංකු නිවාඩු දිනය")
405
+
406
+ # Public Sector Holiday.
407
+ public_sector_holiday_name = tr("රාජ්ය අංශයේ නිවාඩු දිනය")
408
+
409
+ # Special Bank Holiday.
410
+ special_bank_holiday_name = tr("විශේෂ බැංකු නිවාඩු දිනය")
411
+
412
+ # Special Public Holiday.
413
+ special_public_holiday_name = tr("විශේෂ රජයේ නිවාඩු දිනය")
414
+
415
+ special_bank_holidays = {
416
+ 2005: (
417
+ (MAY, 2, special_bank_holiday_name),
418
+ (DEC, 26, special_bank_holiday_name),
419
+ ),
420
+ 2007: (
421
+ (FEB, 5, special_bank_holiday_name),
422
+ (APR, 3, special_bank_holiday_name),
423
+ ),
424
+ 2008: (APR, 18, special_bank_holiday_name),
425
+ 2011: (
426
+ (MAY, 2, special_bank_holiday_name),
427
+ (DEC, 26, special_bank_holiday_name),
428
+ ),
429
+ 2012: (
430
+ (JAN, 16, special_bank_holiday_name),
431
+ (FEB, 10, special_bank_holiday_name),
432
+ (MAY, 7, special_bank_holiday_name),
433
+ ),
434
+ 2013: (APR, 15, special_bank_holiday_name),
435
+ 2014: (APR, 15, special_bank_holiday_name),
436
+ 2015: (JAN, 5, special_bank_holiday_name),
437
+ 2016: (
438
+ (MAY, 2, special_bank_holiday_name),
439
+ (MAY, 23, special_bank_holiday_name),
440
+ (DEC, 26, special_bank_holiday_name),
441
+ ),
442
+ 2018: (
443
+ (JAN, 15, special_bank_holiday_name),
444
+ (FEB, 5, special_bank_holiday_name),
445
+ ),
446
+ 2019: (
447
+ (APR, 15, special_bank_holiday_name),
448
+ # MAY 20 got upgraded to Special Public Holiday.
449
+ (NOV, 11, special_bank_holiday_name),
450
+ ),
451
+ 2020: (APR, 14, special_bank_holiday_name),
452
+ 2021: (
453
+ (APR, 30, half_day_special_bank_holiday_name),
454
+ (DEC, 24, half_day_special_bank_holiday_name),
455
+ ),
456
+ 2022: (
457
+ # MAY 2 got upgraded to Special Public Holiday.
458
+ (OCT, 10, special_bank_holiday_name),
459
+ (DEC, 26, special_bank_holiday_name),
460
+ ),
461
+ 2023: (JAN, 16, special_bank_holiday_name),
462
+ 2025: (APR, 15, special_bank_holiday_name),
463
+ }
464
+
465
+ special_government_holidays = {
466
+ 2020: (JUN, 4, public_sector_holiday_name),
467
+ 2022: (
468
+ (JUN, 13, public_sector_holiday_name),
469
+ # All Friday between JUN 15, 2022 to AUG 2, 2022.
470
+ (JUN, 17, public_sector_holiday_name),
471
+ (JUN, 24, public_sector_holiday_name),
472
+ (JUL, 1, public_sector_holiday_name),
473
+ (JUL, 8, public_sector_holiday_name),
474
+ (JUL, 15, public_sector_holiday_name),
475
+ (JUL, 22, public_sector_holiday_name),
476
+ (JUL, 29, public_sector_holiday_name),
477
+ ),
478
+ }
479
+
480
+ special_public_holidays = {
481
+ 2004: (JUL, 31, adhi_esala_poya_name),
482
+ 2007: (MAY, 31, adhi_poson_poya_name),
483
+ 2010: (APR, 28, adhi_vesak_poya_name),
484
+ # 2011, MAY 2 confirmed as not getting upgrade to Special Public Holiday.
485
+ 2012: (
486
+ (MAY, 7, special_public_holiday_name),
487
+ (AUG, 31, adhi_binara_poya_name),
488
+ ),
489
+ 2013: (APR, 15, special_public_holiday_name),
490
+ 2015: (JUL, 1, adhi_esala_poya_name),
491
+ 2016: (APR, 15, special_public_holiday_name),
492
+ 2018: (MAY, 29, adhi_poson_poya_name),
493
+ 2019: (MAY, 20, special_public_holiday_name),
494
+ 2020: (
495
+ (MAR, 16, special_public_holiday_name),
496
+ (MAR, 17, special_public_holiday_name),
497
+ (MAR, 18, special_public_holiday_name),
498
+ (MAR, 19, special_public_holiday_name),
499
+ (OCT, 1, adhi_vap_poya_name),
500
+ ),
501
+ 2022: (
502
+ (APR, 11, special_public_holiday_name),
503
+ (APR, 12, special_public_holiday_name),
504
+ (MAY, 2, special_public_holiday_name),
505
+ ),
506
+ 2023: (JUL, 3, adhi_esala_poya_name),
507
+ 2024: (
508
+ (APR, 15, special_public_holiday_name),
509
+ (SEP, 29, special_public_holiday_name),
510
+ ),
511
+ }
512
+
513
+ special_workday_holidays = {
514
+ 2003: (OCT, 24, tr("දීපවාලි උත්සව දිනය")), # Deepavali Festival Day.
515
+ }
@@ -30,6 +30,9 @@ class Sweden(HolidayBase, ChristianHolidays, InternationalHolidays):
30
30
  Primary sources:
31
31
  - https://sv.wikipedia.org/wiki/Helgdagar_i_Sverige
32
32
  - http://www.riksdagen.se/sv/dokument-lagar/dokument/svensk-forfattningssamling/lag-1989253-om-allmanna-helgdagar_sfs-1989-253
33
+ - https://sv.wikipedia.org/wiki/F%C3%B6rsta_maj
34
+ - https://sv.wikipedia.org/wiki/Sveriges_nationaldag
35
+ - https://sv.wikipedia.org/wiki/Midsommarafton
33
36
  """
34
37
 
35
38
  country = "SE"
@@ -66,7 +69,6 @@ class Sweden(HolidayBase, ChristianHolidays, InternationalHolidays):
66
69
  # Easter Monday.
67
70
  self._add_easter_monday(tr("Annandag påsk"))
68
71
 
69
- # Source: https://sv.wikipedia.org/wiki/F%C3%B6rsta_maj
70
72
  if self._year >= 1939:
71
73
  # May Day.
72
74
  self._add_labor_day(tr("Första maj"))
@@ -74,7 +76,6 @@ class Sweden(HolidayBase, ChristianHolidays, InternationalHolidays):
74
76
  # Ascension Day.
75
77
  self._add_ascension_thursday(tr("Kristi himmelsfärdsdag"))
76
78
 
77
- # Source: https://sv.wikipedia.org/wiki/Sveriges_nationaldag
78
79
  if self._year >= 2005:
79
80
  # National Day of Sweden.
80
81
  self._add_holiday_jun_6(tr("Sveriges nationaldag"))
@@ -86,11 +87,6 @@ class Sweden(HolidayBase, ChristianHolidays, InternationalHolidays):
86
87
  # Whit Monday.
87
88
  self._add_whit_monday(tr("Annandag pingst"))
88
89
 
89
- # Source:
90
- # https://sv.wikipedia.org/wiki/Midsommarafton
91
- # https://www.nordiskamuseet.se/aretsdagar/midsommarafton
92
- # Midsummer evening. Friday between June 19th and June 25th
93
-
94
90
  # Midsummer Eve.
95
91
  name = tr("Midsommarafton")
96
92
  dt = (
@@ -102,8 +98,9 @@ class Sweden(HolidayBase, ChristianHolidays, InternationalHolidays):
102
98
  # Midsummer Day.
103
99
  self._add_holiday(tr("Midsommardagen"), _timedelta(dt, +1))
104
100
 
105
- # All Saints' Day.
106
- self._add_holiday_1st_sat_from_oct_31(tr("Alla helgons dag"))
101
+ if self._year >= 1953:
102
+ # All Saints' Day.
103
+ self._add_holiday_1st_sat_from_oct_31(tr("Alla helgons dag"))
107
104
 
108
105
  # Christmas Eve.
109
106
  self._add_christmas_eve(tr("Julafton"))