# SPDX-License-Identifier: MIT # Holiday file for Canada # Derived from the Python holidays project at # https://github.com/vacanza/holidays # # See important caveats in the README file in this directory. # # Note: This file consists only of the country-wide # holidays for Canada. # # For region-specific holidays, you need to include # one of the regional *.rem files in the directory # [$SysInclude]/holidays/ca/ OMIT 1 January MSG New Year's Day REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) REM 3 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) OMIT [easterdate($Uy)-2] MSG Good Friday REM Monday 18 May ADDOMIT SCANFROM -28 MSG Victoria Day OMIT 1 July MSG Canada Day REM 2 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 7, 1)) == 0] MSG Canada Day (observed) REM 3 July ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 7, 1)) == 6] MSG Canada Day (observed) REM First Monday in September ADDOMIT SCANFROM -28 MSG Labour Day OMIT 30 September MSG National Day for Truth and Reconciliation REM 1 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 9, 30)) == 0] MSG National Day for Truth and Reconciliation (observed) REM 2 October ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 9, 30)) == 6] MSG National Day for Truth and Reconciliation (observed) REM Second Monday in October ADDOMIT SCANFROM -28 MSG Thanksgiving Day OMIT 11 November MSG Remembrance Day REM 12 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 11)) == 0] MSG Remembrance Day (observed) REM 13 November ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 11, 11)) == 6] MSG Remembrance Day (observed) OMIT 25 December MSG Christmas Day OMIT 26 December MSG Boxing Day REM 26 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 1] MSG Boxing Day (observed) REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) REM 28 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed)