Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 23 additions & 20 deletions holidays/countries/spain.py
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ class Spain(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Islam
2021: https://www.boe.es/buscar/doc.php?id=BOE-A-2020-13343
2022: https://www.boe.es/buscar/doc.php?id=BOE-A-2021-17113
2023: https://www.boe.es/diario_boe/txt.php?id=BOE-A-2022-16755
2024: https://www.boe.es/buscar/doc.php?id=BOE-A-2023-22014
"""

country = "ES"
Expand Down Expand Up @@ -96,7 +97,7 @@ def _populate(self, year):

self._add_holiday_dec_6("Día de la Constitución Española")

if year not in {2013, 2019}:
if year not in {2013, 2019, 2024}:
self._add_immaculate_conception_day("Inmaculada Concepción")

if year not in {2011, 2016, 2022}:
Expand Down Expand Up @@ -128,7 +129,7 @@ def _add_subdiv_an_holidays(self):
if self._year in {2015, 2020}:
self._move_holiday(self._add_holiday_dec_6("Día de la Constitución Española"))

if self._year in {2013, 2019}:
if self._year in {2013, 2019, 2024}:
self._move_holiday(self._add_immaculate_conception_day("Inmaculada Concepción"))

if self._year in {2011, 2016, 2022}:
Expand Down Expand Up @@ -160,7 +161,7 @@ def _add_subdiv_ar_holidays(self):
if self._year in {2015, 2020}:
self._move_holiday(self._add_holiday_dec_6("Día de la Constitución Española"))

if self._year in {2013, 2019}:
if self._year in {2013, 2019, 2024}:
self._move_holiday(self._add_immaculate_conception_day("Inmaculada Concepción"))

if self._year in {2011, 2016, 2022}:
Expand Down Expand Up @@ -192,7 +193,7 @@ def _add_subdiv_as_holidays(self):
if self._year in {2015, 2020}:
self._move_holiday(self._add_holiday_dec_6("Día de la Constitución Española"))

if self._year in {2013, 2019}:
if self._year in {2013, 2019, 2024}:
self._move_holiday(self._add_immaculate_conception_day("Inmaculada Concepción"))

if self._year in {2011, 2016, 2022}:
Expand All @@ -205,19 +206,19 @@ def _add_subdiv_cb_holidays(self):
if self._year != 2018:
self._add_holy_thursday("Jueves Santo")

if self._year in {2013, 2015, 2019, 2020}:
if self._year in {2013, 2015, 2019, 2020, 2024}:
self._add_easter_monday("Lunes de Pascua")

if self._year == 2011:
self._move_holiday(self._add_labor_day("Fiesta del Trabajo"))

if self._year in {2012, 2013, 2014, 2019}:
if self._year in {2012, 2013, 2014, 2019, 2024}:
self._add_saint_james_day("Santiago Apóstol")

if self._year not in {2012, 2015, 2019}:
if self._year not in {2012, 2015, 2019, 2024}:
self._add_holiday_jul_28("Día de las Instituciones de Cantabria")

if self._year not in {2013, 2019}:
if self._year not in {2013, 2019, 2024}:
self._add_holiday_sep_15("La Bien Aparecida")

if self._year == 2015:
Expand Down Expand Up @@ -281,7 +282,7 @@ def _add_subdiv_cl_holidays(self):

self._add_holy_thursday("Jueves Santo")

if self._year <= 2022:
if self._year != 2023:
self._move_holiday(self._add_holiday_apr_23("Fiesta de la Comunidad Autónoma"))

if self._year in {2016, 2022}:
Expand All @@ -302,7 +303,7 @@ def _add_subdiv_cl_holidays(self):
if self._year in {2015, 2020}:
self._move_holiday(self._add_holiday_dec_6("Día de la Constitución Española"))

if self._year in {2013, 2019}:
if self._year in {2013, 2019, 2024}:
self._move_holiday(self._add_immaculate_conception_day("Inmaculada Concepción"))

if self._year in {2011, 2016, 2022}:
Expand Down Expand Up @@ -378,7 +379,7 @@ def _add_subdiv_ex_holidays(self):
if self._year in {2013, 2019}:
self._move_holiday(self._add_epiphany_day("Epifanía del Señor"))

if self._year == 2023:
if self._year in {2023, 2024}:
self._add_carnival_tuesday("Martes de Carnaval")

if self._year in {2010, 2017, 2021}:
Expand All @@ -389,7 +390,8 @@ def _add_subdiv_ex_holidays(self):
if self._year in {2011, 2016, 2022}:
self._move_holiday(self._add_labor_day("Fiesta del Trabajo"))

self._move_holiday(self._add_holiday_sep_8("Día de Extremadura"))
if self._year != 2024:
self._move_holiday(self._add_holiday_sep_8("Día de Extremadura"))

if self._year == 2014:
self._move_holiday(self._add_holiday_oct_12("Fiesta Nacional de España"))
Expand All @@ -400,7 +402,7 @@ def _add_subdiv_ex_holidays(self):
if self._year in {2015, 2020}:
self._move_holiday(self._add_holiday_dec_6("Día de la Constitución Española"))

if self._year in {2013, 2019}:
if self._year in {2013, 2019, 2024}:
self._move_holiday(self._add_immaculate_conception_day("Inmaculada Concepción"))

if self._year in {2011, 2016, 2022}:
Expand Down Expand Up @@ -455,21 +457,21 @@ def _add_subdiv_mc_holidays(self):
if self._year in {2013, 2019}:
self._move_holiday(self._add_epiphany_day("Epifanía del Señor"))

if self._year <= 2021 and self._year != 2017:
if (self._year <= 2021 and self._year != 2017) or self._year == 2024:
self._move_holiday(self._add_saint_josephs_day("San José"))

self._add_holy_thursday("Jueves Santo")

if self._year in {2011, 2022}:
self._move_holiday(self._add_labor_day("Fiesta del Trabajo"))

if self._year != 2013:
if self._year not in {2013, 2024}:
self._move_holiday(self._add_holiday_jun_9("Día de la Región de Murcia"))

if self._year in {2015, 2020}:
self._move_holiday(self._add_holiday_dec_6("Día de la Constitución Española"))

if self._year == 2013:
if self._year in {2013, 2024}:
self._move_holiday(self._add_immaculate_conception_day("Inmaculada Concepción"))

if self._year in {2016, 2022}:
Expand All @@ -493,7 +495,7 @@ def _add_subdiv_md_holidays(self):
if self._year in {2010, 2011, 2014}:
self._add_corpus_christi_day("Corpus Christi")

if self._year in {2011, 2016, 2022}:
if self._year in {2011, 2016, 2022, 2024}:
self._add_saint_james_day("Santiago Apóstol")

if self._year == 2020:
Expand Down Expand Up @@ -526,13 +528,13 @@ def _add_subdiv_ml_holidays(self):
if self._year in {2015, 2020}:
self._move_holiday(self._add_holiday_dec_6("Día de la Constitución Española"))

if self._year == 2019:
if self._year in {2019, 2024}:
self._move_holiday(self._add_immaculate_conception_day("Inmaculada Concepción"))

if self._year in {2011, 2016, 2022}:
self._move_holiday(self._add_christmas_day("Natividad del Señor"))

if self._year >= 2022:
if self._year in {2022, 2023}:
self._add_eid_al_fitr_day("Eid al-Fitr")

if self._year in {2011, 2012, 2021}:
Expand Down Expand Up @@ -609,7 +611,7 @@ def _add_subdiv_vc_holidays(self):
if self._year == 2013:
self._add_holiday_mar_18("Lunes de Fallas")

if self._year <= 2022 and self._year != 2017:
if (self._year <= 2022 and self._year != 2017) or self._year == 2024:
self._add_saint_josephs_day("San José")

if self._year in {2011, 2016, 2017, 2022}:
Expand Down Expand Up @@ -657,6 +659,7 @@ class SpainIslamicHolidays(_CustomIslamicHolidays):
2021: (JUL, 20),
2022: (JUL, 9),
2023: (JUN, 29),
2024: (JUN, 17),
}

EID_AL_FITR_DATES = {
Expand Down
Loading