holidays 0.58__py3-none-any.whl → 0.60__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- holidays/__init__.py +3 -15
- holidays/calendars/buddhist.py +4 -4
- holidays/calendars/chinese.py +8 -8
- holidays/calendars/hindu.py +4 -4
- holidays/calendars/islamic.py +25 -25
- holidays/countries/albania.py +81 -27
- holidays/countries/angola.py +2 -2
- holidays/countries/armenia.py +5 -2
- holidays/countries/australia.py +2 -1
- holidays/countries/azerbaijan.py +7 -2
- holidays/countries/belarus.py +1 -1
- holidays/countries/bosnia_and_herzegovina.py +2 -2
- holidays/countries/bulgaria.py +1 -2
- holidays/countries/cambodia.py +5 -7
- holidays/countries/chile.py +1 -2
- holidays/countries/czechia.py +6 -3
- holidays/countries/egypt.py +0 -1
- holidays/countries/france.py +1 -1
- holidays/countries/georgia.py +1 -1
- holidays/countries/germany.py +20 -1
- holidays/countries/hongkong.py +1 -2
- holidays/countries/indonesia.py +620 -83
- holidays/countries/japan.py +3 -4
- holidays/countries/jersey.py +2 -2
- holidays/countries/jordan.py +1 -1
- holidays/countries/kazakhstan.py +1 -1
- holidays/countries/kuwait.py +1 -1
- holidays/countries/kyrgyzstan.py +1 -1
- holidays/countries/malaysia.py +7 -1
- holidays/countries/mauritania.py +0 -1
- holidays/countries/moldova.py +4 -3
- holidays/countries/philippines.py +79 -40
- holidays/countries/russia.py +1 -1
- holidays/countries/saudi_arabia.py +1 -2
- holidays/countries/slovakia.py +1 -1
- holidays/countries/south_korea.py +1 -2
- holidays/countries/spain.py +17 -14
- holidays/countries/taiwan.py +1 -2
- holidays/countries/thailand.py +21 -23
- holidays/countries/timor_leste.py +41 -0
- holidays/countries/ukraine.py +1 -3
- holidays/countries/united_arab_emirates.py +5 -2
- holidays/countries/united_kingdom.py +2 -2
- holidays/countries/united_states.py +6 -4
- holidays/countries/uzbekistan.py +2 -1
- holidays/countries/vietnam.py +116 -25
- holidays/{deprecation.py → deprecations/v1_incompatibility.py} +12 -2
- holidays/groups/__init__.py +1 -0
- holidays/groups/buddhist.py +6 -11
- holidays/groups/chinese.py +7 -25
- holidays/groups/eastern.py +51 -0
- holidays/groups/hindu.py +6 -11
- holidays/groups/international.py +8 -5
- holidays/groups/islamic.py +39 -46
- holidays/holiday_base.py +31 -30
- holidays/locale/am/LC_MESSAGES/ET.mo +0 -0
- holidays/locale/am/LC_MESSAGES/ET.po +1 -1
- holidays/locale/ar/LC_MESSAGES/AE.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/AE.po +1 -1
- holidays/locale/ar/LC_MESSAGES/BH.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/BH.po +1 -1
- holidays/locale/ar/LC_MESSAGES/CA.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/CA.po +1 -1
- holidays/locale/ar/LC_MESSAGES/DJ.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/DJ.po +1 -1
- holidays/locale/ar/LC_MESSAGES/DZ.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/DZ.po +1 -1
- holidays/locale/ar/LC_MESSAGES/EG.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/EG.po +1 -1
- holidays/locale/ar/LC_MESSAGES/ET.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/ET.po +1 -1
- holidays/locale/ar/LC_MESSAGES/MA.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/MA.po +1 -1
- holidays/locale/ar/LC_MESSAGES/SA.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/SA.po +1 -1
- holidays/locale/ar/LC_MESSAGES/TN.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/TN.po +1 -1
- holidays/locale/ar/LC_MESSAGES/UA.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/UA.po +1 -1
- holidays/locale/az/LC_MESSAGES/AZ.mo +0 -0
- holidays/locale/az/LC_MESSAGES/AZ.po +1 -1
- holidays/locale/be/LC_MESSAGES/BY.mo +0 -0
- holidays/locale/be/LC_MESSAGES/BY.po +1 -1
- holidays/locale/bg/LC_MESSAGES/BG.mo +0 -0
- holidays/locale/bg/LC_MESSAGES/BG.po +1 -1
- holidays/locale/bs/LC_MESSAGES/BA.mo +0 -0
- holidays/locale/bs/LC_MESSAGES/BA.po +1 -1
- holidays/locale/cs/LC_MESSAGES/CZ.mo +0 -0
- holidays/locale/cs/LC_MESSAGES/CZ.po +1 -1
- holidays/locale/da/LC_MESSAGES/DK.mo +0 -0
- holidays/locale/da/LC_MESSAGES/DK.po +1 -1
- holidays/locale/da/LC_MESSAGES/GL.mo +0 -0
- holidays/locale/da/LC_MESSAGES/GL.po +1 -1
- holidays/locale/de/LC_MESSAGES/AT.mo +0 -0
- holidays/locale/de/LC_MESSAGES/AT.po +1 -1
- holidays/locale/de/LC_MESSAGES/BE.mo +0 -0
- holidays/locale/de/LC_MESSAGES/BE.po +1 -1
- holidays/locale/de/LC_MESSAGES/CH.mo +0 -0
- holidays/locale/de/LC_MESSAGES/CH.po +1 -1
- holidays/locale/de/LC_MESSAGES/DE.mo +0 -0
- holidays/locale/de/LC_MESSAGES/DE.po +16 -5
- holidays/locale/de/LC_MESSAGES/LI.mo +0 -0
- holidays/locale/de/LC_MESSAGES/LI.po +1 -1
- holidays/locale/de/LC_MESSAGES/LU.mo +0 -0
- holidays/locale/de/LC_MESSAGES/LU.po +1 -1
- holidays/locale/el/LC_MESSAGES/CY.mo +0 -0
- holidays/locale/el/LC_MESSAGES/CY.po +1 -1
- holidays/locale/el/LC_MESSAGES/GR.mo +0 -0
- holidays/locale/el/LC_MESSAGES/GR.po +1 -1
- holidays/locale/en_CA/LC_MESSAGES/CA.mo +0 -0
- holidays/locale/en_CA/LC_MESSAGES/CA.po +1 -1
- holidays/locale/en_CY/LC_MESSAGES/CY.mo +0 -0
- holidays/locale/en_CY/LC_MESSAGES/CY.po +1 -1
- holidays/locale/en_PH/LC_MESSAGES/PH.mo +0 -0
- holidays/locale/en_PH/LC_MESSAGES/PH.po +128 -0
- holidays/locale/en_SC/LC_MESSAGES/SC.mo +0 -0
- holidays/locale/en_SC/LC_MESSAGES/SC.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/AE.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AE.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/AL.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AL.po +106 -0
- holidays/locale/en_US/LC_MESSAGES/AM.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AM.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/AO.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AO.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/AR.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AR.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/AT.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AT.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/AW.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AW.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/AZ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AZ.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/BA.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BA.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/BE.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BE.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/BG.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BG.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/BH.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BH.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/BN.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BN.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/BO.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BO.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/BY.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BY.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/CA.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CA.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/CH.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CH.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/CL.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CL.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/CN.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CN.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/CO.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CO.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/CR.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CR.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/CU.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CU.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/CW.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CW.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/CY.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CY.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/CZ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CZ.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/DE.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/DE.po +17 -4
- holidays/locale/en_US/LC_MESSAGES/DJ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/DJ.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/DK.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/DK.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/DO.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/DO.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/DZ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/DZ.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/EC.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/EC.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/EE.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/EE.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/EG.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/EG.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/ES.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/ES.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/ET.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/ET.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/FI.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/FI.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/FR.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/FR.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/GE.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/GE.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/GL.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/GL.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/GR.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/GR.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/GT.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/GT.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/HN.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/HN.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/HR.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/HR.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/HU.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/HU.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/ID.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/ID.po +68 -14
- holidays/locale/en_US/LC_MESSAGES/IL.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/IL.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/IR.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/IR.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/IS.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/IS.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/JP.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/JP.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/KH.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/KH.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/KR.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/KR.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/LA.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/LA.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/LI.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/LI.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/LT.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/LT.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/LU.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/LU.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/LV.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/LV.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/MA.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MA.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/MC.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MC.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/MD.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MD.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/MG.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MG.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/MT.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MT.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/MX.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MX.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/MZ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MZ.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/NI.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/NI.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/NL.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/NL.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/NO.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/NO.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/PE.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/PE.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/PH.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/PH.po +128 -0
- holidays/locale/en_US/LC_MESSAGES/PL.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/PL.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/PT.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/PT.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/PY.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/PY.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/RO.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/RO.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/RS.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/RS.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/RU.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/RU.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/SA.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/SA.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/SC.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/SC.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/SE.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/SE.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/SI.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/SI.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/SK.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/SK.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/TH.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TH.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/TL.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TL.po +16 -4
- holidays/locale/en_US/LC_MESSAGES/TN.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TN.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/TO.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TO.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/TR.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TR.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/TW.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TW.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/TZ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TZ.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/UA.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/UA.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/UY.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/UY.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/VE.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/VE.po +1 -1
- holidays/locale/en_US/LC_MESSAGES/VN.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/VN.po +37 -19
- holidays/locale/es/LC_MESSAGES/AR.mo +0 -0
- holidays/locale/es/LC_MESSAGES/AR.po +1 -1
- holidays/locale/es/LC_MESSAGES/BO.mo +0 -0
- holidays/locale/es/LC_MESSAGES/BO.po +1 -1
- holidays/locale/es/LC_MESSAGES/CL.mo +0 -0
- holidays/locale/es/LC_MESSAGES/CL.po +1 -1
- holidays/locale/es/LC_MESSAGES/CO.mo +0 -0
- holidays/locale/es/LC_MESSAGES/CO.po +1 -1
- holidays/locale/es/LC_MESSAGES/CR.mo +0 -0
- holidays/locale/es/LC_MESSAGES/CR.po +1 -1
- holidays/locale/es/LC_MESSAGES/CU.mo +0 -0
- holidays/locale/es/LC_MESSAGES/CU.po +1 -1
- holidays/locale/es/LC_MESSAGES/DO.mo +0 -0
- holidays/locale/es/LC_MESSAGES/DO.po +1 -1
- holidays/locale/es/LC_MESSAGES/EC.mo +0 -0
- holidays/locale/es/LC_MESSAGES/EC.po +1 -1
- holidays/locale/es/LC_MESSAGES/ES.mo +0 -0
- holidays/locale/es/LC_MESSAGES/ES.po +1 -1
- holidays/locale/es/LC_MESSAGES/GT.mo +0 -0
- holidays/locale/es/LC_MESSAGES/GT.po +1 -1
- holidays/locale/es/LC_MESSAGES/HN.mo +0 -0
- holidays/locale/es/LC_MESSAGES/HN.po +1 -1
- holidays/locale/es/LC_MESSAGES/MX.mo +0 -0
- holidays/locale/es/LC_MESSAGES/MX.po +1 -1
- holidays/locale/es/LC_MESSAGES/NI.mo +0 -0
- holidays/locale/es/LC_MESSAGES/NI.po +1 -1
- holidays/locale/es/LC_MESSAGES/PE.mo +0 -0
- holidays/locale/es/LC_MESSAGES/PE.po +1 -1
- holidays/locale/es/LC_MESSAGES/PY.mo +0 -0
- holidays/locale/es/LC_MESSAGES/PY.po +1 -1
- holidays/locale/es/LC_MESSAGES/UY.mo +0 -0
- holidays/locale/es/LC_MESSAGES/UY.po +1 -1
- holidays/locale/es/LC_MESSAGES/VE.mo +0 -0
- holidays/locale/es/LC_MESSAGES/VE.po +1 -1
- holidays/locale/et/LC_MESSAGES/EE.mo +0 -0
- holidays/locale/et/LC_MESSAGES/EE.po +1 -1
- holidays/locale/fa/LC_MESSAGES/IR.mo +0 -0
- holidays/locale/fa/LC_MESSAGES/IR.po +1 -1
- holidays/locale/fi/LC_MESSAGES/FI.mo +0 -0
- holidays/locale/fi/LC_MESSAGES/FI.po +1 -1
- holidays/locale/fil/LC_MESSAGES/PH.mo +0 -0
- holidays/locale/fil/LC_MESSAGES/PH.po +129 -0
- holidays/locale/fr/LC_MESSAGES/BE.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/BE.po +1 -1
- holidays/locale/fr/LC_MESSAGES/CA.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/CA.po +1 -1
- holidays/locale/fr/LC_MESSAGES/CH.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/CH.po +1 -1
- holidays/locale/fr/LC_MESSAGES/DJ.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/DJ.po +1 -1
- holidays/locale/fr/LC_MESSAGES/DZ.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/DZ.po +1 -1
- holidays/locale/fr/LC_MESSAGES/FR.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/FR.po +1 -1
- holidays/locale/fr/LC_MESSAGES/LU.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/LU.po +1 -1
- holidays/locale/fr/LC_MESSAGES/MA.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/MA.po +1 -1
- holidays/locale/fr/LC_MESSAGES/MC.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/MC.po +1 -1
- holidays/locale/he/LC_MESSAGES/IL.mo +0 -0
- holidays/locale/he/LC_MESSAGES/IL.po +1 -1
- holidays/locale/hr/LC_MESSAGES/HR.mo +0 -0
- holidays/locale/hr/LC_MESSAGES/HR.po +1 -1
- holidays/locale/hu/LC_MESSAGES/HU.mo +0 -0
- holidays/locale/hu/LC_MESSAGES/HU.po +1 -1
- holidays/locale/hy/LC_MESSAGES/AM.mo +0 -0
- holidays/locale/hy/LC_MESSAGES/AM.po +1 -1
- holidays/locale/id/LC_MESSAGES/ID.mo +0 -0
- holidays/locale/id/LC_MESSAGES/ID.po +66 -12
- holidays/locale/is/LC_MESSAGES/IS.mo +0 -0
- holidays/locale/is/LC_MESSAGES/IS.po +1 -1
- holidays/locale/it/LC_MESSAGES/CH.mo +0 -0
- holidays/locale/it/LC_MESSAGES/CH.po +1 -1
- holidays/locale/ja/LC_MESSAGES/JP.mo +0 -0
- holidays/locale/ja/LC_MESSAGES/JP.po +1 -1
- holidays/locale/ka/LC_MESSAGES/GE.mo +0 -0
- holidays/locale/ka/LC_MESSAGES/GE.po +1 -1
- holidays/locale/kl/LC_MESSAGES/GL.mo +0 -0
- holidays/locale/kl/LC_MESSAGES/GL.po +1 -1
- holidays/locale/km/LC_MESSAGES/KH.mo +0 -0
- holidays/locale/km/LC_MESSAGES/KH.po +1 -1
- holidays/locale/ko/LC_MESSAGES/KR.mo +0 -0
- holidays/locale/ko/LC_MESSAGES/KR.po +1 -1
- holidays/locale/lb/LC_MESSAGES/LU.mo +0 -0
- holidays/locale/lb/LC_MESSAGES/LU.po +1 -1
- holidays/locale/lo/LC_MESSAGES/LA.mo +0 -0
- holidays/locale/lo/LC_MESSAGES/LA.po +1 -1
- holidays/locale/lt/LC_MESSAGES/LT.mo +0 -0
- holidays/locale/lt/LC_MESSAGES/LT.po +1 -1
- holidays/locale/lv/LC_MESSAGES/LV.mo +0 -0
- holidays/locale/lv/LC_MESSAGES/LV.po +1 -1
- holidays/locale/mg/LC_MESSAGES/MG.mo +0 -0
- holidays/locale/mg/LC_MESSAGES/MG.po +1 -1
- holidays/locale/ms/LC_MESSAGES/BN.mo +0 -0
- holidays/locale/ms/LC_MESSAGES/BN.po +1 -1
- holidays/locale/mt/LC_MESSAGES/MT.mo +0 -0
- holidays/locale/mt/LC_MESSAGES/MT.po +1 -1
- holidays/locale/nl/LC_MESSAGES/AW.mo +0 -0
- holidays/locale/nl/LC_MESSAGES/AW.po +1 -1
- holidays/locale/nl/LC_MESSAGES/BE.mo +0 -0
- holidays/locale/nl/LC_MESSAGES/BE.po +1 -1
- holidays/locale/nl/LC_MESSAGES/CW.mo +0 -0
- holidays/locale/nl/LC_MESSAGES/CW.po +1 -1
- holidays/locale/nl/LC_MESSAGES/NL.mo +0 -0
- holidays/locale/nl/LC_MESSAGES/NL.po +1 -1
- holidays/locale/no/LC_MESSAGES/NO.mo +0 -0
- holidays/locale/no/LC_MESSAGES/NO.po +1 -1
- holidays/locale/pap_AW/LC_MESSAGES/AW.mo +0 -0
- holidays/locale/pap_AW/LC_MESSAGES/AW.po +1 -1
- holidays/locale/pap_CW/LC_MESSAGES/CW.mo +0 -0
- holidays/locale/pap_CW/LC_MESSAGES/CW.po +1 -1
- holidays/locale/pl/LC_MESSAGES/PL.mo +0 -0
- holidays/locale/pl/LC_MESSAGES/PL.po +1 -1
- holidays/locale/pt_AO/LC_MESSAGES/AO.mo +0 -0
- holidays/locale/pt_AO/LC_MESSAGES/AO.po +1 -1
- holidays/locale/pt_MZ/LC_MESSAGES/MZ.mo +0 -0
- holidays/locale/pt_MZ/LC_MESSAGES/MZ.po +1 -1
- holidays/locale/pt_PT/LC_MESSAGES/PT.mo +0 -0
- holidays/locale/pt_PT/LC_MESSAGES/PT.po +1 -1
- holidays/locale/pt_TL/LC_MESSAGES/TL.mo +0 -0
- holidays/locale/pt_TL/LC_MESSAGES/TL.po +17 -5
- holidays/locale/ro/LC_MESSAGES/MD.mo +0 -0
- holidays/locale/ro/LC_MESSAGES/MD.po +1 -1
- holidays/locale/ro/LC_MESSAGES/RO.mo +0 -0
- holidays/locale/ro/LC_MESSAGES/RO.po +1 -1
- holidays/locale/ru/LC_MESSAGES/RU.mo +0 -0
- holidays/locale/ru/LC_MESSAGES/RU.po +1 -1
- holidays/locale/sk/LC_MESSAGES/SK.mo +0 -0
- holidays/locale/sk/LC_MESSAGES/SK.po +1 -1
- holidays/locale/sl/LC_MESSAGES/SI.mo +0 -0
- holidays/locale/sl/LC_MESSAGES/SI.po +1 -1
- holidays/locale/sq/LC_MESSAGES/AL.mo +0 -0
- holidays/locale/sq/LC_MESSAGES/AL.po +106 -0
- holidays/locale/sr/LC_MESSAGES/BA.mo +0 -0
- holidays/locale/sr/LC_MESSAGES/BA.po +1 -1
- holidays/locale/sr/LC_MESSAGES/RS.mo +0 -0
- holidays/locale/sr/LC_MESSAGES/RS.po +1 -1
- holidays/locale/sv/LC_MESSAGES/SE.mo +0 -0
- holidays/locale/sv/LC_MESSAGES/SE.po +1 -1
- holidays/locale/sv_FI/LC_MESSAGES/FI.mo +0 -0
- holidays/locale/sv_FI/LC_MESSAGES/FI.po +1 -1
- holidays/locale/sw/LC_MESSAGES/TZ.mo +0 -0
- holidays/locale/sw/LC_MESSAGES/TZ.po +1 -1
- holidays/locale/tet/LC_MESSAGES/TL.mo +0 -0
- holidays/locale/tet/LC_MESSAGES/TL.po +19 -7
- holidays/locale/th/LC_MESSAGES/BN.mo +0 -0
- holidays/locale/th/LC_MESSAGES/BN.po +1 -1
- holidays/locale/th/LC_MESSAGES/CA.mo +0 -0
- holidays/locale/th/LC_MESSAGES/CA.po +1 -1
- holidays/locale/th/LC_MESSAGES/CN.mo +0 -0
- holidays/locale/th/LC_MESSAGES/CN.po +1 -1
- holidays/locale/th/LC_MESSAGES/DE.mo +0 -0
- holidays/locale/th/LC_MESSAGES/DE.po +15 -2
- holidays/locale/th/LC_MESSAGES/ID.mo +0 -0
- holidays/locale/th/LC_MESSAGES/ID.po +195 -0
- holidays/locale/th/LC_MESSAGES/JP.mo +0 -0
- holidays/locale/th/LC_MESSAGES/JP.po +1 -1
- holidays/locale/th/LC_MESSAGES/KH.mo +0 -0
- holidays/locale/th/LC_MESSAGES/KH.po +1 -1
- holidays/locale/th/LC_MESSAGES/KR.mo +0 -0
- holidays/locale/th/LC_MESSAGES/KR.po +1 -1
- holidays/locale/th/LC_MESSAGES/LA.mo +0 -0
- holidays/locale/th/LC_MESSAGES/LA.po +1 -1
- holidays/locale/th/LC_MESSAGES/PH.mo +0 -0
- holidays/locale/th/LC_MESSAGES/PH.po +128 -0
- holidays/locale/th/LC_MESSAGES/TH.mo +0 -0
- holidays/locale/th/LC_MESSAGES/TH.po +1 -1
- holidays/locale/th/LC_MESSAGES/TW.mo +0 -0
- holidays/locale/th/LC_MESSAGES/TW.po +1 -1
- holidays/locale/th/LC_MESSAGES/VN.mo +0 -0
- holidays/locale/th/LC_MESSAGES/VN.po +93 -0
- holidays/locale/to/LC_MESSAGES/TO.mo +0 -0
- holidays/locale/to/LC_MESSAGES/TO.po +1 -1
- holidays/locale/tr/LC_MESSAGES/TR.mo +0 -0
- holidays/locale/tr/LC_MESSAGES/TR.po +1 -1
- holidays/locale/uk/LC_MESSAGES/AL.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/AL.po +106 -0
- holidays/locale/uk/LC_MESSAGES/AO.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/AO.po +1 -1
- holidays/locale/uk/LC_MESSAGES/AR.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/AR.po +1 -1
- holidays/locale/uk/LC_MESSAGES/AT.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/AT.po +1 -1
- holidays/locale/uk/LC_MESSAGES/AW.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/AW.po +1 -1
- holidays/locale/uk/LC_MESSAGES/AZ.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/AZ.po +1 -1
- holidays/locale/uk/LC_MESSAGES/BA.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/BA.po +1 -1
- holidays/locale/uk/LC_MESSAGES/BE.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/BE.po +1 -1
- holidays/locale/uk/LC_MESSAGES/BG.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/BG.po +1 -1
- holidays/locale/uk/LC_MESSAGES/BO.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/BO.po +1 -1
- holidays/locale/uk/LC_MESSAGES/CH.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/CH.po +1 -1
- holidays/locale/uk/LC_MESSAGES/CL.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/CL.po +1 -1
- holidays/locale/uk/LC_MESSAGES/CO.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/CO.po +1 -1
- holidays/locale/uk/LC_MESSAGES/CR.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/CR.po +1 -1
- holidays/locale/uk/LC_MESSAGES/CU.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/CU.po +1 -1
- holidays/locale/uk/LC_MESSAGES/CW.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/CW.po +1 -1
- holidays/locale/uk/LC_MESSAGES/CY.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/CY.po +1 -1
- holidays/locale/uk/LC_MESSAGES/CZ.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/CZ.po +1 -1
- holidays/locale/uk/LC_MESSAGES/DE.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/DE.po +17 -4
- holidays/locale/uk/LC_MESSAGES/DK.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/DK.po +1 -1
- holidays/locale/uk/LC_MESSAGES/DO.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/DO.po +1 -1
- holidays/locale/uk/LC_MESSAGES/EC.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/EC.po +1 -1
- holidays/locale/uk/LC_MESSAGES/EE.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/EE.po +1 -1
- holidays/locale/uk/LC_MESSAGES/ES.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/ES.po +1 -1
- holidays/locale/uk/LC_MESSAGES/FI.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/FI.po +1 -1
- holidays/locale/uk/LC_MESSAGES/FR.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/FR.po +1 -1
- holidays/locale/uk/LC_MESSAGES/GE.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/GE.po +1 -1
- holidays/locale/uk/LC_MESSAGES/GR.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/GR.po +1 -1
- holidays/locale/uk/LC_MESSAGES/HN.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/HN.po +1 -1
- holidays/locale/uk/LC_MESSAGES/HR.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/HR.po +1 -1
- holidays/locale/uk/LC_MESSAGES/HU.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/HU.po +1 -1
- holidays/locale/uk/LC_MESSAGES/ID.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/ID.po +67 -13
- holidays/locale/uk/LC_MESSAGES/IL.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/IL.po +1 -1
- holidays/locale/uk/LC_MESSAGES/IS.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/IS.po +1 -1
- holidays/locale/uk/LC_MESSAGES/LI.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/LI.po +1 -1
- holidays/locale/uk/LC_MESSAGES/LT.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/LT.po +1 -1
- holidays/locale/uk/LC_MESSAGES/LU.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/LU.po +1 -1
- holidays/locale/uk/LC_MESSAGES/LV.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/LV.po +1 -1
- holidays/locale/uk/LC_MESSAGES/MC.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/MC.po +1 -1
- holidays/locale/uk/LC_MESSAGES/MD.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/MD.po +1 -1
- holidays/locale/uk/LC_MESSAGES/MG.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/MG.po +1 -1
- holidays/locale/uk/LC_MESSAGES/MX.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/MX.po +1 -1
- holidays/locale/uk/LC_MESSAGES/MZ.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/MZ.po +1 -1
- holidays/locale/uk/LC_MESSAGES/NI.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/NI.po +1 -1
- holidays/locale/uk/LC_MESSAGES/NL.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/NL.po +1 -1
- holidays/locale/uk/LC_MESSAGES/NO.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/NO.po +1 -1
- holidays/locale/uk/LC_MESSAGES/PE.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/PE.po +1 -1
- holidays/locale/uk/LC_MESSAGES/PL.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/PL.po +1 -1
- holidays/locale/uk/LC_MESSAGES/PT.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/PT.po +1 -1
- holidays/locale/uk/LC_MESSAGES/PY.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/PY.po +1 -1
- holidays/locale/uk/LC_MESSAGES/RO.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/RO.po +1 -1
- holidays/locale/uk/LC_MESSAGES/SE.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/SE.po +1 -1
- holidays/locale/uk/LC_MESSAGES/SI.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/SI.po +1 -1
- holidays/locale/uk/LC_MESSAGES/SK.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/SK.po +1 -1
- holidays/locale/uk/LC_MESSAGES/TR.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/TR.po +1 -1
- holidays/locale/uk/LC_MESSAGES/UA.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/UA.po +1 -1
- holidays/locale/uk/LC_MESSAGES/UY.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/UY.po +1 -1
- holidays/locale/uk/LC_MESSAGES/VE.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/VE.po +1 -1
- holidays/locale/vi/LC_MESSAGES/VN.mo +0 -0
- holidays/locale/vi/LC_MESSAGES/VN.po +32 -14
- holidays/locale/zh_CN/LC_MESSAGES/CN.mo +0 -0
- holidays/locale/zh_CN/LC_MESSAGES/CN.po +1 -1
- holidays/locale/zh_CN/LC_MESSAGES/TW.mo +0 -0
- holidays/locale/zh_CN/LC_MESSAGES/TW.po +1 -1
- holidays/locale/zh_TW/LC_MESSAGES/CN.mo +0 -0
- holidays/locale/zh_TW/LC_MESSAGES/CN.po +1 -1
- holidays/locale/zh_TW/LC_MESSAGES/TW.mo +0 -0
- holidays/locale/zh_TW/LC_MESSAGES/TW.po +1 -1
- holidays/mixins.py +1 -4
- holidays/observed_holiday_base.py +5 -5
- holidays/registry.py +4 -3
- holidays/utils.py +8 -7
- holidays/version.py +13 -0
- {holidays-0.58.dist-info → holidays-0.60.dist-info}/METADATA +26 -42
- holidays-0.60.dist-info/RECORD +797 -0
- {holidays-0.58.dist-info → holidays-0.60.dist-info}/WHEEL +1 -1
- holidays-0.58.dist-info/RECORD +0 -777
- {holidays-0.58.dist-info → holidays-0.60.dist-info}/AUTHORS +0 -0
- {holidays-0.58.dist-info → holidays-0.60.dist-info}/LICENSE +0 -0
- {holidays-0.58.dist-info → holidays-0.60.dist-info}/top_level.txt +0 -0
holidays/__init__.py
CHANGED
|
@@ -10,26 +10,14 @@
|
|
|
10
10
|
# Website: https://github.com/vacanza/holidays
|
|
11
11
|
# License: MIT (see LICENSE file)
|
|
12
12
|
|
|
13
|
-
#
|
|
14
|
-
|
|
15
|
-
import warnings
|
|
13
|
+
# ruff: noqa: F403
|
|
16
14
|
|
|
17
15
|
from holidays.constants import *
|
|
18
|
-
from holidays.
|
|
19
|
-
FUTURE_INCOMPATIBILITY_WARNING_TEMPLATE,
|
|
20
|
-
FutureIncompatibilityWarning,
|
|
21
|
-
)
|
|
16
|
+
from holidays.deprecations.v1_incompatibility import *
|
|
22
17
|
from holidays.holiday_base import *
|
|
23
18
|
from holidays.registry import EntityLoader
|
|
24
19
|
from holidays.utils import *
|
|
25
|
-
|
|
26
|
-
__version__ = "0.58"
|
|
27
|
-
|
|
20
|
+
from holidays.version import __version__ # noqa: F401
|
|
28
21
|
|
|
29
22
|
EntityLoader.load("countries", globals())
|
|
30
23
|
EntityLoader.load("financial", globals())
|
|
31
|
-
|
|
32
|
-
warnings.warn(
|
|
33
|
-
FUTURE_INCOMPATIBILITY_WARNING_TEMPLATE.format(version=__version__),
|
|
34
|
-
FutureIncompatibilityWarning,
|
|
35
|
-
)
|
holidays/calendars/buddhist.py
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
# License: MIT (see LICENSE file)
|
|
12
12
|
|
|
13
13
|
from datetime import date
|
|
14
|
-
from typing import Optional
|
|
14
|
+
from typing import Optional
|
|
15
15
|
|
|
16
16
|
from holidays.calendars.custom import _CustomCalendar
|
|
17
17
|
from holidays.calendars.gregorian import MAY, JUN
|
|
@@ -425,16 +425,16 @@ class _BuddhistLunisolar:
|
|
|
425
425
|
2099: (MAY, 4),
|
|
426
426
|
}
|
|
427
427
|
|
|
428
|
-
def _get_holiday(self, holiday: str, year: int) ->
|
|
428
|
+
def _get_holiday(self, holiday: str, year: int) -> tuple[Optional[date], bool]:
|
|
429
429
|
estimated_dates = getattr(self, f"{holiday}_DATES", {})
|
|
430
430
|
exact_dates = getattr(self, f"{holiday}_DATES_{_CustomCalendar.CUSTOM_ATTR_POSTFIX}", {})
|
|
431
431
|
dt = exact_dates.get(year, estimated_dates.get(year, ()))
|
|
432
432
|
return date(year, *dt) if dt else None, year not in exact_dates
|
|
433
433
|
|
|
434
|
-
def vesak_date(self, year: int) ->
|
|
434
|
+
def vesak_date(self, year: int) -> tuple[Optional[date], bool]:
|
|
435
435
|
return self._get_holiday(VESAK, year)
|
|
436
436
|
|
|
437
|
-
def vesak_may_date(self, year: int) ->
|
|
437
|
+
def vesak_may_date(self, year: int) -> tuple[Optional[date], bool]:
|
|
438
438
|
return self._get_holiday(VESAK_MAY, year)
|
|
439
439
|
|
|
440
440
|
|
holidays/calendars/chinese.py
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
# License: MIT (see LICENSE file)
|
|
12
12
|
|
|
13
13
|
from datetime import date
|
|
14
|
-
from typing import Optional
|
|
14
|
+
from typing import Optional
|
|
15
15
|
|
|
16
16
|
from holidays.calendars.custom import _CustomCalendar
|
|
17
17
|
from holidays.calendars.gregorian import JAN, FEB, MAR, APR, MAY, JUN, SEP, OCT, NOV
|
|
@@ -1237,28 +1237,28 @@ class _ChineseLunisolar:
|
|
|
1237
1237
|
2099: (SEP, 29),
|
|
1238
1238
|
}
|
|
1239
1239
|
|
|
1240
|
-
def _get_holiday(self, holiday: str, year: int) ->
|
|
1240
|
+
def _get_holiday(self, holiday: str, year: int) -> tuple[Optional[date], bool]:
|
|
1241
1241
|
estimated_dates = getattr(self, f"{holiday}_DATES", {})
|
|
1242
1242
|
exact_dates = getattr(self, f"{holiday}_DATES_{_CustomCalendar.CUSTOM_ATTR_POSTFIX}", {})
|
|
1243
1243
|
dt = exact_dates.get(year, estimated_dates.get(year, ()))
|
|
1244
1244
|
return date(year, *dt) if dt else None, year not in exact_dates
|
|
1245
1245
|
|
|
1246
|
-
def buddha_birthday_date(self, year: int) ->
|
|
1246
|
+
def buddha_birthday_date(self, year: int) -> tuple[Optional[date], bool]:
|
|
1247
1247
|
return self._get_holiday(BUDDHA_BIRTHDAY, year)
|
|
1248
1248
|
|
|
1249
|
-
def double_ninth_date(self, year: int) ->
|
|
1249
|
+
def double_ninth_date(self, year: int) -> tuple[Optional[date], bool]:
|
|
1250
1250
|
return self._get_holiday(DOUBLE_NINTH, year)
|
|
1251
1251
|
|
|
1252
|
-
def dragon_boat_date(self, year: int) ->
|
|
1252
|
+
def dragon_boat_date(self, year: int) -> tuple[Optional[date], bool]:
|
|
1253
1253
|
return self._get_holiday(DRAGON_BOAT, year)
|
|
1254
1254
|
|
|
1255
|
-
def hung_kings_date(self, year: int) ->
|
|
1255
|
+
def hung_kings_date(self, year: int) -> tuple[Optional[date], bool]:
|
|
1256
1256
|
return self._get_holiday(HUNG_KINGS, year)
|
|
1257
1257
|
|
|
1258
|
-
def lunar_new_year_date(self, year: int) ->
|
|
1258
|
+
def lunar_new_year_date(self, year: int) -> tuple[Optional[date], bool]:
|
|
1259
1259
|
return self._get_holiday(LUNAR_NEW_YEAR, year)
|
|
1260
1260
|
|
|
1261
|
-
def mid_autumn_date(self, year: int) ->
|
|
1261
|
+
def mid_autumn_date(self, year: int) -> tuple[Optional[date], bool]:
|
|
1262
1262
|
return self._get_holiday(MID_AUTUMN, year)
|
|
1263
1263
|
|
|
1264
1264
|
|
holidays/calendars/hindu.py
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
# License: MIT (see LICENSE file)
|
|
12
12
|
|
|
13
13
|
from datetime import date
|
|
14
|
-
from typing import Optional
|
|
14
|
+
from typing import Optional
|
|
15
15
|
|
|
16
16
|
from holidays.calendars.custom import _CustomCalendar
|
|
17
17
|
from holidays.calendars.gregorian import JAN, FEB, MAR, OCT, NOV
|
|
@@ -425,16 +425,16 @@ class _HinduLunisolar:
|
|
|
425
425
|
2099: (JAN, 6),
|
|
426
426
|
}
|
|
427
427
|
|
|
428
|
-
def _get_holiday(self, holiday: str, year: int) ->
|
|
428
|
+
def _get_holiday(self, holiday: str, year: int) -> tuple[Optional[date], bool]:
|
|
429
429
|
estimated_dates = getattr(self, f"{holiday}_DATES", {})
|
|
430
430
|
exact_dates = getattr(self, f"{holiday}_DATES_{_CustomCalendar.CUSTOM_ATTR_POSTFIX}", {})
|
|
431
431
|
dt = exact_dates.get(year, estimated_dates.get(year, ()))
|
|
432
432
|
return date(year, *dt) if dt else None, year not in exact_dates
|
|
433
433
|
|
|
434
|
-
def diwali_date(self, year: int) ->
|
|
434
|
+
def diwali_date(self, year: int) -> tuple[Optional[date], bool]:
|
|
435
435
|
return self._get_holiday(DIWALI, year)
|
|
436
436
|
|
|
437
|
-
def thaipusam_date(self, year: int) ->
|
|
437
|
+
def thaipusam_date(self, year: int) -> tuple[Optional[date], bool]:
|
|
438
438
|
return self._get_holiday(THAIPUSAM, year)
|
|
439
439
|
|
|
440
440
|
|
holidays/calendars/islamic.py
CHANGED
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
# Website: https://github.com/vacanza/holidays
|
|
11
11
|
# License: MIT (see LICENSE file)
|
|
12
12
|
|
|
13
|
+
from collections.abc import Iterable
|
|
13
14
|
from datetime import date
|
|
14
|
-
from typing import Iterable, Tuple
|
|
15
15
|
|
|
16
16
|
from holidays.calendars.custom import _CustomCalendar
|
|
17
17
|
from holidays.calendars.gregorian import JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC
|
|
@@ -3641,80 +3641,80 @@ class _IslamicLunar:
|
|
|
3641
3641
|
2076: (DEC, 5),
|
|
3642
3642
|
}
|
|
3643
3643
|
|
|
3644
|
-
def _get_holiday(self, holiday: str, year: int) -> Iterable[
|
|
3644
|
+
def _get_holiday(self, holiday: str, year: int) -> Iterable[tuple[date, bool]]:
|
|
3645
3645
|
estimated_dates = getattr(self, f"{holiday}_DATES", {})
|
|
3646
3646
|
exact_dates = getattr(self, f"{holiday}_DATES_{_CustomCalendar.CUSTOM_ATTR_POSTFIX}", {})
|
|
3647
3647
|
for year in (year - 1, year):
|
|
3648
3648
|
for dt in _normalize_tuple(exact_dates.get(year, estimated_dates.get(year, ()))):
|
|
3649
3649
|
yield date(year, *dt), year not in exact_dates
|
|
3650
3650
|
|
|
3651
|
-
def ali_al_rida_death_dates(self, year: int) -> Iterable[
|
|
3651
|
+
def ali_al_rida_death_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3652
3652
|
return self._get_holiday(ALI_AL_RIDA_DEATH, year)
|
|
3653
3653
|
|
|
3654
|
-
def ali_birthday_dates(self, year: int) -> Iterable[
|
|
3654
|
+
def ali_birthday_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3655
3655
|
return self._get_holiday(ALI_BIRTHDAY, year)
|
|
3656
3656
|
|
|
3657
|
-
def ali_death_dates(self, year: int) -> Iterable[
|
|
3657
|
+
def ali_death_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3658
3658
|
return self._get_holiday(ALI_DEATH, year)
|
|
3659
3659
|
|
|
3660
|
-
def arbaeen_dates(self, year: int) -> Iterable[
|
|
3660
|
+
def arbaeen_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3661
3661
|
return self._get_holiday(ARBAEEN, year)
|
|
3662
3662
|
|
|
3663
|
-
def ashura_dates(self, year: int) -> Iterable[
|
|
3663
|
+
def ashura_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3664
3664
|
return self._get_holiday(ASHURA, year)
|
|
3665
3665
|
|
|
3666
|
-
def eid_al_adha_dates(self, year: int) -> Iterable[
|
|
3666
|
+
def eid_al_adha_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3667
3667
|
return self._get_holiday(EID_AL_ADHA, year)
|
|
3668
3668
|
|
|
3669
|
-
def eid_al_fitr_dates(self, year: int) -> Iterable[
|
|
3669
|
+
def eid_al_fitr_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3670
3670
|
return self._get_holiday(EID_AL_FITR, year)
|
|
3671
3671
|
|
|
3672
|
-
def eid_al_ghadir_dates(self, year: int) -> Iterable[
|
|
3672
|
+
def eid_al_ghadir_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3673
3673
|
return self._get_holiday(EID_AL_GHADIR, year)
|
|
3674
3674
|
|
|
3675
|
-
def fatima_death_dates(self, year: int) -> Iterable[
|
|
3675
|
+
def fatima_death_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3676
3676
|
return self._get_holiday(FATIMA_DEATH, year)
|
|
3677
3677
|
|
|
3678
|
-
def hari_hol_johor_dates(self, year: int) -> Iterable[
|
|
3678
|
+
def hari_hol_johor_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3679
3679
|
return self._get_holiday(HARI_HOL_JOHOR, year)
|
|
3680
3680
|
|
|
3681
|
-
def hasan_al_askari_death_dates(self, year: int) -> Iterable[
|
|
3681
|
+
def hasan_al_askari_death_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3682
3682
|
return self._get_holiday(HASAN_AL_ASKARI_DEATH, year)
|
|
3683
3683
|
|
|
3684
|
-
def hijri_new_year_dates(self, year: int) -> Iterable[
|
|
3684
|
+
def hijri_new_year_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3685
3685
|
return self._get_holiday(HIJRI_NEW_YEAR, year)
|
|
3686
3686
|
|
|
3687
|
-
def imam_mahdi_birthday_dates(self, year: int) -> Iterable[
|
|
3687
|
+
def imam_mahdi_birthday_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3688
3688
|
return self._get_holiday(IMAM_MAHDI_BIRTHDAY, year)
|
|
3689
3689
|
|
|
3690
|
-
def isra_and_miraj_dates(self, year: int) -> Iterable[
|
|
3690
|
+
def isra_and_miraj_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3691
3691
|
return self._get_holiday(ISRA_AND_MIRAJ, year)
|
|
3692
3692
|
|
|
3693
|
-
def maldives_embraced_islam_day_dates(self, year: int) -> Iterable[
|
|
3693
|
+
def maldives_embraced_islam_day_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3694
3694
|
return self._get_holiday(MALDIVES_EMBRACED_ISLAM_DAY, year)
|
|
3695
3695
|
|
|
3696
|
-
def mawlid_dates(self, year: int) -> Iterable[
|
|
3696
|
+
def mawlid_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3697
3697
|
return self._get_holiday(MAWLID, year)
|
|
3698
3698
|
|
|
3699
|
-
def nuzul_al_quran_dates(self, year: int) -> Iterable[
|
|
3699
|
+
def nuzul_al_quran_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3700
3700
|
return self._get_holiday(NUZUL_AL_QURAN, year)
|
|
3701
3701
|
|
|
3702
|
-
def prophet_death_dates(self, year: int) -> Iterable[
|
|
3702
|
+
def prophet_death_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3703
3703
|
return self._get_holiday(PROPHET_DEATH, year)
|
|
3704
3704
|
|
|
3705
|
-
def quamee_dhuvas_dates(self, year: int) -> Iterable[
|
|
3705
|
+
def quamee_dhuvas_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3706
3706
|
return self._get_holiday(QUAMEE_DHUVAS, year)
|
|
3707
3707
|
|
|
3708
|
-
def ramadan_beginning_dates(self, year: int) -> Iterable[
|
|
3708
|
+
def ramadan_beginning_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3709
3709
|
return self._get_holiday(RAMADAN_BEGINNING, year)
|
|
3710
3710
|
|
|
3711
|
-
def sadiq_birthday_dates(self, year: int) -> Iterable[
|
|
3711
|
+
def sadiq_birthday_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3712
3712
|
return self._get_holiday(SADIQ_BIRTHDAY, year)
|
|
3713
3713
|
|
|
3714
|
-
def sadiq_death_dates(self, year: int) -> Iterable[
|
|
3714
|
+
def sadiq_death_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3715
3715
|
return self._get_holiday(SADIQ_DEATH, year)
|
|
3716
3716
|
|
|
3717
|
-
def tasua_dates(self, year: int) -> Iterable[
|
|
3717
|
+
def tasua_dates(self, year: int) -> Iterable[tuple[date, bool]]:
|
|
3718
3718
|
return self._get_holiday(TASUA, year)
|
|
3719
3719
|
|
|
3720
3720
|
|
holidays/countries/albania.py
CHANGED
|
@@ -10,7 +10,10 @@
|
|
|
10
10
|
# Website: https://github.com/vacanza/holidays
|
|
11
11
|
# License: MIT (see LICENSE file)
|
|
12
12
|
|
|
13
|
-
from
|
|
13
|
+
from gettext import gettext as tr
|
|
14
|
+
|
|
15
|
+
from holidays.calendars import _CustomIslamicHolidays
|
|
16
|
+
from holidays.calendars.gregorian import JAN, MAR, APR, MAY, JUN, JUL, AUG
|
|
14
17
|
from holidays.calendars.julian import JULIAN_CALENDAR
|
|
15
18
|
from holidays.groups import (
|
|
16
19
|
ChristianHolidays,
|
|
@@ -26,67 +29,89 @@ class Albania(
|
|
|
26
29
|
):
|
|
27
30
|
"""
|
|
28
31
|
References:
|
|
29
|
-
|
|
32
|
+
- https://en.wikipedia.org/wiki/Public_holidays_in_Albania
|
|
33
|
+
- `Law No. 7651 <http://kqk.gov.al/sites/default/files/publikime/ligj_7651_-_per_festat_zyrtare_e_ditet_perkujtimore.pdf>`_
|
|
34
|
+
- `Holidays for 2018–2024 <https://www.bankofalbania.org/Shtypi/Kalendari_i_festave_zyrtare_2024/>`_
|
|
30
35
|
"""
|
|
31
36
|
|
|
32
37
|
country = "AL"
|
|
33
|
-
|
|
38
|
+
default_language = "sq"
|
|
39
|
+
# %s (estimated).
|
|
40
|
+
estimated_label = tr("%s (e vlerësuar)")
|
|
41
|
+
# %s (observed).
|
|
42
|
+
observed_label = tr("%s (ditë pushimi e shtyrë)")
|
|
43
|
+
# %s (observed, estimated).
|
|
44
|
+
observed_estimated_label = tr("%s (ditë pushimi e shtyrë, e vlerësuar)")
|
|
45
|
+
supported_languages = ("en_US", "sq", "uk")
|
|
34
46
|
|
|
35
47
|
def __init__(self, *args, **kwargs):
|
|
36
48
|
ChristianHolidays.__init__(self)
|
|
37
49
|
InternationalHolidays.__init__(self)
|
|
38
|
-
IslamicHolidays.__init__(self)
|
|
50
|
+
IslamicHolidays.__init__(self, AlbaniaIslamicHolidays)
|
|
39
51
|
StaticHolidays.__init__(self, AlbaniaStaticHolidays)
|
|
40
52
|
kwargs.setdefault("observed_rule", SAT_SUN_TO_NEXT_WORKDAY)
|
|
41
53
|
super().__init__(*args, **kwargs)
|
|
42
54
|
|
|
43
55
|
def _populate_public_holidays(self):
|
|
56
|
+
# Law No. 7651 from 21.12.1992.
|
|
57
|
+
if self._year <= 1992:
|
|
58
|
+
return None
|
|
59
|
+
|
|
44
60
|
dts_observed = set()
|
|
45
61
|
|
|
46
62
|
# New Year's Day.
|
|
47
|
-
name = "
|
|
63
|
+
name = tr("Festat e Vitit të Ri")
|
|
48
64
|
dts_observed.add(self._add_new_years_day(name))
|
|
49
65
|
dts_observed.add(self._add_new_years_day_two(name))
|
|
50
66
|
|
|
51
|
-
# Summer Day.
|
|
52
67
|
if self._year >= 2004:
|
|
53
|
-
|
|
68
|
+
# Summer Day.
|
|
69
|
+
dts_observed.add(self._add_holiday_mar_14(tr("Dita e Verës")))
|
|
54
70
|
|
|
55
|
-
# Nevruz.
|
|
56
71
|
if self._year >= 1996:
|
|
57
|
-
|
|
72
|
+
# Nowruz Day.
|
|
73
|
+
dts_observed.add(self._add_holiday_mar_22(tr("Dita e Nevruzit")))
|
|
74
|
+
|
|
75
|
+
# Catholic Easter Sunday.
|
|
76
|
+
dts_observed.add(self._add_easter_sunday(tr("E diela e Pashkëve Katolike")))
|
|
58
77
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
78
|
+
dts_observed.add(
|
|
79
|
+
# Orthodox Easter Sunday.
|
|
80
|
+
self._add_easter_sunday(tr("E diela e Pashkëve Ortodokse"), JULIAN_CALENDAR)
|
|
81
|
+
)
|
|
62
82
|
|
|
63
|
-
#
|
|
64
|
-
dts_observed.add(self._add_labor_day("
|
|
83
|
+
# International Workers' Day.
|
|
84
|
+
dts_observed.add(self._add_labor_day(tr("Dita Ndërkombëtare e Punëtorëve")))
|
|
65
85
|
|
|
66
|
-
# Mother Teresa Day.
|
|
67
86
|
if 2004 <= self._year <= 2017:
|
|
68
|
-
|
|
87
|
+
# Mother Teresa Beatification Day.
|
|
88
|
+
dts_observed.add(self._add_holiday_oct_19(tr("Dita e Lumturimit të Shenjt Terezës")))
|
|
69
89
|
elif self._year >= 2018:
|
|
70
|
-
|
|
90
|
+
# Mother Teresa Canonization Day.
|
|
91
|
+
dts_observed.add(self._add_holiday_sep_5(tr("Dita e Shenjtërimit të Shenjt Terezës")))
|
|
71
92
|
|
|
72
|
-
|
|
73
|
-
|
|
93
|
+
if self._year >= 2024:
|
|
94
|
+
# Alphabet Day.
|
|
95
|
+
dts_observed.add(self._add_holiday_nov_22(tr("Dita e Alfabetit")))
|
|
96
|
+
|
|
97
|
+
# Flag and Independence Day.
|
|
98
|
+
dts_observed.add(self._add_holiday_nov_28(tr("Dita Flamurit dhe e Pavarësisë")))
|
|
74
99
|
|
|
75
100
|
# Liberation Day.
|
|
76
|
-
dts_observed.add(self._add_holiday_nov_29("
|
|
101
|
+
dts_observed.add(self._add_holiday_nov_29(tr("Dita e Çlirimit")))
|
|
77
102
|
|
|
78
|
-
# National Youth Day.
|
|
79
103
|
if self._year >= 2009:
|
|
80
|
-
|
|
104
|
+
# National Youth Day.
|
|
105
|
+
dts_observed.add(self._add_holiday_dec_8(tr("Dita Kombëtare e Rinisë")))
|
|
81
106
|
|
|
82
107
|
# Christmas Day.
|
|
83
|
-
dts_observed.add(self._add_christmas_day("
|
|
108
|
+
dts_observed.add(self._add_christmas_day(tr("Krishtlindjet")))
|
|
84
109
|
|
|
85
110
|
# Eid al-Fitr.
|
|
86
|
-
dts_observed.update(self._add_eid_al_fitr_day("
|
|
111
|
+
dts_observed.update(self._add_eid_al_fitr_day(tr("Dita e Bajramit të Madh")))
|
|
87
112
|
|
|
88
113
|
# Eid al-Adha.
|
|
89
|
-
dts_observed.update(self._add_eid_al_adha_day("
|
|
114
|
+
dts_observed.update(self._add_eid_al_adha_day(tr("Dita e Kurban Bajramit")))
|
|
90
115
|
|
|
91
116
|
if self.observed:
|
|
92
117
|
self._populate_observed(dts_observed)
|
|
@@ -100,11 +125,40 @@ class ALB(Albania):
|
|
|
100
125
|
pass
|
|
101
126
|
|
|
102
127
|
|
|
128
|
+
class AlbaniaIslamicHolidays(_CustomIslamicHolidays):
|
|
129
|
+
EID_AL_ADHA_DATES = {
|
|
130
|
+
2018: (AUG, 21),
|
|
131
|
+
2019: (AUG, 11),
|
|
132
|
+
2020: (JUL, 31),
|
|
133
|
+
2021: (JUL, 20),
|
|
134
|
+
2022: (JUL, 9),
|
|
135
|
+
2023: (JUN, 28),
|
|
136
|
+
2024: (JUN, 16),
|
|
137
|
+
2025: (JUN, 6),
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
EID_AL_FITR_DATES = {
|
|
141
|
+
2018: (JUN, 15),
|
|
142
|
+
2019: (JUN, 4),
|
|
143
|
+
2020: (MAY, 24),
|
|
144
|
+
2021: (MAY, 13),
|
|
145
|
+
2022: (MAY, 2),
|
|
146
|
+
2023: (APR, 21),
|
|
147
|
+
2024: (APR, 10),
|
|
148
|
+
2025: (MAR, 30),
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
|
|
103
152
|
class AlbaniaStaticHolidays:
|
|
153
|
+
# Public Holiday.
|
|
154
|
+
public_holiday = tr("Ditë pushimi")
|
|
155
|
+
|
|
104
156
|
special_public_holidays = {
|
|
105
|
-
|
|
157
|
+
2020: (JAN, 3, public_holiday),
|
|
158
|
+
2022: (MAR, 21, public_holiday),
|
|
159
|
+
2024: (MAR, 15, public_holiday),
|
|
106
160
|
}
|
|
107
161
|
|
|
108
162
|
special_public_holidays_observed = {
|
|
109
|
-
2007: (JAN, 3, "
|
|
163
|
+
2007: (JAN, 3, tr("Dita e Kurban Bajramit")),
|
|
110
164
|
}
|
holidays/countries/angola.py
CHANGED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
|
|
13
13
|
from datetime import date
|
|
14
14
|
from gettext import gettext as tr
|
|
15
|
-
from typing import Optional
|
|
15
|
+
from typing import Optional
|
|
16
16
|
|
|
17
17
|
from holidays.calendars.gregorian import AUG, SEP
|
|
18
18
|
from holidays.groups import ChristianHolidays, InternationalHolidays, StaticHolidays
|
|
@@ -59,7 +59,7 @@ class Angola(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stat
|
|
|
59
59
|
# it rolls over to the following Monday.
|
|
60
60
|
return dt >= date(1996, SEP, 27)
|
|
61
61
|
|
|
62
|
-
def _add_observed(self, dt: date, **kwargs) ->
|
|
62
|
+
def _add_observed(self, dt: date, **kwargs) -> tuple[bool, Optional[date]]:
|
|
63
63
|
# As per Law # #11/18, from 2018/9/10, when public holiday falls on Tuesday or Thursday,
|
|
64
64
|
# the Monday or Friday is also a holiday.
|
|
65
65
|
kwargs.setdefault(
|
holidays/countries/armenia.py
CHANGED
|
@@ -82,8 +82,11 @@ class Armenia(HolidayBase, ChristianHolidays, InternationalHolidays):
|
|
|
82
82
|
)
|
|
83
83
|
|
|
84
84
|
if self._year >= 1995:
|
|
85
|
-
|
|
86
|
-
|
|
85
|
+
self._add_world_war_two_victory_day(
|
|
86
|
+
# Victory and Peace Day.
|
|
87
|
+
tr("Հաղթանակի և Խաղաղության տոն"),
|
|
88
|
+
is_western=False,
|
|
89
|
+
)
|
|
87
90
|
|
|
88
91
|
# Republic Day.
|
|
89
92
|
self._add_holiday_may_28(tr("Հանրապետության օր"))
|
holidays/countries/australia.py
CHANGED
|
@@ -601,6 +601,7 @@ class Australia(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, S
|
|
|
601
601
|
self._add_holiday_jan_26(name)
|
|
602
602
|
|
|
603
603
|
# Adelaide Cup Day.
|
|
604
|
+
# First observed as Public Holidays in 1973: https://racingsa.com.au/blog/2020/03/06/2380/a-little-adelaide-cup-history
|
|
604
605
|
# 2006-2023: changed each year by SA Government Proclamation from the 3rd Monday in May
|
|
605
606
|
# to the 2nd Monday in March.
|
|
606
607
|
# from 2024: changed to the 2nd Monday in March officially.
|
|
@@ -609,7 +610,7 @@ class Australia(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, S
|
|
|
609
610
|
name = tr("Adelaide Cup Day")
|
|
610
611
|
if self._year >= 2006:
|
|
611
612
|
self._add_holiday_2nd_mon_of_mar(name)
|
|
612
|
-
|
|
613
|
+
elif self._year >= 1973:
|
|
613
614
|
self._add_holiday_3rd_mon_of_may(name)
|
|
614
615
|
|
|
615
616
|
# Easter Saturday.
|
holidays/countries/azerbaijan.py
CHANGED
|
@@ -78,8 +78,13 @@ class Azerbaijan(ObservedHolidayBase, InternationalHolidays, IslamicHolidays, St
|
|
|
78
78
|
dts_observed.add(self._add_holiday_mar_23(name))
|
|
79
79
|
dts_observed.add(self._add_holiday_mar_24(name))
|
|
80
80
|
|
|
81
|
-
|
|
82
|
-
|
|
81
|
+
dts_observed.add(
|
|
82
|
+
self._add_world_war_two_victory_day(
|
|
83
|
+
# Victory over Fascism Day.
|
|
84
|
+
tr("Faşizm üzərində qələbə günü"),
|
|
85
|
+
is_western=False,
|
|
86
|
+
)
|
|
87
|
+
)
|
|
83
88
|
|
|
84
89
|
if self._year >= 1992:
|
|
85
90
|
dts_observed.add(
|
holidays/countries/belarus.py
CHANGED
|
@@ -64,7 +64,7 @@ class Belarus(HolidayBase, ChristianHolidays, InternationalHolidays, StaticHolid
|
|
|
64
64
|
self._add_labor_day(tr("Свята працы"))
|
|
65
65
|
|
|
66
66
|
# Victory Day.
|
|
67
|
-
self._add_world_war_two_victory_day(tr("Дзень Перамогі"))
|
|
67
|
+
self._add_world_war_two_victory_day(tr("Дзень Перамогі"), is_western=False)
|
|
68
68
|
|
|
69
69
|
# Independence Day.
|
|
70
70
|
self._add_holiday_jul_3(tr("Дзень Незалежнасці Рэспублікі Беларусь (Дзень Рэспублікі)"))
|
|
@@ -146,7 +146,7 @@ class BosniaAndHerzegovina(
|
|
|
146
146
|
self._add_labor_day_two(name)
|
|
147
147
|
|
|
148
148
|
# Victory Day.
|
|
149
|
-
self._add_world_war_two_victory_day(tr("Dan pobjede nad fašizmom"))
|
|
149
|
+
self._add_world_war_two_victory_day(tr("Dan pobjede nad fašizmom"), is_western=False)
|
|
150
150
|
|
|
151
151
|
# Statehood Day.
|
|
152
152
|
self._add_holiday_nov_25(tr("Dan državnosti"))
|
|
@@ -220,7 +220,7 @@ class BosniaAndHerzegovina(
|
|
|
220
220
|
self._add_labor_day_two(name)
|
|
221
221
|
|
|
222
222
|
# Victory Day.
|
|
223
|
-
self._add_world_war_two_victory_day(tr("Dan pobjede nad fašizmom"))
|
|
223
|
+
self._add_world_war_two_victory_day(tr("Dan pobjede nad fašizmom"), is_western=False)
|
|
224
224
|
|
|
225
225
|
self._add_holiday_nov_21(
|
|
226
226
|
# Dayton Agreement Day.
|
holidays/countries/bulgaria.py
CHANGED
|
@@ -12,7 +12,6 @@
|
|
|
12
12
|
|
|
13
13
|
from datetime import date
|
|
14
14
|
from gettext import gettext as tr
|
|
15
|
-
from typing import Set
|
|
16
15
|
|
|
17
16
|
from holidays.calendars.julian_revised import JULIAN_REVISED_CALENDAR
|
|
18
17
|
from holidays.constants import PUBLIC, SCHOOL
|
|
@@ -57,7 +56,7 @@ class Bulgaria(ObservedHolidayBase, ChristianHolidays, InternationalHolidays):
|
|
|
57
56
|
kwargs.setdefault("observed_since", 2017)
|
|
58
57
|
super().__init__(*args, **kwargs)
|
|
59
58
|
|
|
60
|
-
def _populate_observed(self, dts:
|
|
59
|
+
def _populate_observed(self, dts: set[date], excluded_names: set[str]) -> None:
|
|
61
60
|
for dt in sorted(dts):
|
|
62
61
|
if not self._is_observed(dt):
|
|
63
62
|
continue
|
holidays/countries/cambodia.py
CHANGED
|
@@ -264,10 +264,9 @@ class Cambodia(HolidayBase, InternationalHolidays, StaticHolidays, ThaiCalendarH
|
|
|
264
264
|
# Pchum Ben Day
|
|
265
265
|
pchum_ben = tr("ពិធីបុណ្យភ្ផុំបិណ្ឌ")
|
|
266
266
|
pchum_ben_date = self._add_pchum_ben(pchum_ben)
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
self._add_holiday(pchum_ben, _timedelta(pchum_ben_date, +1))
|
|
267
|
+
self._add_holiday(pchum_ben, _timedelta(pchum_ben_date, -1))
|
|
268
|
+
if self._year >= 2017:
|
|
269
|
+
self._add_holiday(pchum_ben, _timedelta(pchum_ben_date, +1))
|
|
271
270
|
|
|
272
271
|
# ព្រះរាជពិធីបុណ្យអុំទូក បណ្តែតប្រទីប និងសំពះព្រះខែអកអំបុក
|
|
273
272
|
# Status: In-Use.
|
|
@@ -276,9 +275,8 @@ class Cambodia(HolidayBase, InternationalHolidays, StaticHolidays, ThaiCalendarH
|
|
|
276
275
|
# Water Festival
|
|
277
276
|
bon_om_touk = tr("ព្រះរាជពិធីបុណ្យអុំទូក បណ្តែតប្រទីប និងសំពះព្រះខែអកអំបុក")
|
|
278
277
|
bon_om_touk_date = self._add_loy_krathong(bon_om_touk)
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
self._add_holiday(bon_om_touk, _timedelta(bon_om_touk_date, +1))
|
|
278
|
+
self._add_holiday(bon_om_touk, _timedelta(bon_om_touk_date, -1))
|
|
279
|
+
self._add_holiday(bon_om_touk, _timedelta(bon_om_touk_date, +1))
|
|
282
280
|
|
|
283
281
|
|
|
284
282
|
class KH(Cambodia):
|
holidays/countries/chile.py
CHANGED
|
@@ -11,7 +11,6 @@
|
|
|
11
11
|
# License: MIT (see LICENSE file)
|
|
12
12
|
|
|
13
13
|
from gettext import gettext as tr
|
|
14
|
-
from typing import Tuple
|
|
15
14
|
|
|
16
15
|
from holidays.calendars.gregorian import JUN, SEP, DEC
|
|
17
16
|
from holidays.constants import BANK, PUBLIC
|
|
@@ -226,7 +225,7 @@ class Chile(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stati
|
|
|
226
225
|
self._add_holiday_dec_31(name)
|
|
227
226
|
|
|
228
227
|
@property
|
|
229
|
-
def _summer_solstice_date(self) ->
|
|
228
|
+
def _summer_solstice_date(self) -> tuple[int, int]:
|
|
230
229
|
day = 20
|
|
231
230
|
if (self._year % 4 > 1 and self._year <= 2046) or (
|
|
232
231
|
self._year % 4 > 2 and self._year <= 2075
|
holidays/countries/czechia.py
CHANGED
|
@@ -52,10 +52,13 @@ class Czechia(HolidayBase, ChristianHolidays, InternationalHolidays):
|
|
|
52
52
|
|
|
53
53
|
if self._year >= 1992:
|
|
54
54
|
# Victory Day.
|
|
55
|
-
self.
|
|
55
|
+
self._add_world_war_two_victory_day(tr("Den vítězství"))
|
|
56
56
|
elif self._year >= 1947:
|
|
57
|
-
|
|
58
|
-
|
|
57
|
+
self._add_world_war_two_victory_day(
|
|
58
|
+
# Day of Victory over Fascism.
|
|
59
|
+
tr("Den vítězství nad hitlerovským fašismem"),
|
|
60
|
+
is_western=False,
|
|
61
|
+
)
|
|
59
62
|
|
|
60
63
|
if self._year >= 1951:
|
|
61
64
|
# Saints Cyril and Methodius Day.
|
holidays/countries/egypt.py
CHANGED
|
@@ -39,7 +39,6 @@ class Egypt(HolidayBase, ChristianHolidays, IslamicHolidays, InternationalHolida
|
|
|
39
39
|
ChristianHolidays.__init__(self, JULIAN_CALENDAR)
|
|
40
40
|
InternationalHolidays.__init__(self)
|
|
41
41
|
IslamicHolidays.__init__(self)
|
|
42
|
-
|
|
43
42
|
super().__init__(*args, **kwargs)
|
|
44
43
|
|
|
45
44
|
def _populate_public_holidays(self):
|
holidays/countries/france.py
CHANGED
|
@@ -85,7 +85,7 @@ class France(HolidayBase, ChristianHolidays, InternationalHolidays):
|
|
|
85
85
|
|
|
86
86
|
if 1953 <= self._year <= 1959 or self._year >= 1982:
|
|
87
87
|
# Victory Day.
|
|
88
|
-
self.
|
|
88
|
+
self._add_world_war_two_victory_day(tr("Fête de la Victoire"))
|
|
89
89
|
|
|
90
90
|
if self._year >= 1880:
|
|
91
91
|
# National Day.
|
holidays/countries/georgia.py
CHANGED
|
@@ -76,7 +76,7 @@ class Georgia(HolidayBase, ChristianHolidays, InternationalHolidays):
|
|
|
76
76
|
self._add_holiday_apr_9(tr("ეროვნული ერთიანობის დღე"))
|
|
77
77
|
|
|
78
78
|
# Day of Victory over Fascism.
|
|
79
|
-
self._add_world_war_two_victory_day(tr("ფაშიზმზე გამარჯვების დღე"))
|
|
79
|
+
self._add_world_war_two_victory_day(tr("ფაშიზმზე გამარჯვების დღე"), is_western=False)
|
|
80
80
|
|
|
81
81
|
# Saint Andrew's Day.
|
|
82
82
|
self._add_holiday_may_12(tr("წმინდა ანდრია პირველწოდებულის დღე"))
|