holidays 0.71__py3-none-any.whl → 0.73__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 (260) hide show
  1. holidays/__init__.py +1 -2
  2. holidays/calendars/__init__.py +1 -1
  3. holidays/calendars/balinese_saka.py +1 -1
  4. holidays/calendars/buddhist.py +5 -3
  5. holidays/calendars/chinese.py +101 -13
  6. holidays/calendars/custom.py +1 -1
  7. holidays/calendars/gregorian.py +1 -1
  8. holidays/calendars/hebrew.py +1 -1
  9. holidays/calendars/hindu.py +194 -6
  10. holidays/calendars/islamic.py +1 -1
  11. holidays/calendars/julian.py +1 -1
  12. holidays/calendars/julian_revised.py +1 -1
  13. holidays/calendars/persian.py +1 -1
  14. holidays/calendars/sinhala.py +1 -1
  15. holidays/calendars/thai.py +1 -1
  16. holidays/constants.py +1 -1
  17. holidays/countries/__init__.py +7 -1
  18. holidays/countries/afghanistan.py +1 -1
  19. holidays/countries/albania.py +2 -2
  20. holidays/countries/algeria.py +1 -1
  21. holidays/countries/american_samoa.py +2 -1
  22. holidays/countries/andorra.py +140 -47
  23. holidays/countries/angola.py +1 -1
  24. holidays/countries/antigua_and_barbuda.py +1 -1
  25. holidays/countries/argentina.py +15 -5
  26. holidays/countries/armenia.py +1 -1
  27. holidays/countries/aruba.py +1 -1
  28. holidays/countries/australia.py +16 -5
  29. holidays/countries/austria.py +3 -3
  30. holidays/countries/azerbaijan.py +1 -1
  31. holidays/countries/bahamas.py +1 -1
  32. holidays/countries/bahrain.py +1 -1
  33. holidays/countries/bangladesh.py +1 -1
  34. holidays/countries/barbados.py +1 -1
  35. holidays/countries/belarus.py +1 -1
  36. holidays/countries/belgium.py +1 -1
  37. holidays/countries/belize.py +1 -1
  38. holidays/countries/bolivia.py +23 -12
  39. holidays/countries/bosnia_and_herzegovina.py +5 -5
  40. holidays/countries/botswana.py +1 -1
  41. holidays/countries/brazil.py +3 -4
  42. holidays/countries/brunei.py +1 -1
  43. holidays/countries/bulgaria.py +1 -1
  44. holidays/countries/burkina_faso.py +1 -1
  45. holidays/countries/burundi.py +1 -1
  46. holidays/countries/cambodia.py +22 -22
  47. holidays/countries/cameroon.py +1 -1
  48. holidays/countries/canada.py +91 -57
  49. holidays/countries/chad.py +1 -1
  50. holidays/countries/chile.py +36 -18
  51. holidays/countries/china.py +1 -1
  52. holidays/countries/cocos_islands.py +259 -0
  53. holidays/countries/colombia.py +1 -1
  54. holidays/countries/congo.py +1 -1
  55. holidays/countries/costa_rica.py +1 -1
  56. holidays/countries/croatia.py +1 -1
  57. holidays/countries/cuba.py +1 -1
  58. holidays/countries/curacao.py +1 -1
  59. holidays/countries/cyprus.py +1 -1
  60. holidays/countries/czechia.py +1 -1
  61. holidays/countries/denmark.py +1 -1
  62. holidays/countries/djibouti.py +1 -1
  63. holidays/countries/dominica.py +1 -1
  64. holidays/countries/dominican_republic.py +1 -1
  65. holidays/countries/ecuador.py +1 -1
  66. holidays/countries/egypt.py +1 -1
  67. holidays/countries/el_salvador.py +18 -18
  68. holidays/countries/estonia.py +1 -1
  69. holidays/countries/eswatini.py +1 -1
  70. holidays/countries/ethiopia.py +43 -24
  71. holidays/countries/fiji.py +1 -1
  72. holidays/countries/finland.py +1 -1
  73. holidays/countries/france.py +3 -4
  74. holidays/countries/french_southern_territories.py +1 -1
  75. holidays/countries/gabon.py +1 -1
  76. holidays/countries/georgia.py +1 -1
  77. holidays/countries/germany.py +20 -21
  78. holidays/countries/ghana.py +1 -1
  79. holidays/countries/greece.py +1 -1
  80. holidays/countries/greenland.py +1 -1
  81. holidays/countries/grenada.py +143 -0
  82. holidays/countries/guam.py +2 -1
  83. holidays/countries/guatemala.py +1 -1
  84. holidays/countries/guernsey.py +1 -1
  85. holidays/countries/guinea.py +1 -1
  86. holidays/countries/haiti.py +1 -1
  87. holidays/countries/honduras.py +1 -1
  88. holidays/countries/hongkong.py +2 -2
  89. holidays/countries/hungary.py +1 -1
  90. holidays/countries/iceland.py +1 -1
  91. holidays/countries/india.py +17 -11
  92. holidays/countries/indonesia.py +1 -1
  93. holidays/countries/iran.py +1 -1
  94. holidays/countries/ireland.py +1 -1
  95. holidays/countries/isle_of_man.py +1 -1
  96. holidays/countries/israel.py +1 -1
  97. holidays/countries/italy.py +1 -1
  98. holidays/countries/ivory_coast.py +5 -5
  99. holidays/countries/jamaica.py +1 -1
  100. holidays/countries/japan.py +1 -1
  101. holidays/countries/jersey.py +1 -1
  102. holidays/countries/jordan.py +1 -1
  103. holidays/countries/kazakhstan.py +1 -1
  104. holidays/countries/kenya.py +1 -1
  105. holidays/countries/kuwait.py +1 -1
  106. holidays/countries/kyrgyzstan.py +1 -1
  107. holidays/countries/laos.py +1 -1
  108. holidays/countries/latvia.py +1 -1
  109. holidays/countries/lesotho.py +1 -1
  110. holidays/countries/liechtenstein.py +1 -1
  111. holidays/countries/lithuania.py +1 -1
  112. holidays/countries/luxembourg.py +1 -1
  113. holidays/countries/macau.py +5 -5
  114. holidays/countries/madagascar.py +1 -1
  115. holidays/countries/malawi.py +1 -1
  116. holidays/countries/malaysia.py +21 -29
  117. holidays/countries/maldives.py +1 -1
  118. holidays/countries/malta.py +1 -1
  119. holidays/countries/marshall_islands.py +1 -1
  120. holidays/countries/mauritania.py +1 -1
  121. holidays/countries/mexico.py +1 -1
  122. holidays/countries/moldova.py +1 -1
  123. holidays/countries/monaco.py +1 -1
  124. holidays/countries/montenegro.py +1 -1
  125. holidays/countries/morocco.py +1 -1
  126. holidays/countries/mozambique.py +1 -1
  127. holidays/countries/namibia.py +1 -1
  128. holidays/countries/nepal.py +441 -0
  129. holidays/countries/netherlands.py +1 -1
  130. holidays/countries/new_zealand.py +19 -19
  131. holidays/countries/nicaragua.py +19 -19
  132. holidays/countries/nigeria.py +1 -1
  133. holidays/countries/north_macedonia.py +1 -1
  134. holidays/countries/northern_mariana_islands.py +2 -1
  135. holidays/countries/norway.py +1 -1
  136. holidays/countries/oman.py +1 -1
  137. holidays/countries/pakistan.py +1 -1
  138. holidays/countries/palau.py +1 -1
  139. holidays/countries/panama.py +1 -1
  140. holidays/countries/papua_new_guinea.py +1 -1
  141. holidays/countries/paraguay.py +1 -1
  142. holidays/countries/peru.py +1 -1
  143. holidays/countries/philippines.py +3 -1
  144. holidays/countries/poland.py +1 -1
  145. holidays/countries/portugal.py +23 -25
  146. holidays/countries/puerto_rico.py +2 -1
  147. holidays/countries/qatar.py +1 -1
  148. holidays/countries/romania.py +1 -1
  149. holidays/countries/russia.py +1 -1
  150. holidays/countries/saint_kitts_and_nevis.py +1 -1
  151. holidays/countries/saint_lucia.py +1 -1
  152. holidays/countries/samoa.py +1 -1
  153. holidays/countries/san_marino.py +1 -1
  154. holidays/countries/sao_tome_and_principe.py +112 -0
  155. holidays/countries/saudi_arabia.py +1 -1
  156. holidays/countries/serbia.py +1 -1
  157. holidays/countries/seychelles.py +1 -1
  158. holidays/countries/sierra_leone.py +1 -1
  159. holidays/countries/singapore.py +5 -2
  160. holidays/countries/slovakia.py +1 -1
  161. holidays/countries/slovenia.py +1 -1
  162. holidays/countries/south_africa.py +1 -1
  163. holidays/countries/south_korea.py +3 -31
  164. holidays/countries/spain.py +43 -20
  165. holidays/countries/sri_lanka.py +1 -1
  166. holidays/countries/suriname.py +1 -1
  167. holidays/countries/sweden.py +1 -1
  168. holidays/countries/switzerland.py +61 -28
  169. holidays/countries/taiwan.py +1 -1
  170. holidays/countries/tanzania.py +1 -1
  171. holidays/countries/thailand.py +3 -3
  172. holidays/countries/timor_leste.py +1 -1
  173. holidays/countries/togo.py +182 -0
  174. holidays/countries/tonga.py +1 -1
  175. holidays/countries/trinidad_and_tobago.py +197 -0
  176. holidays/countries/tunisia.py +1 -1
  177. holidays/countries/turkey.py +1 -1
  178. holidays/countries/tuvalu.py +6 -6
  179. holidays/countries/ukraine.py +1 -1
  180. holidays/countries/united_arab_emirates.py +1 -1
  181. holidays/countries/united_kingdom.py +1 -1
  182. holidays/countries/united_states.py +62 -4
  183. holidays/countries/united_states_minor_outlying_islands.py +2 -1
  184. holidays/countries/united_states_virgin_islands.py +2 -1
  185. holidays/countries/uruguay.py +1 -1
  186. holidays/countries/uzbekistan.py +1 -1
  187. holidays/countries/vanuatu.py +1 -1
  188. holidays/countries/vatican_city.py +30 -32
  189. holidays/countries/venezuela.py +1 -1
  190. holidays/countries/vietnam.py +3 -2
  191. holidays/countries/zambia.py +1 -1
  192. holidays/countries/zimbabwe.py +1 -1
  193. holidays/deprecations/v1_incompatibility.py +1 -1
  194. holidays/financial/__init__.py +1 -1
  195. holidays/financial/brasil_bolsa_balcao.py +1 -1
  196. holidays/financial/european_central_bank.py +1 -1
  197. holidays/financial/ice_futures_europe.py +1 -1
  198. holidays/financial/ny_stock_exchange.py +1 -1
  199. holidays/groups/__init__.py +1 -1
  200. holidays/groups/balinese_saka.py +1 -1
  201. holidays/groups/buddhist.py +1 -1
  202. holidays/groups/chinese.py +6 -4
  203. holidays/groups/christian.py +4 -4
  204. holidays/groups/custom.py +1 -1
  205. holidays/groups/eastern.py +1 -1
  206. holidays/groups/hebrew.py +1 -1
  207. holidays/groups/hindu.py +166 -4
  208. holidays/groups/international.py +1 -1
  209. holidays/groups/islamic.py +1 -1
  210. holidays/groups/persian.py +1 -1
  211. holidays/groups/sinhala.py +1 -1
  212. holidays/groups/thai.py +6 -6
  213. holidays/helpers.py +1 -1
  214. holidays/holiday_base.py +1 -1
  215. holidays/ical.py +2 -2
  216. holidays/locale/am/LC_MESSAGES/ET.mo +0 -0
  217. holidays/locale/ar/LC_MESSAGES/CA.mo +0 -0
  218. holidays/locale/ar/LC_MESSAGES/ET.mo +0 -0
  219. holidays/locale/ca/LC_MESSAGES/AD.mo +0 -0
  220. holidays/locale/coa_CC/LC_MESSAGES/CC.mo +0 -0
  221. holidays/locale/en_CA/LC_MESSAGES/CA.mo +0 -0
  222. holidays/locale/en_CC/LC_MESSAGES/CC.mo +0 -0
  223. holidays/locale/en_CI/LC_MESSAGES/CI.mo +0 -0
  224. holidays/locale/en_ET/LC_MESSAGES/ET.mo +0 -0
  225. holidays/locale/en_GD/LC_MESSAGES/GD.mo +0 -0
  226. holidays/locale/en_IN/LC_MESSAGES/IN.mo +0 -0
  227. holidays/locale/en_TT/LC_MESSAGES/TT.mo +0 -0
  228. holidays/locale/en_US/LC_MESSAGES/AD.mo +0 -0
  229. holidays/locale/en_US/LC_MESSAGES/AR.mo +0 -0
  230. holidays/locale/en_US/LC_MESSAGES/CA.mo +0 -0
  231. holidays/locale/en_US/LC_MESSAGES/CC.mo +0 -0
  232. holidays/locale/en_US/LC_MESSAGES/CI.mo +0 -0
  233. holidays/locale/en_US/LC_MESSAGES/ET.mo +0 -0
  234. holidays/locale/en_US/LC_MESSAGES/GD.mo +0 -0
  235. holidays/locale/en_US/LC_MESSAGES/IN.mo +0 -0
  236. holidays/locale/en_US/LC_MESSAGES/KH.mo +0 -0
  237. holidays/locale/en_US/LC_MESSAGES/ST.mo +0 -0
  238. holidays/locale/en_US/LC_MESSAGES/TG.mo +0 -0
  239. holidays/locale/en_US/LC_MESSAGES/TT.mo +0 -0
  240. holidays/locale/es/LC_MESSAGES/AR.mo +0 -0
  241. holidays/locale/fr/LC_MESSAGES/CA.mo +0 -0
  242. holidays/locale/fr/LC_MESSAGES/TG.mo +0 -0
  243. holidays/locale/hi/LC_MESSAGES/IN.mo +0 -0
  244. holidays/locale/km/LC_MESSAGES/KH.mo +0 -0
  245. holidays/locale/pt_ST/LC_MESSAGES/ST.mo +0 -0
  246. holidays/locale/th/LC_MESSAGES/CA.mo +0 -0
  247. holidays/locale/th/LC_MESSAGES/KH.mo +0 -0
  248. holidays/locale/uk/LC_MESSAGES/AD.mo +0 -0
  249. holidays/locale/uk/LC_MESSAGES/AR.mo +0 -0
  250. holidays/mixins.py +1 -1
  251. holidays/observed_holiday_base.py +1 -1
  252. holidays/registry.py +7 -1
  253. holidays/utils.py +1 -1
  254. holidays/version.py +2 -2
  255. {holidays-0.71.dist-info → holidays-0.73.dist-info}/METADATA +66 -18
  256. {holidays-0.71.dist-info → holidays-0.73.dist-info}/RECORD +260 -239
  257. {holidays-0.71.dist-info → holidays-0.73.dist-info}/WHEEL +1 -1
  258. holidays-0.71.dist-info/licenses/AUTHORS.md → holidays-0.73.dist-info/licenses/CONTRIBUTORS +1 -2
  259. {holidays-0.71.dist-info → holidays-0.73.dist-info}/licenses/LICENSE +1 -1
  260. {holidays-0.71.dist-info → holidays-0.73.dist-info}/top_level.txt +0 -0
