holidays 0.61__py3-none-any.whl → 0.63__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 (128) hide show
  1. holidays/calendars/thai.py +25 -9
  2. holidays/constants.py +3 -0
  3. holidays/countries/__init__.py +1 -0
  4. holidays/countries/albania.py +2 -4
  5. holidays/countries/angola.py +24 -29
  6. holidays/countries/argentina.py +25 -4
  7. holidays/countries/armenia.py +1 -3
  8. holidays/countries/aruba.py +2 -4
  9. holidays/countries/australia.py +1 -0
  10. holidays/countries/azerbaijan.py +31 -8
  11. holidays/countries/bahamas.py +2 -4
  12. holidays/countries/barbados.py +2 -4
  13. holidays/countries/belarus.py +2 -4
  14. holidays/countries/belize.py +2 -4
  15. holidays/countries/bolivia.py +2 -4
  16. holidays/countries/bosnia_and_herzegovina.py +1 -1
  17. holidays/countries/botswana.py +1 -3
  18. holidays/countries/brazil.py +2 -7
  19. holidays/countries/brunei.py +2 -4
  20. holidays/countries/bulgaria.py +1 -6
  21. holidays/countries/burkina_faso.py +3 -5
  22. holidays/countries/burundi.py +1 -3
  23. holidays/countries/cambodia.py +8 -11
  24. holidays/countries/cameroon.py +2 -4
  25. holidays/countries/canada.py +8 -13
  26. holidays/countries/chad.py +2 -4
  27. holidays/countries/chile.py +11 -14
  28. holidays/countries/china.py +2 -7
  29. holidays/countries/congo.py +2 -4
  30. holidays/countries/costa_rica.py +1 -1
  31. holidays/countries/croatia.py +2 -5
  32. holidays/countries/cuba.py +2 -4
  33. holidays/countries/curacao.py +2 -7
  34. holidays/countries/cyprus.py +1 -9
  35. holidays/countries/czechia.py +1 -1
  36. holidays/countries/djibouti.py +2 -4
  37. holidays/countries/dominica.py +3 -6
  38. holidays/countries/dominican_republic.py +2 -4
  39. holidays/countries/eswatini.py +1 -4
  40. holidays/countries/ethiopia.py +1 -3
  41. holidays/countries/finland.py +5 -2
  42. holidays/countries/france.py +19 -3
  43. holidays/countries/gabon.py +2 -4
  44. holidays/countries/georgia.py +1 -3
  45. holidays/countries/germany.py +4 -56
  46. holidays/countries/ghana.py +1 -4
  47. holidays/countries/guernsey.py +328 -0
  48. holidays/countries/haiti.py +2 -8
  49. holidays/countries/hongkong.py +2 -3
  50. holidays/countries/hungary.py +2 -2
  51. holidays/countries/indonesia.py +1 -3
  52. holidays/countries/iran.py +1 -3
  53. holidays/countries/ireland.py +1 -3
  54. holidays/countries/israel.py +3 -21
  55. holidays/countries/japan.py +2 -6
  56. holidays/countries/jersey.py +2 -4
  57. holidays/countries/kazakhstan.py +8 -4
  58. holidays/countries/kenya.py +1 -3
  59. holidays/countries/laos.py +2 -13
  60. holidays/countries/latvia.py +3 -7
  61. holidays/countries/lesotho.py +1 -3
  62. holidays/countries/lithuania.py +2 -4
  63. holidays/countries/madagascar.py +1 -4
  64. holidays/countries/malawi.py +1 -4
  65. holidays/countries/malaysia.py +1 -6
  66. holidays/countries/malta.py +2 -4
  67. holidays/countries/moldova.py +1 -3
  68. holidays/countries/mozambique.py +1 -3
  69. holidays/countries/namibia.py +2 -4
  70. holidays/countries/netherlands.py +1 -0
  71. holidays/countries/new_zealand.py +4 -11
  72. holidays/countries/nigeria.py +1 -3
  73. holidays/countries/pakistan.py +1 -3
  74. holidays/countries/palau.py +5 -7
  75. holidays/countries/papua_new_guinea.py +2 -4
  76. holidays/countries/paraguay.py +32 -31
  77. holidays/countries/philippines.py +3 -5
  78. holidays/countries/poland.py +1 -3
  79. holidays/countries/portugal.py +1 -0
  80. holidays/countries/russia.py +1 -3
  81. holidays/countries/saint_kitts_and_nevis.py +2 -4
  82. holidays/countries/seychelles.py +2 -4
  83. holidays/countries/slovakia.py +2 -4
  84. holidays/countries/slovenia.py +1 -3
  85. holidays/countries/south_africa.py +2 -4
  86. holidays/countries/south_korea.py +5 -14
  87. holidays/countries/switzerland.py +1 -0
  88. holidays/countries/taiwan.py +1 -3
  89. holidays/countries/tanzania.py +2 -8
  90. holidays/countries/thailand.py +500 -216
  91. holidays/countries/timor_leste.py +4 -8
  92. holidays/countries/tonga.py +2 -4
  93. holidays/countries/turkey.py +4 -11
  94. holidays/countries/ukraine.py +2 -4
  95. holidays/countries/united_kingdom.py +2 -8
  96. holidays/countries/united_states.py +27 -23
  97. holidays/countries/uruguay.py +10 -14
  98. holidays/countries/uzbekistan.py +1 -2
  99. holidays/countries/vanuatu.py +2 -4
  100. holidays/countries/vatican_city.py +1 -3
  101. holidays/countries/venezuela.py +1 -0
  102. holidays/countries/zambia.py +1 -4
  103. holidays/countries/zimbabwe.py +1 -3
  104. holidays/financial/__init__.py +2 -2
  105. holidays/financial/brasil_bolsa_balcao.py +4 -6
  106. holidays/financial/european_central_bank.py +12 -8
  107. holidays/financial/ice_futures_europe.py +2 -5
  108. holidays/financial/ny_stock_exchange.py +21 -22
  109. holidays/holiday_base.py +10 -12
  110. holidays/locale/en_US/LC_MESSAGES/PY.mo +0 -0
  111. holidays/locale/en_US/LC_MESSAGES/PY.po +18 -14
  112. holidays/locale/en_US/LC_MESSAGES/TH.mo +0 -0
  113. holidays/locale/en_US/LC_MESSAGES/TH.po +128 -24
  114. holidays/locale/es/LC_MESSAGES/PY.mo +0 -0
  115. holidays/locale/es/LC_MESSAGES/PY.po +17 -13
  116. holidays/locale/th/LC_MESSAGES/TH.mo +0 -0
  117. holidays/locale/th/LC_MESSAGES/TH.po +127 -23
  118. holidays/locale/uk/LC_MESSAGES/PY.mo +0 -0
  119. holidays/locale/uk/LC_MESSAGES/PY.po +18 -14
  120. holidays/registry.py +3 -2
  121. holidays/utils.py +1 -5
  122. holidays/version.py +1 -1
  123. {holidays-0.61.dist-info → holidays-0.63.dist-info}/METADATA +14 -9
  124. {holidays-0.61.dist-info → holidays-0.63.dist-info}/RECORD +128 -127
  125. {holidays-0.61.dist-info → holidays-0.63.dist-info}/WHEEL +1 -1
  126. {holidays-0.61.dist-info → holidays-0.63.dist-info}/AUTHORS +0 -0
  127. {holidays-0.61.dist-info → holidays-0.63.dist-info}/LICENSE +0 -0
  128. {holidays-0.61.dist-info → holidays-0.63.dist-info}/top_level.txt +0 -0
