Skip to content

Commit

Permalink
Update Indonesia holidays: add 2024 Local Election, exact historic da…
Browse files Browse the repository at this point in the history
…tes from 1963 onwards (#2102)
  • Loading branch information
PPsyrius authored Nov 4, 2024
1 parent 0363e20 commit bf30cb2
Show file tree
Hide file tree
Showing 3 changed files with 548 additions and 284 deletions.
266 changes: 250 additions & 16 deletions holidays/countries/indonesia.py
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ class Indonesia(
- https://en.wikipedia.org/wiki/Public_holidays_in_Indonesia
- https://id.wikipedia.org/wiki/Hari_libur_di_Indonesia
- https://www.liburnasional.com/sejarah/
- https://id.wikipedia.org/wiki/Indonesia_dalam_tahun_1963 (1963-2024)
- https://www.timeanddate.com/holidays/indonesia
- https://en.wikipedia.org/wiki/Nyepi
- https://bali.com/bali/travel-guide/culture/nyepi-balinese-new-year/
Expand Down Expand Up @@ -150,6 +151,32 @@ def _populate_public_holidays(self):
# Keputusan Presiden no 3 tahun 1983. (1983-01-19; Added Nationally)
if self._year >= 1983:
dates_obs = {
1983: (MAR, 15),
1984: (MAR, 4),
1985: (MAR, 22),
1986: (MAR, 12),
1987: (MAR, 31),
1988: (MAR, 19),
1989: (MAR, 9),
1990: (MAR, 27),
1991: (MAR, 17),
1992: (MAR, 5),
1993: (MAR, 24),
1994: (MAR, 12),
1995: (APR, 1),
1996: (MAR, 21),
1997: (APR, 9),
1998: (MAR, 29),
1999: (MAR, 18),
2000: (APR, 4),
2001: (MAR, 25),
2002: (APR, 13),
2003: (APR, 2),
2004: (MAR, 22),
2005: (MAR, 11),
2006: (MAR, 30),
2007: (MAR, 19),
2008: (MAR, 7),
2009: (MAR, 26),
2010: (MAR, 16),
2011: (MAR, 5),
Expand Down Expand Up @@ -214,6 +241,30 @@ class IDN(Indonesia):

class IndonesiaBuddhistHolidays(_CustomBuddhistHolidays):
VESAK_DATES = {
1983: (MAY, 27),
1984: (MAY, 14),
1985: (JUN, 3),
1986: (MAY, 24),
1987: (MAY, 13),
1988: (MAY, 31),
1989: (MAY, 21),
1990: (MAY, 10),
1991: (MAY, 28),
1992: (MAY, 16),
1993: (MAY, 6),
1994: (MAY, 25),
1995: (MAY, 15),
1996: (JUN, 2),
1997: (MAY, 22),
1998: (MAY, 11),
1999: (MAY, 30),
2000: (MAY, 18),
2001: (MAY, 7),
2002: (MAY, 26),
2003: (MAY, 16),
2004: (JUN, 3),
2005: (MAY, 24),
2006: (MAY, 13),
2007: (JUN, 1),
2008: (MAY, 20),
2009: (MAY, 9),
Expand Down Expand Up @@ -266,7 +317,45 @@ class IndonesiaChineseHolidays(_CustomChineseHolidays):

class IndonesiaIslamicHolidays(_CustomIslamicHolidays):
EID_AL_ADHA_DATES = {
2001: (MAR, 6),
1963: (MAY, 4),
1964: (APR, 23),
1965: (APR, 12),
1966: (APR, 2),
1967: (MAR, 22),
1968: (MAR, 9),
1969: (FEB, 27),
1970: (FEB, 17),
1971: (FEB, 6),
1972: (JAN, 27),
1973: (JAN, 15),
1974: ((JAN, 4), (DEC, 24)),
1975: (DEC, 13),
1976: (DEC, 2),
1977: (NOV, 21),
1978: (NOV, 11),
1979: (OCT, 31),
1980: (OCT, 19),
1981: (OCT, 8),
1982: (SEP, 28),
1983: (SEP, 17),
1984: (SEP, 6),
1985: (AUG, 26),
1986: (AUG, 16),
1987: (AUG, 5),
1988: (JUL, 24),
1989: (JUL, 13),
1990: (JUL, 3),
1991: (JUN, 23),
1992: (JUN, 11),
1993: (JUN, 1),
1994: (MAY, 21),
1995: (MAY, 10),
1996: (APR, 28),
1997: (APR, 18),
1998: (APR, 7),
1999: (MAR, 28),
2000: (MAR, 16),
2001: (MAR, 5),
2002: (FEB, 23),
2003: (FEB, 12),
2004: (FEB, 2),
Expand Down Expand Up @@ -294,6 +383,44 @@ class IndonesiaIslamicHolidays(_CustomIslamicHolidays):
}

EID_AL_FITR_DATES = {
1963: (FEB, 25),
1964: (FEB, 15),
1965: (FEB, 3),
1966: (JAN, 23),
1967: (JAN, 12),
1968: ((JAN, 2), (DEC, 21)),
1969: (DEC, 11),
1970: (NOV, 30),
1971: (NOV, 19),
1972: (NOV, 7),
1973: (OCT, 27),
1974: (OCT, 17),
1975: (OCT, 6),
1976: (SEP, 25),
1977: (SEP, 15),
1978: (SEP, 4),
1979: (AUG, 24),
1980: (AUG, 12),
1981: (AUG, 1),
1982: (JUL, 22),
1983: (JUL, 12),
1984: (JUN, 30),
1985: (JUN, 20),
1986: (JUN, 9),
1987: (MAY, 29),
1988: (MAY, 17),
1989: (MAY, 7),
1990: (APR, 26),
1991: (APR, 16),
1992: (APR, 5),
1993: (MAR, 25),
1994: (MAR, 14),
1995: (MAR, 3),
1996: (FEB, 20),
1997: (FEB, 9),
1998: (JAN, 30),
1999: (JAN, 19),
2000: ((JAN, 8), (DEC, 27)),
2001: (DEC, 16),
2002: (DEC, 6),
2003: (NOV, 25),
Expand Down Expand Up @@ -322,10 +449,43 @@ class IndonesiaIslamicHolidays(_CustomIslamicHolidays):
}

HIJRI_NEW_YEAR_DATES = {
1968: (MAR, 30),
1969: (MAR, 19),
1970: (MAR, 10),
1971: (FEB, 27),
1972: (FEB, 16),
1973: (FEB, 5),
1974: (JAN, 25),
1975: (JAN, 14),
1976: ((JAN, 3), (DEC, 22)),
1977: (DEC, 12),
1978: (DEC, 1),
1979: (NOV, 21),
1980: (NOV, 9),
1981: (OCT, 29),
1982: (OCT, 18),
1983: (OCT, 8),
1984: (SEP, 26),
1985: (SEP, 16),
1986: (SEP, 5),
1987: (AUG, 26),
1988: (AUG, 14),
1989: (AUG, 3),
1990: (JUL, 23),
1991: (JUL, 13),
1992: (JUL, 2),
1993: (JUN, 21),
1994: (JUN, 11),
1995: (MAY, 31),
1996: (MAY, 19),
1997: (MAY, 8),
1998: (APR, 28),
1999: (APR, 17),
2000: (APR, 6),
2001: (MAR, 26),
2002: (MAR, 15),
2003: (MAR, 5),
2004: (FEB, 22),
2003: (MAR, 3),
2004: (FEB, 23),
2005: (FEB, 10),
2006: (JAN, 31),
2007: (JAN, 20),
Expand All @@ -350,16 +510,49 @@ class IndonesiaIslamicHolidays(_CustomIslamicHolidays):
}

ISRA_AND_MIRAJ_DATES = {
1968: (OCT, 20),
1969: (OCT, 9),
1970: (SEP, 29),
1971: (SEP, 17),
1972: (SEP, 6),
1973: (AUG, 26),
1974: (AUG, 16),
1975: (AUG, 5),
1976: (JUL, 25),
1977: (JUL, 14),
1978: (JUL, 3),
1979: (JUN, 22),
1980: (JUN, 11),
1981: (MAY, 31),
1982: (MAY, 21),
1983: (MAY, 10),
1984: (APR, 29),
1985: (APR, 18),
1986: (APR, 7),
1987: (MAR, 27),
1988: (MAR, 16),
1989: (MAR, 5),
1990: (FEB, 23),
1991: (FEB, 12),
1992: (FEB, 1),
1993: (JAN, 20),
1994: ((JAN, 10), (DEC, 30)),
1995: (DEC, 20),
1996: (DEC, 8),
1997: (NOV, 28),
1998: (NOV, 17),
1999: (NOV, 6),
2000: (OCT, 25),
2001: (OCT, 15),
2002: (OCT, 4),
2003: (SEP, 24),
2004: (SEP, 12),
2005: (SEP, 1),
2006: (AUG, 22),
2003: (SEP, 22),
2004: (SEP, 13),
2005: (SEP, 2),
2006: (AUG, 21),
2007: (AUG, 11),
2008: (JUL, 31),
2008: (JUL, 30),
2009: (JUL, 20),
2010: (JUL, 9),
2010: (JUL, 10),
2011: (JUN, 29),
2012: (JUN, 17),
2013: (JUN, 6),
Expand All @@ -373,11 +566,49 @@ class IndonesiaIslamicHolidays(_CustomIslamicHolidays):
2021: (MAR, 11),
2022: (FEB, 28),
2023: (FEB, 18),
2024: (FEB, 6),
2024: (FEB, 8),
2025: (JAN, 27),
}

MAWLID_DATES = {
1968: (JUN, 8),
1969: (MAY, 28),
1970: (MAY, 18),
1971: (MAY, 7),
1972: (APR, 26),
1973: (APR, 14),
1974: (APR, 5),
1975: (MAR, 25),
1976: (MAR, 13),
1977: (MAR, 2),
1978: (FEB, 20),
1979: (FEB, 9),
1980: (JAN, 30),
1981: (JAN, 18),
1982: ((JAN, 8), (DEC, 28)),
1983: (DEC, 17),
1984: (DEC, 5),
1985: (NOV, 25),
1986: (NOV, 14),
1987: (NOV, 4),
1988: (OCT, 23),
1989: (OCT, 12),
1990: (OCT, 1),
1991: (SEP, 21),
1992: (SEP, 9),
1993: (AUG, 30),
1994: (AUG, 20),
1995: (AUG, 9),
1996: (JUL, 28),
1997: (JUL, 17),
1998: (JUL, 6),
1999: (JUN, 26),
2000: (JUN, 15),
2001: (JUN, 4),
2002: (MAY, 25),
2003: (MAY, 15),
2004: (MAY, 3),
2005: (APR, 22),
2006: (APR, 10),
2007: (MAR, 31),
2008: (MAR, 20),
Expand All @@ -393,7 +624,7 @@ class IndonesiaIslamicHolidays(_CustomIslamicHolidays):
2018: (NOV, 20),
2019: (NOV, 9),
2020: (OCT, 29),
2021: (OCT, 19),
2021: (OCT, 20),
2022: (OCT, 8),
2023: (SEP, 28),
2024: (SEP, 16),
Expand All @@ -418,6 +649,7 @@ class IndonesiaStaticHolidays:
- https://peraturan.bpk.go.id/Details/104497/keppres-no-10-tahun-2019
- https://peraturan.bpk.go.id/Details/152704/keppres-no-22-tahun-2020
- https://peraturan.bpk.go.id/Details/277337/keppres-no-10-tahun-2024
- https://www.buduk.desa.id/berita/read/83/surat-edaran-menteri-ketenagakerjaan-republik-indonesia-nomor-1-tahun-2024.html
References (Joint Holidays):
- https://data.santoslolowang.com/viewing/Agama_Nasional_Indonesia/kepbersama_2002.pdf/
Expand All @@ -437,6 +669,7 @@ class IndonesiaStaticHolidays:
- https://news.detik.com/berita/d-2576131/ini-daftar-hari-libur-dan-cuti-bersama-tahun-2015
- https://bkpsdm.salatiga.go.id/pelaksanaan-hari-libur-nasional-dan-cuti-bersama-tahun-2015.html
- https://news.detik.com/berita/d-2952083/ini-rincian-libur-dan-cuti-bersama-2016
- https://news.detik.com/berita/d-3366218/libur-nasional-dan-cuti-bersama-2017-tambah-3-hari-ini-daftar-lengkapnya
- https://setkab.go.id/tidak-kurangi-hak-cuti-tahunan-presiden-jokowi-tetapkan-23-juni-sebagai-cuti-bersama-idul-fitri/
- https://setkab.go.id/pelayanan-publik-tetap-jalan-presiden-jokowi-tetapkan-cuti-bersama-pns-tahun-2018/
- https://setkab.go.id/keppres-no-132019-cuti-bersama-pns-pada-idul-fitri-1440h-tanggal-3-4-dan-7-juni/
Expand Down Expand Up @@ -499,7 +732,10 @@ class IndonesiaStaticHolidays:
2018: (JUN, 27, local_election_day),
2019: (APR, 17, general_election_day),
2020: (DEC, 9, local_election_day),
2024: (FEB, 14, general_election_day),
2024: (
(FEB, 14, general_election_day),
(NOV, 27, local_election_day),
),
}
special_public_holidays_observed = {
# Eid al-Fitr.
Expand Down Expand Up @@ -611,6 +847,7 @@ class IndonesiaStaticHolidays:
(DEC, 26, christmas_joint_holiday),
),
2017: (
(JAN, 2, new_years_joint_holiday),
(JUN, 23, eid_al_fitr_joint_holiday),
(JUN, 27, eid_al_fitr_joint_holiday),
(JUN, 28, eid_al_fitr_joint_holiday),
Expand Down Expand Up @@ -640,10 +877,7 @@ class IndonesiaStaticHolidays:
(OCT, 30, mawlid_joint_holiday),
(DEC, 24, christmas_joint_holiday),
),
2021: (
(MAY, 12, eid_al_fitr_joint_holiday),
(DEC, 24, christmas_joint_holiday),
),
2021: (MAY, 12, eid_al_fitr_joint_holiday),
2022: (
(APR, 29, eid_al_fitr_joint_holiday),
(MAY, 4, eid_al_fitr_joint_holiday),
Expand Down
Loading

0 comments on commit bf30cb2

Please sign in to comment.