@@ -4,7 +4,7 @@
4
4
  # specific sets of holidays on the fly. It aims to make determining whether a
5
5
  # specific date is a holiday as fast and flexible as possible.
6
6
  #
7
- # Authors: Vacanza Team and individual contributors (see AUTHORS.md file)
7
+ # Authors: Vacanza Team and individual contributors (see CONTRIBUTORS file)
8
8
  # dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
9
9
  # ryanss <ryanssdev@icloud.com> (c) 2014-2017
10
10
  # Website: https://github.com/vacanza/holidays
@@ -38,21 +38,32 @@ class Bolivia(ObservedHolidayBase, ChristianHolidays, InternationalHolidays):
38
38
 
39
39
  country = "BO"
40
40
  default_language = "es"
41
- supported_languages = ("en_US", "es", "uk")
42
41
  # %s (observed).
43
42
  observed_label = tr("%s (observado)")
43
+ start_year = 1825
44
44
  subdivisions = (
45
- "B", # El Beni
46
- "C", # Cochabamba
47
- "H", # Chuquisaca
48
- "L", # La Paz
49
- "N", # Pando
50
- "O", # Oruro
51
- "P", # Potosí
52
- "S", # Santa Cruz
53
- "T", # Tarija
45
+ "B", # El Beni.
46
+ "C", # Cochabamba.
47
+ "H", # Chuquisaca.
48
+ "L", # La Paz.
49
+ "N", # Pando.
50
+ "O", # Oruro.
51
+ "P", # Potosí.
52
+ "S", # Santa Cruz.
53
+ "T", # Tarija.
54
54
  )