@@ -10,7 +10,6 @@
10
10
  # Website: https://github.com/vacanza/holidays
11
11
  # License: MIT (see LICENSE file)
12
12
 
13
- from datetime import date
14
13
  from gettext import gettext as tr
15
14
 
16
15
  from holidays.calendars.gregorian import JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, DEC
@@ -22,8 +21,12 @@ from holidays.holiday_base import HolidayBase
22
21
  class Paraguay(HolidayBase, ChristianHolidays, InternationalHolidays, StaticHolidays):
23
22
  """
24
23
  References:
24
+ - `Ley 8/1990 <https://www.bacn.gov.py/leyes-paraguayas/2358/ley-n-8--por-la-cual-se-determinan-los-feriados-de-la-republica>`_
25
+ - `Ley 715/1995 <https://www.bacn.gov.py/leyes-paraguayas/792/ley-n-715--amplia-la-ley-no-0890->`_
26
+ - `Ley 1.601/2000 <https://www.bacn.gov.py/leyes-paraguayas/1677/ley-n-1601--modifica-el-articulo-1-de-la-ley-no-71595-que-amplia-la-ley-n-0890-por-la-cual-se-determinan-los-feriados-de-la-republica>`_
27
+ - `Ley 1.723/2001 <https://www.bacn.gov.py/leyes-paraguayas/634/ley-n-1723--autoriza-al-poder-ejecutivo-a-trasladar-los-feriados-nacionales-al-dia-lunes>`_
28
+ - `Ley 4.531/2011 <https://www.bacn.gov.py/leyes-paraguayas/3831/ley-n-4531-restablece-el-dia-14-de-mayo-de-cada-ano-como-feriado-nacional>`_
25
29
  - https://es.wikipedia.org/wiki/Anexo:D%C3%ADas_festivos_en_Paraguay
26
- - https://www.ghp.com.py/news/feriados-nacionales-del-ano-2019-en-paraguay
27
30
  - http://www.calendarioparaguay.com/
28
31
  """