55
- start_year = 1825
55
+ subdivisions_aliases = {
56
+ "El Beni": "B",
57
+ "Cochabamba": "C",
58
+ "Chuquisaca": "H",
59
+ "La Paz": "L",
60
+ "Pando": "N",
61
+ "Oruro": "O",
62
+ "Potosí": "P",
63
+ "Santa Cruz": "S",
64
+ "Tarija": "T",
65
+ }
66
+ supported_languages = ("en_US", "es", "uk")
56
67
 
57
68
  def __init__(self, *args, **kwargs):
58
69
  ChristianHolidays.__init__(self)
@@ -4,7 +4,7 @@
4
4
  # specific sets of holidays on the fly. It aims to make determining whether a
5
5
  # specific date is a holiday as fast and flexible as possible.
6
6
  #
7
- # Authors: Vacanza Team and individual contributors (see AUTHORS.md file)
7
+ # Authors: Vacanza Team and individual contributors (see CONTRIBUTORS file)
8
8
  # dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
9
9
  # ryanss <ryanssdev@icloud.com> (c) 2014-2017
10
10
  # Website: https://github.com/vacanza/holidays
@@ -58,13 +58,12 @@ class BosniaAndHerzegovina(
58
58
 
59
59
  country = "BA"
60
60
  default_language = "bs"
61
- supported_languages = ("bs", "en_US", "sr", "uk")
62
61
  # %s (observed).
63
62
  observed_label = tr("%s (preneseno)")
64
63
  subdivisions = (
65
- "BIH", # Federacija Bosne i Hercegovine
66
- "BRC", # Brčko distrikt
67
- "SRP", # Republika Srpska
64
+ "BIH", # Federacija Bosne i Hercegovine.
65
+ "BRC", # Brčko distrikt.
66
+ "SRP", # Republika Srpska.
68
67
  )
69
68
  subdivisions_aliases = {
70
69
  "Federacija Bosne i Hercegovine": "BIH",
@@ -74,6 +73,7 @@ class BosniaAndHerzegovina(
74
73
  "Republika Srpska": "SRP",
75
74
  "RS": "SRP",
76
75
  }
76
+ supported_languages = ("bs", "en_US", "sr", "uk")
77
77
 
78
78
  def __init__(self, islamic_show_estimated: bool = True, *args, **kwargs):
79
79
  """
@@ -4,7 +4,7 @@
4
4
  # specific sets of holidays on the fly. It aims to make determining whether a
5
5
  # specific date is a holiday as fast and flexible as possible.
6
6
  #
7
- # Authors: Vacanza Team and individual contributors (see AUTHORS.md file)
7
+ # Authors: Vacanza Team and individual contributors (see CONTRIBUTORS file)
8
8
  # dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
9
9
  # ryanss <ryanssdev@icloud.com> (c) 2014-2017
10
10
  # Website: https://github.com/vacanza/holidays
@@ -4,7 +4,7 @@
4
4
  # specific sets of holidays on the fly. It aims to make determining whether a
5
5
  # specific date is a holiday as fast and flexible as possible.
6
6
  #
7
- # Authors: Vacanza Team and individual contributors (see AUTHORS.md file)
7
+ # Authors: Vacanza Team and individual contributors (see CONTRIBUTORS file)
8
8
  # dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
9
9
  # ryanss <ryanssdev@icloud.com> (c) 2014-2017
10
10
  # Website: https://github.com/vacanza/holidays
@@ -32,6 +32,8 @@ class Brazil(ObservedHolidayBase, ChristianHolidays, InternationalHolidays):
32
32
 
33
33
  country = "BR"
34
34
  default_language = "pt_BR"
35
+ # Decreto n. 155-B, de 14.01.1890
36
+ start_year = 1890
35
37
  subdivisions = (
36
38
  "AC",
37
39
  "AL",
@@ -90,11 +92,8 @@ class Brazil(ObservedHolidayBase, ChristianHolidays, InternationalHolidays):
90
92
  "São Paulo": "SP",
91
93
  "Tocantins": "TO",
92
94
  }
93
-
94
95
  supported_categories = (OPTIONAL, PUBLIC)
95
96
  supported_languages = ("en_US", "pt_BR", "uk")
96
- # Decreto n. 155-B, de 14.01.1890
97
- start_year = 1890
98
97
 
99
98
  def __init__(self, *args, **kwargs) -> None:
100
99
  ChristianHolidays.__init__(self)
@@ -4,7 +4,7 @@
4
4
  # specific sets of holidays on the fly. It aims to make determining whether a
5
5
  # specific date is a holiday as fast and flexible as possible.
6
6
  #
7
- # Authors: Vacanza Team and individual contributors (see AUTHORS.md file)
7
+ # Authors: Vacanza Team and individual contributors (see CONTRIBUTORS file)
8
8
  # dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
9
9
  # ryanss <ryanssdev@icloud.com> (c) 2014-2017
10
10
  # Website: https://github.com/vacanza/holidays
@@ -4,7 +4,7 @@
4
4
  # specific sets of holidays on the fly. It aims to make determining whether a
5
5
  # specific date is a holiday as fast and flexible as possible.
6
6
  #
7
- # Authors: Vacanza Team and individual contributors (see AUTHORS.md file)
7
+ # Authors: Vacanza Team and individual contributors (see CONTRIBUTORS file)
8
8
  # dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
9
9
  # ryanss <ryanssdev@icloud.com> (c) 2014-2017
10
10
  # Website: https://github.com/vacanza/holidays
@@ -4,7 +4,7 @@
4
4
  # specific sets of holidays on the fly. It aims to make determining whether a
5
5
  # specific date is a holiday as fast and flexible as possible.
6
6
  #
7
- # Authors: Vacanza Team and individual contributors (see AUTHORS.md file)
7
+ # Authors: Vacanza Team and individual contributors (see CONTRIBUTORS file)
8
8
  # dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
9
9
  # ryanss <ryanssdev@icloud.com> (c) 2014-2017
10
10
  # Website: https://github.com/vacanza/holidays
@@ -4,7 +4,7 @@
4
4
  # specific sets of holidays on the fly. It aims to make determining whether a
5
5
  # specific date is a holiday as fast and flexible as possible.
6
6
  #
7
- # Authors: Vacanza Team and individual contributors (see AUTHORS.md file)
7
+ # Authors: Vacanza Team and individual contributors (see CONTRIBUTORS file)
8
8
  # dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
9
9
  # ryanss <ryanssdev@icloud.com> (c) 2014-2017
10
10
  # Website: https://github.com/vacanza/holidays
@@ -4,7 +4,7 @@
4
4
  # specific sets of holidays on the fly. It aims to make determining whether a
5
5
  # specific date is a holiday as fast and flexible as possible.
6
6
  #
7
- # Authors: Vacanza Team and individual contributors (see AUTHORS.md file)
7
+ # Authors: Vacanza Team and individual contributors (see CONTRIBUTORS file)
8
8
  # dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
9
9
  # ryanss <ryanssdev@icloud.com> (c) 2014-2017
10
10
  # Website: https://github.com/vacanza/holidays
@@ -71,7 +71,7 @@ class Cambodia(HolidayBase, InternationalHolidays, StaticHolidays, ThaiCalendarH
71
71
  # ទិវាអន្តរជាតិនារី
72
72
  # Status: In-Use.
73
73
 
74
- # International Women's Rights Day
74
+ # International Women's Rights Day.
75
75
  self._add_womens_day(tr("ទិវាអន្តរជាតិនារី"))
76
76
 
77
77
  # ពិធីបុណ្យចូលឆ្នាំថ្មីប្រពៃណីជាតិ
@@ -80,7 +80,7 @@ class Cambodia(HolidayBase, InternationalHolidays, StaticHolidays, ThaiCalendarH
80
80
  # for years 2001-2050.
81
81
 
82
82
  if self._year != 2020:
83
- # Khmer New Year's Day
83
+ # Khmer New Year's Day.
84
84
  sangkranta = tr("ពិធីបុណ្យចូលឆ្នាំថ្មីប្រពៃណីជាតិ")
85
85
  sangkranta_years_apr_14 = {
86
86
  2017,
@@ -106,7 +106,7 @@ class Cambodia(HolidayBase, InternationalHolidays, StaticHolidays, ThaiCalendarH
106
106
  # ទិវាពលកម្មអន្តរជាតិ
107
107
  # Status: In-Use.
108
108
 
109
- # International Labor Day
109
+ # International Labor Day.
110
110
  self._add_labor_day(tr("ទិវាពលកម្មអន្តរជាតិ"))
111
111
 
112
112
  # ព្រះរាជពិធីបុណ្យចម្រើនព្រះជន្ម ព្រះករុណា ព្រះបាទសម្តេចព្រះបរមនាថ នរោត្តម សីហមុនី
@@ -116,7 +116,7 @@ class Cambodia(HolidayBase, InternationalHolidays, StaticHolidays, ThaiCalendarH
116
116
  if self._year >= 2005:
117
117
  king_sihamoni_bday = tr(
118
118
  # Birthday of His Majesty Preah Bat Samdech Preah Boromneath
119
- # NORODOM SIHAMONI, King of Cambodia
119
+ # NORODOM SIHAMONI, King of Cambodia.
120
120
  "ព្រះរាជពិធីបុណ្យចម្រើនព្រះជន្ម ព្រះករុណា ព្រះបាទសម្តេចព្រះបរមនាថ នរោត្តម សីហមុនី"
121
121
  )
122
122
  self._add_holiday_may_14(king_sihamoni_bday)
@@ -132,7 +132,7 @@ class Cambodia(HolidayBase, InternationalHolidays, StaticHolidays, ThaiCalendarH
132
132
  # its name changed to present one in 2001.
133
133
 
134
134
  if 2018 <= self._year <= 2019:
135
- # National Day of Remembrance
135
+ # National Day of Remembrance.
136
136
  self._add_holiday_may_20(tr("ទិវាជាតិនៃការចងចាំ"))
137
137
 
138
138
  # ទិវាកុមារអន្តរជាតិ
@@ -140,7 +140,7 @@ class Cambodia(HolidayBase, InternationalHolidays, StaticHolidays, ThaiCalendarH
140
140
  # Assumed to start in 1993, defunct from 2020 onwards.
141
141
 
142
142
  if self._year <= 2019:
143
- # International Children's Day
143
+ # International Children's Day.
144
144
  self._add_childrens_day(tr("ទិវាកុមារអន្តរជាតិ"))
145
145
 
146
146
  # ព្រះរាជពិធីបុណ្យចម្រើនព្រះជន្ម សម្តេចព្រះមហាក្សត្រី ព្រះវររាជមាតា នរោត្តម មុនិនាថ សីហនុ
@@ -149,7 +149,7 @@ class Cambodia(HolidayBase, InternationalHolidays, StaticHolidays, ThaiCalendarH
149
149
 
150
150
  if self._year >= 1994:
151
151
  self._add_holiday_jun_18(
152
- # Birthday of Her Majesty the Queen-Mother NORODOM MONINEATH SIHANOUK of Cambodia
152
+ # Birthday of Her Majesty the Queen-Mother NORODOM MONINEATH SIHANOUK of Cambodia.
153
153
  tr("ព្រះរាជពិធីបុណ្យចម្រើនព្រះជន្ម សម្តេចព្រះមហាក្សត្រី ព្រះវររាជមាតា នរោត្តម មុនិនាថ សីហនុ")
154
154
  )
155
155
 
@@ -157,7 +157,7 @@ class Cambodia(HolidayBase, InternationalHolidays, StaticHolidays, ThaiCalendarH
157
157
  # Status: In-Use.
158
158
  # Starts in 1993
159
159
 
160
- # Constitution Day
160
+ # Constitution Day.
161
161
  self._add_holiday_sep_24(tr("ទិវាប្រកាសរដ្ឋធម្មនុញ្ញ"))
162
162
 
163
163
  # ទិវាប្រារព្ឋពិធីគោរពព្រះវិញ្ញាណក្ខន្ឋ ព្រះករុណា ព្រះបាទសម្តេចព្រះ នរោត្តម សីហនុ
@@ -167,7 +167,7 @@ class Cambodia(HolidayBase, InternationalHolidays, StaticHolidays, ThaiCalendarH
167
167
 
168
168
  if self._year >= 2012:
169
169
  self._add_holiday_oct_15(
170
- # Mourning Day of the Late King-Father NORODOM SIHANOUK of Cambodia
170
+ # Mourning Day of the Late King-Father NORODOM SIHANOUK of Cambodia.
171
171
  tr(
172
172
  "ទិវាប្រារព្ឋពិធីគោរពព្រះវិញ្ញាណក្ខន្ឋ ព្រះករុណា ព្រះបាទសម្តេចព្រះ នរោត្តម "
173
173
  "សីហនុ ព្រះមហាវីរក្សត្រ ព្រះវររាជបិតាឯករាជ្យ បូរណភាពទឹកដី និងឯកភាពជាតិខ្មែរ "
@@ -180,7 +180,7 @@ class Cambodia(HolidayBase, InternationalHolidays, StaticHolidays, ThaiCalendarH
180
180
  # Assumed to start in 1993, defunct from 2020 onwards.
181
181
 
182
182
  if self._year <= 2019:
183
- # Paris Peace Agreement's Day
183
+ # Paris Peace Agreement's Day.
184
184
  self._add_holiday_oct_23(tr("ទិវារំលឹកសន្ធិសញ្ញាសន្តិភាពទីក្រុងប៉ារីស"))
185
185
 
186
186
  # ព្រះរាជពិធីគ្រងព្រះបរមរាជសម្បត្តិ របស់ ព្រះករុណា
@@ -192,7 +192,7 @@ class Cambodia(HolidayBase, InternationalHolidays, StaticHolidays, ThaiCalendarH
192
192
  if self._year >= 2004:
193
193
  self._add_holiday_oct_29(
194
194
  # Coronation Day of His Majesty Preah Bat Samdech Preah
195
- # Boromneath NORODOM SIHAMONI, King of Cambodia
195
+ # Boromneath NORODOM SIHAMONI, King of Cambodia.
196
196
  tr(
197
197
  "ព្រះរាជពិធីគ្រងព្រះបរមរាជសម្បត្តិ របស់ ព្រះករុណា "
198
198
  "ព្រះបាទសម្តេចព្រះបរមនាថ នរោត្តម សីហមុនី "
@@ -204,7 +204,7 @@ class Cambodia(HolidayBase, InternationalHolidays, StaticHolidays, ThaiCalendarH
204
204
  # Status: In-Use.
205
205
  # Starts in 1953
206
206
 
207
- # National Independence Day
207
+ # National Independence Day.
208
208
  self._add_holiday_nov_9(tr("ពិធីបុណ្យឯករាជ្យជាតិ"))
209
209
 
210
210
  # ទិវាសិទ្ធិមនុស្សអន្តរជាតិ
@@ -212,7 +212,7 @@ class Cambodia(HolidayBase, InternationalHolidays, StaticHolidays, ThaiCalendarH
212
212
  # Assumed to start in 1993, defunct from 2020 onwards.
213
213
 
214
214
  if self._year <= 2019:
215
- # International Human Rights Day
215
+ # International Human Rights Day.
216
216
  self._add_holiday_dec_10(tr("ទិវាសិទ្ធិមនុស្សអន្តរជាតិ"))
217
217
 
218
218
  # Cambodian Lunar Calendar Holidays
@@ -225,7 +225,7 @@ class Cambodia(HolidayBase, InternationalHolidays, StaticHolidays, ThaiCalendarH
225
225
  # Defunct from 2020 onwards.
226
226
 
227
227
  if self._year <= 2019:
228
- # Meak Bochea Day
228
+ # Meak Bochea Day.
229
229
  self._add_makha_bucha(tr("ពិធីបុណ្យមាឃបូជា"))
230
230
 
231
231
  # ពិធីបុណ្យវិសាខបូជា
@@ -234,7 +234,7 @@ class Cambodia(HolidayBase, InternationalHolidays, StaticHolidays, ThaiCalendarH
234
234
  # This utilizes Thai calendar as a base, though are calculated to always happen
235
235
  # in the Traditional Visakhamas month (May).
236
236
 
237
- # Visaka Bochea Day
237
+ # Visaka Bochea Day.
238
238
  self._add_visakha_bucha(tr("ពិធីបុណ្យវិសាខបូជា"))
239
239
 
240
240
  # ព្រះរាជពិធីច្រត់ព្រះនង្គ័ល
@@ -242,7 +242,7 @@ class Cambodia(HolidayBase, InternationalHolidays, StaticHolidays, ThaiCalendarH
242
242
  # 4th Waning Day of Month 6.
243
243
  # Unlike Thai ones, Cambodian Royal Ploughing Ceremony is always fixed.
244
244
 
245
- # Royal Ploughing Ceremony
245
+ # Royal Ploughing Ceremony.
246
246
  self._add_preah_neangkoal(tr("ព្រះរាជពិធីច្រត់ព្រះនង្គ័ល"))
247
247
 
248
248
  # ពិធីបុណ្យភ្ផុំបិណ្ឌ
@@ -250,7 +250,7 @@ class Cambodia(HolidayBase, InternationalHolidays, StaticHolidays, ThaiCalendarH
250
250
  # 14th Waning Day of Month 10 - 1st Waxing Day of Month 11.
251
251
  # The 3rd day is added as a public holiday from 2017 onwards.
252
252
 
253
- # Pchum Ben Day
253
+ # Pchum Ben Day.
254
254
  pchum_ben = tr("ពិធីបុណ្យភ្ផុំបិណ្ឌ")
255
255
  pchum_ben_date = self._add_pchum_ben(pchum_ben)
256
256
  self._add_holiday(pchum_ben, _timedelta(pchum_ben_date, -1))
@@ -261,7 +261,7 @@ class Cambodia(HolidayBase, InternationalHolidays, StaticHolidays, ThaiCalendarH
261
261
  # Status: In-Use.
262
262
  # 14th Waxing Day of Month 12 - 1st Waning Day of Month 12.
263
263
 
264
- # Water Festival
264
+ # Water Festival.
265
265
  bon_om_touk = tr("ព្រះរាជពិធីបុណ្យអុំទូក បណ្តែតប្រទីប និងសំពះព្រះខែអកអំបុក")
266
266
  bon_om_touk_date = self._add_loy_krathong(bon_om_touk)
267
267
  self._add_holiday(bon_om_touk, _timedelta(bon_om_touk_date, -1))
@@ -288,13 +288,13 @@ class KHM(Cambodia):
288
288
 
289
289
  class CambodiaStaticHolidays:
290
290
  sangkranta_in_lieu_covid = tr(
291
- # Khmer New Year's Replacement Holiday
291
+ # Khmer New Year's Replacement Holiday.
292
292
  "ថ្ងៃឈប់សម្រាកសងជំនួសឲ្យពិធីបុណ្យចូលឆ្នាំថ្មីប្រពៃណីជាតិ"
293
293
  )
294
- # Special Public Holiday
294
+ # Special Public Holiday.
295
295
  special_in_lieu_holidays = tr("ថ្ងៃឈប់សម្រាកសងជំនួស")
296
296
 
297
- # Khmer New Year's Day
297
+ # Khmer New Year's Day.
298
298
  sangkranta = tr("ពិធីបុណ្យចូលឆ្នាំថ្មីប្រពៃណីជាតិ")
299
299
 
300
300
  special_public_holidays = {
@@ -4,7 +4,7 @@
4
4
  # specific sets of holidays on the fly. It aims to make determining whether a
5
5
  # specific date is a holiday as fast and flexible as possible.
6
6
  #
7
- # Authors: Vacanza Team and individual contributors (see AUTHORS.md file)
7
+ # Authors: Vacanza Team and individual contributors (see CONTRIBUTORS file)
8
8
  # dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
9
9
  # ryanss <ryanssdev@icloud.com> (c) 2014-2017
10
10
  # Website: https://github.com/vacanza/holidays
@@ -4,7 +4,7 @@
4
4
  # specific sets of holidays on the fly. It aims to make determining whether a
5
5
  # specific date is a holiday as fast and flexible as possible.
6
6
  #
7
- # Authors: Vacanza Team and individual contributors (see AUTHORS.md file)
7
+ # Authors: Vacanza Team and individual contributors (see CONTRIBUTORS file)
8
8
  # dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
9
9
  # ryanss <ryanssdev@icloud.com> (c) 2014-2017
10
10
  # Website: https://github.com/vacanza/holidays
@@ -41,30 +41,56 @@ class Canada(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stat
41
41
  * <https://www.gov.nu.ca/en/print/pdf/node/52266>
42
42
  * <https://www.officeholidays.com/countries/canada/>
43
43
  * <https://www.timeanddate.com/holidays/canada/>
44
+ * <https://web.archive.org/web/20250122122256/https://www.warmuseum.ca/firstworldwar/history/after-the-war/remembrance/remembrance-day/>
45
+ * <https://web.archive.org/web/20250428153936/https://www.thecanadianencyclopedia.ca/en/article/thanksgiving-day>
46
+ * <https://web.archive.org/web/20250428154427/https://recherche-collection-search.bac-lac.gc.ca/eng/home/record?idnumber=9326&app=diawlmking&ecopy=80003QJW>
47
+ * <https://web.archive.org/web/20240915001506/https://www.britannica.com/topic/Victoria-Day>
44
48
  """
45
49
 
46
50
  country = "CA"
47
51
  default_language = "en_CA"
48
52
  # %s (observed).
49
53
  observed_label = tr("%s (observed)")
50
- supported_categories = (GOVERNMENT, OPTIONAL, PUBLIC)
54
+ start_year = 1867
51
55
  subdivisions = (
52
- "AB",
53
- "BC",
54
- "MB",
55
- "NB",
56
- "NL",
57
- "NS",
58
- "NT",
59
- "NU",
60
- "ON",
61
- "PE",
62
- "QC",
63
- "SK",
64
- "YT",
56
+ "AB", # Alberta.
57
+ "BC", # British Columbia (Colombie-Britannique).
58
+ "MB", # Manitoba.
59
+ "NB", # New Brunswick (Nouveau-Brunswick).
60
+ "NL", # Newfoundland and Labrador (Terre-Neuve-et-Labrador).
61
+ "NS", # Nova Scotia (Nouvelle-Écosse).
62
+ "NT", # Northwest Territories (Territoires du Nord-Ouest).
63
+ "NU", # Nunavut.
64
+ "ON", # Ontario.
65
+ "PE", # Prince Edward Island (Île-du-Prince-Édouard).
66
+ "QC", # Quebec (Québec).
67
+ "SK", # Saskatchewan.
68
+ "YT", # Yukon.
65
69
  )
70
+ subdivisions_aliases = {
71
+ "Alberta": "AB",
72
+ "British Columbia": "BC",
73
+ "Colombie-Britannique": "BC",
74
+ "Manitoba": "MB",
75
+ "New Brunswick": "NB",
76
+ "Nouveau-Brunswick": "NB",
77
+ "Newfoundland and Labrador": "NL",
78
+ "Terre-Neuve-et-Labrador": "NL",
79
+ "Nova Scotia": "NS",
80
+ "Nouvelle-Écosse": "NS",
81
+ "Northwest Territories": "NT",
82
+ "Territoires du Nord-Ouest": "NT",
83
+ "Nunavut": "NU",
84
+ "Ontario": "ON",
85
+ "Prince Edward Island": "PE",
86
+ "Île-du-Prince-Édouard": "PE",
87
+ "Quebec": "QC",
88
+ "Québec": "QC",
89
+ "Saskatchewan": "SK",
90
+ "Yukon": "YT",
91
+ }
92
+ supported_categories = (GOVERNMENT, OPTIONAL, PUBLIC)
66
93
  supported_languages = ("ar", "en_CA", "en_US", "fr", "th")
67
- start_year = 1867
68
94
 
69
95
  def __init__(self, *args, **kwargs):
70
96
  ChristianHolidays.__init__(self)
@@ -111,9 +137,7 @@ class Canada(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stat
111
137
 
112
138
  self._add_statutory_holidays()
113
139
 
114
- if self._year >= 1953:
115
- # Victoria Day.
116
- self._add_holiday_1st_mon_before_may_24(tr("Victoria Day"))
140
+ self._add_victoria_day()
117
141
 
118
142
  if self._year >= 1879:
119
143
  self._add_observed(self._canada_day)
@@ -132,42 +156,64 @@ class Canada(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stat
132
156
 
133
157
  self._add_observed(self._christmas_day, rule=SAT_SUN_TO_NEXT_MON_TUE)
134
158
 
135
- # Boxing Day.
136
159
  self._add_observed(
137
- self._add_christmas_day_two(tr("Boxing Day")), rule=SAT_SUN_TO_NEXT_MON_TUE
160
+ # Boxing Day.
161
+ self._add_christmas_day_two(tr("Boxing Day")),
162
+ rule=SAT_SUN_TO_NEXT_MON_TUE,
138
163
  )
139
164
 
140
165
  def _populate_optional_holidays(self):
141
- # Christmas Day.
142
166
  self._add_observed(
143
- self._add_christmas_day(tr("Christmas Day")), rule=SAT_SUN_TO_NEXT_MON_TUE
167
+ # Christmas Day.
168
+ self._add_christmas_day(tr("Christmas Day")),
169
+ rule=SAT_SUN_TO_NEXT_MON_TUE,
144
170
  )
145
171
 
146
- # Boxing Day.
147
172
  self._add_observed(
148
- self._add_christmas_day_two(tr("Boxing Day")), rule=SAT_SUN_TO_NEXT_MON_TUE
173
+ # Boxing Day.
174
+ self._add_christmas_day_two(tr("Boxing Day")),
175
+ rule=SAT_SUN_TO_NEXT_MON_TUE,
149
176
  )
150
177
 
151
- def _add_thanksgiving_day(self):
178
+ def _add_thanksgiving_day(self) -> None:
179
+ """Adds Thanksgiving Day / Armistice Day.
180
+
181
+ In 1921, Thanksgiving Day was moved to "Armistice Day" (1st Monday in the week of Nov 11).
182
+ "Remembrance Day" and "Thanksgiving Day" split again in 1931, with Thanksgiving usually on
183
+ the 2nd Monday of October — except in 1935, when it was delayed 10 days due to a General
184
+ Election. It was finally fixed to the 2nd Monday of October permanently in 1957.
185
+ """
152
186
  if self._year >= 1931:
153
187
  # Thanksgiving Day.
154
188
  name = tr("Thanksgiving Day")
155
- # in 1935, Canadian Thanksgiving was moved due to the General
156
- # Election falling on the second Monday of October
157
- # http://tiny.cc/can_thkgvg
158
189
  if self._year == 1935:
159
- self._add_holiday_oct_25(name)
190
+ self._add_holiday_oct_24(name)
160
191
  else:
161
192
  self._add_holiday_2nd_mon_of_oct(name)
193
+ elif self._year >= 1921:
194
+ # Armistice Day.
195
+ self._add_holiday_1st_mon_before_nov_12(tr("Armistice Day"))
196
+
197
+ def _add_victoria_day(self) -> None:
198
+ """Adds Victoria Day.
199
+
200
+ After Queen Victoria's death in 1901, an act of the Canadian Parliament established
201
+ Victoria Day as a legal holiday, to be celebrated on May 24 (or on May 25 when
202
+ May 24 fell on a Sunday). This was later moved to the Monday preceding May 24 in 1952.
203
+ """
204
+ # Victoria Day.
205
+ name = tr("Victoria Day")
206
+ if self._year >= 1953:
207
+ self._add_holiday_1st_mon_before_may_24(name)
208
+ elif self._year >= 1901:
209
+ self._add_observed(self._add_holiday_may_24(name), rule=SUN_TO_NEXT_MON)
162
210
 
163
211
  def _populate_subdiv_ab_public_holidays(self):
164
212
  if self._year >= 1990:
165
213
  # Family Day.
166
214
  self._add_holiday_3rd_mon_of_feb(tr("Family Day"))
167
215
 
168
- if self._year >= 1953:
169
- # Victoria Day.
170
- self._add_holiday_1st_mon_before_may_24(tr("Victoria Day"))
216
+ self._add_victoria_day()
171
217
 
172
218
  if self._year >= 1879:
173
219
  self._add_observed(self._canada_day, rule=SUN_TO_NEXT_MON)
@@ -196,15 +242,14 @@ class Canada(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stat
196
242
 
197
243
  def _populate_subdiv_bc_public_holidays(self):
198
244
  if self._year >= 2013:
245
+ # Family Day.
199
246
  name = tr("Family Day")
200
247
  if self._year >= 2019:
201
248
  self._add_holiday_3rd_mon_of_feb(name)
202
249
  else:
203
250
  self._add_holiday_2nd_mon_of_feb(name)
204
251
 
205
- if self._year >= 1953:
206
- # Victoria Day.
207
- self._add_holiday_1st_mon_before_may_24(tr("Victoria Day"))
252
+ self._add_victoria_day()
208
253
 
209
254
  if self._year >= 1879:
210
255
  self._add_observed(self._canada_day, rule=SUN_TO_NEXT_MON)
@@ -229,9 +274,7 @@ class Canada(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stat
229
274
  # Louis Riel Day.
230
275
  self._add_holiday_3rd_mon_of_feb(tr("Louis Riel Day"))
231
276
 
232
- if self._year >= 1953:
233
- # Victoria Day.
234
- self._add_holiday_1st_mon_before_may_24(tr("Victoria Day"))
277
+ self._add_victoria_day()
235
278
 
236
279
  self._add_thanksgiving_day()
237
280
 
@@ -264,9 +307,7 @@ class Canada(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stat
264
307
  self._add_remembrance_day(tr("Remembrance Day"))
265
308
 
266
309
  def _populate_subdiv_nb_optional_holidays(self):
267
- if self._year >= 1953:
268
- # Victoria Day.
269
- self._add_holiday_1st_mon_before_may_24(tr("Victoria Day"))
310
+ self._add_victoria_day()
270
311
 
271
312
  self._add_thanksgiving_day()
272
313
 
@@ -327,9 +368,7 @@ class Canada(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stat
327
368
  self._add_holiday_1st_mon_of_aug(tr("Natal Day"))
328
369
 
329
370
  def _populate_subdiv_nt_public_holidays(self):
330
- if self._year >= 1953:
331
- # Victoria Day.
332
- self._add_holiday_1st_mon_before_may_24(tr("Victoria Day"))
371
+ self._add_victoria_day()
333
372
 
334
373
  if self._year >= 1996:
335
374
  # National Aboriginal Day.
@@ -350,9 +389,7 @@ class Canada(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stat
350
389
  self._add_remembrance_day(tr("Remembrance Day"))
351
390
 
352
391
  def _populate_subdiv_nu_public_holidays(self):
353
- if self._year >= 1953:
354
- # Victoria Day.
355
- self._add_holiday_1st_mon_before_may_24(tr("Victoria Day"))
392
+ self._add_victoria_day()
356
393
 
357
394
  if self._year >= 2020:
358
395
  # Nunavut Day.
@@ -374,6 +411,7 @@ class Canada(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stat
374
411
 
375
412
  def _populate_subdiv_nu_optional_holidays(self):
376
413
  if 2000 <= self._year <= 2019:
414
+ # Nunavut Day.
377
415
  name = tr("Nunavut Day")
378
416
  if self._year == 2000:
379
417
  self._add_holiday_apr_1(name)
@@ -385,12 +423,11 @@ class Canada(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stat
385
423
  # Family Day.
386
424
  self._add_holiday_3rd_mon_of_feb(tr("Family Day"))
387
425
 
388
- if self._year >= 1953:
389
- # Victoria Day.
390
- self._add_holiday_1st_mon_before_may_24(tr("Victoria Day"))
426
+ self._add_victoria_day()
391
427
 
392
428
  self._add_thanksgiving_day()
393
429
 
430
+ # Boxing Day.
394
431
  self._add_observed(self._add_christmas_day_two(tr("Boxing Day")), rule=SUN_TO_NEXT_TUE)
395
432
 
396
433
  def _populate_subdiv_on_optional_holidays(self):
@@ -444,9 +481,7 @@ class Canada(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stat
444
481
  # Family Day.
445
482
  self._add_holiday_3rd_mon_of_feb(tr("Family Day"))
446
483
 
447
- if self._year >= 1953:
448
- # Victoria Day.
449
- self._add_holiday_1st_mon_before_may_24(tr("Victoria Day"))
484
+ self._add_victoria_day()
450
485
 
451
486
  if self._year >= 1879:
452
487
  self._add_observed(self._canada_day)
@@ -463,9 +498,7 @@ class Canada(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stat
463
498
  self._add_observed(self._add_remembrance_day(tr("Remembrance Day")))
464
499
 
465
500
  def _populate_subdiv_yt_public_holidays(self):
466
- if self._year >= 1953:
467
- # Victoria Day.
468
- self._add_holiday_1st_mon_before_may_24(tr("Victoria Day"))
501
+ self._add_victoria_day()
469
502
 
470
503
  if self._year >= 2017:
471
504
  # National Aboriginal Day.
@@ -491,6 +524,7 @@ class Canada(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, Stat
491
524
  def _populate_subdiv_yt_optional_holidays(self):
492
525
  # Friday before the last Sunday in February
493
526
  if self._year >= 1976:
527
+ # Heritage Day.
494
528
  self._add_holiday_2_days_prior_last_sun_of_feb(tr("Heritage Day"))
495
529
 
496
530
 
@@ -4,7 +4,7 @@
4
4
  # specific sets of holidays on the fly. It aims to make determining whether a
5
5
  # specific date is a holiday as fast and flexible as possible.
6
6
  #
7
- # Authors: Vacanza Team and individual contributors (see AUTHORS.md file)
7
+ # Authors: Vacanza Team and individual contributors (see CONTRIBUTORS file)
8
8
  # dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
9
9
  # ryanss <ryanssdev@icloud.com> (c) 2014-2017
10
10
  # Website: https://github.com/vacanza/holidays