29
32
 
@@ -31,6 +34,8 @@ class Paraguay(HolidayBase, ChristianHolidays, InternationalHolidays, StaticHoli
31
34
  default_language = "es"
32
35
  supported_categories = (GOVERNMENT, PUBLIC)
33
36
  supported_languages = ("en_US", "es", "uk")
37
+ # Ley 8/1990.
38
+ start_year = 1991
34
39
 
35
40
  def __init__(self, *args, **kwargs):
36
41
  ChristianHolidays.__init__(self)
@@ -38,21 +43,18 @@ class Paraguay(HolidayBase, ChristianHolidays, InternationalHolidays, StaticHoli
38
43
  StaticHolidays.__init__(self, ParaguayStaticHolidays)
39
44
  super().__init__(*args, **kwargs)
40
45
 
41
- def _move_holiday(self, dt: date) -> None:
42
- if not self.observed and self._is_weekend(dt):
43
- self.pop(dt)
44
-
45
46
  def _populate_public_holidays(self):
46
47
  # New Year's Day.
47
- self._move_holiday(self._add_new_years_day(tr("Año Nuevo")))
48
+ self._add_new_years_day(tr("Año Nuevo"))
48
49
 
49
50
  dates_obs = {
50
51
  2013: (MAR, 4),
51
52
  2016: (FEB, 29),
52
53
  2018: (FEB, 26),
54
+ 2019: (MAR, 4),
53
55
  2022: (FEB, 28),
56
+ 2023: (FEB, 27),
54
57
  }
55
-
56
58
  self._add_holiday(
57
59
  # Patriots Day.
58
60
  tr("Día de los Héroes de la Patria"),
@@ -66,52 +68,51 @@ class Paraguay(HolidayBase, ChristianHolidays, InternationalHolidays, StaticHoli
66
68
  self._add_good_friday(tr("Viernes Santo"))
67
69
 
68
70
  # Easter Sunday.
69
- self._move_holiday(self._add_easter_sunday(tr("Domingo de Resurrección")))
71
+ self._add_easter_sunday(tr("Domingo de Resurrección"))
70
72
 
71
- # Labor Day.
72
- self._move_holiday(self._add_labor_day(tr("Día del Trabajador")))
73
+ # Workers' Day.
74
+ self._add_labor_day(tr("Día de los Trabajadores"))
73
75
 
74
- # Independence Day.
75
- name = tr("Día de la Independencia Nacional")
76
76
  if self._year >= 2012:
77
- self._move_holiday(self._add_holiday_may_14(name))
78
- may_15 = self._add_holiday_may_15(name)
79
- if self._year != 2021:
80
- self._move_holiday(may_15)
77
+ # National Holiday.
78
+ self._add_holiday_may_14(tr("Feriado Nacional"))
79
+
80
+ # Independence Day.
81
+ self._add_holiday_may_15(tr("Día de la Independencia Nacional"))
81
82
 
82
83
  dates_obs = {
83
84
  2014: (JUN, 16),
84
85
  2018: (JUN, 11),
86
+ 2019: (JUN, 17),
87
+ 2024: (JUN, 10),
85
88
  }
86
- self._move_holiday(
87
- # Chaco Armistice Day.
88
- self._add_holiday(tr("Día de la Paz del Chaco"), dates_obs.get(self._year, (JUN, 12)))
89
- )
89
+ # Chaco Armistice Day.
90
+ self._add_holiday(tr("Día de la Paz del Chaco"), dates_obs.get(self._year, (JUN, 12)))
90
91
 
91
92
  # Asuncion Foundation's Day.
92
- self._move_holiday(self._add_holiday_aug_15(tr("Día de la Fundación de Asunción")))
93
+ self._add_holiday_aug_15(tr("Día de la Fundación de Asunción"))
93
94
 
94
- if self._year >= 2000:
95
+ # Ley 715/1995, 1.601/2000.
96
+ if self._year >= 1995:
95
97
  dates_obs = {
96
98
  2015: (SEP, 28),
97
99
  2016: (OCT, 3),
98
100
  2017: (OCT, 2),
99
101
  2021: (SEP, 27),
100
102
  2022: (OCT, 3),
103
+ 2024: (SEP, 30),
101
104
  }
102
- self._move_holiday(
103
- self._add_holiday(
104
- # Boqueron Battle Day.
105
- tr("Día de la Batalla de Boquerón"),
106
- dates_obs.get(self._year, (SEP, 29)),
107
- )
105
+ self._add_holiday(
106
+ # Boqueron Battle Day.
107
+ tr("Día de la Batalla de Boquerón"),
108
+ dates_obs.get(self._year, (SEP, 29)),
108
109
  )
109
110
 
110
111
  # Caacupe Virgin Day.
111
- self._move_holiday(self._add_holiday_dec_8(tr("Día de la Virgen de Caacupé")))
112
+ self._add_holiday_dec_8(tr("Día de la Virgen de Caacupé"))
112
113
 
113
114
  # Christmas Day.
114
- self._add_christmas_day(tr("Navidad"))
115
+ self._add_christmas_day(tr("Día de la Navidad"))
115
116
 
116
117
 
117
118
  class PY(Paraguay):
@@ -58,6 +58,7 @@ class Philippines(
58
58
  # %s (estimated).
59
59
  estimated_label = tr("%s (estimated)")
60
60
  supported_languages = ("en_PH", "en_US", "fil", "th")
61
+ start_year = 1988
61
62
 
62
63
  def __init__(self, *args, **kwargs):
63
64
  ChineseCalendarHolidays.__init__(self, cls=PhilippinesChineseHolidays)
@@ -68,9 +69,6 @@ class Philippines(
68
69
  super().__init__(*args, **kwargs)
69
70
 
70
71
  def _populate_public_holidays(self):
71
- if self._year <= 1987:
72
- return None
73
-
74
72
  # New Year's Day.
75
73
  self._add_new_years_day(tr("New Year's Day"))
76
74
 
@@ -269,8 +267,8 @@ class PhilippinesStaticHolidays:
269
267
  (NOV, 2, additional_special),
270
268
  (DEC, 24, additional_special),
271
269
  ),
272
- 2010: ((DEC, 24, additional_special),),
273
- 2012: ((NOV, 2, additional_special),),
270
+ 2010: (DEC, 24, additional_special),
271
+ 2012: (NOV, 2, additional_special),
274
272
  2013: (
275
273
  (NOV, 2, additional_special),
276
274
  (DEC, 24, additional_special),
@@ -25,6 +25,7 @@ class Poland(HolidayBase, ChristianHolidays, InternationalHolidays, StaticHolida
25
25
  country = "PL"
26
26
  default_language = "pl"
27
27
  supported_languages = ("en_US", "pl", "uk")
28
+ start_year = 1925
28
29
 
29
30
  def __init__(self, *args, **kwargs):
30
31
  ChristianHolidays.__init__(self)
@@ -33,9 +34,6 @@ class Poland(HolidayBase, ChristianHolidays, InternationalHolidays, StaticHolida
33
34
  super().__init__(*args, **kwargs)
34
35
 
35
36
  def _populate_public_holidays(self):
36
- if self._year <= 1924:
37
- return None
38
-
39
37
  # New Year's Day.
40
38
  self._add_new_years_day(tr("Nowy Rok"))
41
39
 
@@ -39,6 +39,7 @@ class Portugal(HolidayBase, ChristianHolidays, InternationalHolidays):
39
39
  country = "PT"
40
40
  default_language = "pt_PT"
41
41
  supported_categories = (OPTIONAL, PUBLIC)
42
+ start_year = 1801
42
43
 
43
44
  # https://en.wikipedia.org/wiki/ISO_3166-2:PT
44
45
  subdivisions = (
@@ -27,6 +27,7 @@ class Russia(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stat
27
27
  country = "RU"
28
28
  default_language = "ru"
29
29
  supported_languages = ("en_US", "ru")
30
+ start_year = 1991
30
31
 
31
32
  def __init__(self, *args, **kwargs):
32
33
  ChristianHolidays.__init__(self, JULIAN_CALENDAR)
@@ -35,9 +36,6 @@ class Russia(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stat
35
36
  super().__init__(*args, **kwargs)
36
37
 
37
38
  def _populate_public_holidays(self):
38
- if self._year <= 1990:
39
- return None
40
-
41
39
  if self._year <= 2004:
42
40
  # New Year's Day.
43
41
  name = tr("Новый год")
@@ -47,6 +47,8 @@ class SaintKittsAndNevis(
47
47
  # %s (observed).
48
48
  observed_label = "%s (observed)"
49
49
  weekend = {SUN}
50
+ # Public Holidays Act, Act 7 of 1983 Amendment.
51
+ start_year = 1983
50
52
 
51
53
  def __init__(self, *args, **kwargs):
52
54
  ChristianHolidays.__init__(self)
@@ -56,10 +58,6 @@ class SaintKittsAndNevis(
56
58
  super().__init__(*args, **kwargs)
57
59
 
58
60
  def _populate_public_holidays(self):
59
- # Public Holidays Act, Act 7 of 1983 Amendment.
60
- if self._year <= 1982:
61
- return None
62
-
63
61
  # Carnival Day.
64
62
  self._add_observed(self._add_new_years_day("Carnival Day"), rule=SUN_TO_NEXT_TUE)
65
63
 
@@ -41,6 +41,8 @@ class Seychelles(ObservedHolidayBase, ChristianHolidays, InternationalHolidays):
41
41
  # %s (observed).
42
42
  observed_label = tr("%s (observed)")
43
43
  supported_languages = ("en_SC", "en_US")
44
+ # Earliest source is the 1994 amendment of Seychelles Public Holidays Act.
45
+ start_year = 1994
44
46
 
45
47
  def __init__(self, *args, **kwargs):
46
48
  ChristianHolidays.__init__(self)
@@ -50,10 +52,6 @@ class Seychelles(ObservedHolidayBase, ChristianHolidays, InternationalHolidays):
50
52
  super().__init__(*args, **kwargs)
51
53
 
52
54
  def _populate_public_holidays(self):
53
- # Earliest source is the 1994 amendment of Seychelles Public Holidays Act.
54
- if self._year <= 1993:
55
- return None
56
-
57
55
  # New Year's Day.
58
56
  self._add_new_years_day(tr("New Year's Day"))
59
57
 
@@ -29,6 +29,8 @@ class Slovakia(HolidayBase, ChristianHolidays, InternationalHolidays, StaticHoli
29
29
  default_language = "sk"
30
30
  supported_categories = (PUBLIC, WORKDAY)
31
31
  supported_languages = ("en_US", "sk", "uk")
32
+ # Independent Slovak Republic established on Jan 01, 1993
33
+ start_year = 1993
32
34
 
33
35
  def __init__(self, *args, **kwargs):
34
36
  ChristianHolidays.__init__(self)
@@ -37,10 +39,6 @@ class Slovakia(HolidayBase, ChristianHolidays, InternationalHolidays, StaticHoli
37
39
  super().__init__(*args, **kwargs)
38
40
 
39
41
  def _populate_public_holidays(self):
40
- # Independent Slovak Republic established on Jan 01, 1993
41
- if self._year <= 1992:
42
- return None
43
-
44
42
  # Day of the Establishment of the Slovak Republic.
45
43
  self._add_holiday_jan_1(tr("Deň vzniku Slovenskej republiky"))
46
44
 
@@ -31,6 +31,7 @@ class Slovenia(HolidayBase, ChristianHolidays, InternationalHolidays, StaticHoli
31
31
  country = "SI"
32
32
  default_language = "sl"
33
33
  supported_languages = ("en_US", "sl", "uk")
34
+ start_year = 1991
34
35
 
35
36
  def __init__(self, *args, **kwargs):
36
37
  ChristianHolidays.__init__(self)
@@ -39,9 +40,6 @@ class Slovenia(HolidayBase, ChristianHolidays, InternationalHolidays, StaticHoli
39
40
  super().__init__(*args, **kwargs)
40
41
 
41
42
  def _populate_public_holidays(self):
42
- if self._year <= 1990:
43
- return None
44
-
45
43
  # New Year's Day.
46
44
  name = tr("novo leto")
47
45
  self._add_new_years_day(name)
@@ -25,6 +25,8 @@ class SouthAfrica(ObservedHolidayBase, ChristianHolidays, InternationalHolidays,
25
25
 
26
26
  country = "ZA"
27
27
  observed_label = "%s (observed)"
28
+ # Observed since 1910, with a few name changes
29
+ start_year = 1910
28
30
 
29
31
  def __init__(self, *args, **kwargs):
30
32
  ChristianHolidays.__init__(self)
@@ -35,10 +37,6 @@ class SouthAfrica(ObservedHolidayBase, ChristianHolidays, InternationalHolidays,
35
37
  super().__init__(*args, **kwargs)
36
38
 
37
39
  def _populate_public_holidays(self):
38
- # Observed since 1910, with a few name changes
39
- if self._year <= 1909:
40
- return None
41
-
42
40
  self._add_observed(self._add_new_years_day("New Year's Day"))
43
41
 
44
42
  self._add_good_friday("Good Friday")
@@ -92,6 +92,7 @@ class SouthKorea(
92
92
  # Alternative holiday for %s.
93
93
  observed_label = tr("%s 대체 휴일")
94
94
  supported_languages = ("en_US", "ko", "th")
95
+ start_year = 1948
95
96
 
96
97
  def __init__(self, *args, **kwargs):
97
98
  ChineseCalendarHolidays.__init__(self, cls=SouthKoreaLunisolarHolidays)
@@ -134,9 +135,6 @@ class SouthKorea(
134
135
  ):
135
136
  three_days_holidays[dt_alt] = name
136
137
 
137
- if self._year <= 1947:
138
- return None
139
-
140
138
  dts_observed = set()
141
139
  three_days_holidays = {}
142
140
 
@@ -281,9 +279,6 @@ class SouthKorea(
281
279
  self._populate_observed(dts_observed, three_days_holidays)
282
280
 
283
281
  def _populate_bank_holidays(self):
284
- if self._year <= 1947:
285
- return None
286
-
287
282
  # Workers' Day.
288
283
  name = tr("근로자의날")
289
284
  if self._year >= 1994:
@@ -404,10 +399,8 @@ class SouthKoreaStaticHolidays:
404
399
  # Joint Memorial Service for Fallen Soldiers.
405
400
  (JUN, 21, tr("전몰군인 합동위령제")),
406
401
  ),
407
- 1951: (
408
- # Vice Presidential Election.
409
- (MAY, 16, tr("부통령 선거일")),
410
- ),
402
+ # Vice Presidential Election.
403
+ 1951: (MAY, 16, tr("부통령 선거일")),
411
404
  1952: (
412
405
  # City/Town/Township-level Local Elections.
413
406
  (APR, 25, local_election_day),
@@ -416,10 +409,8 @@ class SouthKoreaStaticHolidays:
416
409
  # 2nd Presidential Election/3rd Vice President Election.
417
410
  (AUG, 5, presidential_election_day),
418
411
  ),
419
- 1954: (
420
- # 3rd National Assembly Election.
421
- (MAY, 20, national_assembly_election_day),
422
- ),
412
+ # 3rd National Assembly Election.
413
+ 1954: (MAY, 20, national_assembly_election_day),
423
414
  1956: (
424
415
  # 3rd Presidential Election/4th Vice President Election.
425
416
  (MAY, 15, presidential_election_day),
@@ -58,6 +58,7 @@ class Switzerland(ObservedHolidayBase, ChristianHolidays, InternationalHolidays)
58
58
  )
59
59
  supported_categories = (HALF_DAY, OPTIONAL, PUBLIC)
60
60
  supported_languages = ("de", "en_US", "fr", "it", "uk")
61
+ start_year = 1801
61
62
 
62
63
  def __init__(self, *args, **kwargs):
63
64
  ChristianHolidays.__init__(self)
@@ -70,6 +70,7 @@ class Taiwan(ObservedHolidayBase, ChineseCalendarHolidays, InternationalHolidays
70
70
  observed_label = tr("%s(慶祝)")
71
71
  default_language = "zh_TW"
72
72
  supported_languages = ("en_US", "th", "zh_CN", "zh_TW")
73
+ start_year = 1912
73
74
 
74
75
  def __init__(self, *args, **kwargs):
75
76
  ChineseCalendarHolidays.__init__(self)
@@ -96,9 +97,6 @@ class Taiwan(ObservedHolidayBase, ChineseCalendarHolidays, InternationalHolidays
96
97
  )
97
98
 
98
99
  def _populate_public_holidays(self):
99
- if self._year <= 1911:
100
- return None
101
-
102
100
  dts_observed = set()
103
101
  dts_observed_forward = set()
104
102
 
@@ -64,6 +64,8 @@ class Tanzania(
64
64
  # %s (estimated).
65
65
  estimated_label = tr("%s (makisio)")
66
66
  supported_languages = ("en_US", "sw")
67
+ # Written Law (Miscellaneous Amendments) (No. 2) Act, 1994.
68
+ start_year = 1994
67
69
 
68
70
  def __init__(self, *args, **kwargs):
69
71
  ChristianHolidays.__init__(self)
@@ -73,10 +75,6 @@ class Tanzania(
73
75
  super().__init__(*args, **kwargs)
74
76
 
75
77
  def _populate_bank_holidays(self):
76
- # Written Law (Miscellaneous Amendments) (No. 2) Act, 1994.
77
- if self._year <= 1993:
78
- return None
79
-
80
78
  # Sikukuu ya Pasaka.
81
79
  # Status: In-Use.
82
80
  # Only observed by financial institutions.
@@ -85,10 +83,6 @@ class Tanzania(
85
83
  self._add_easter_sunday(tr("Sikukuu ya Pasaka"))
86
84
 
87
85
  def _populate_public_holidays(self):
88
- # Written Law (Miscellaneous Amendments) (No. 2) Act, 1994.
89
- if self._year <= 1993:
90
- return None
91
-
92
86
  # In-lieus ("Badala ya %s") are observed on Monday should it fall on the weekends.
93
87
  # Abrogated in Public Holidays Ordinance No. 28 of 1966.
94
88
  # Reinstituted in Written Law (Miscellaneous Amendments) (No. 2) Act, 1994.