thunderbird / thunderbird-website

Build code for the websites on thunderbird.net and start.thunderbird.net
https://www.thunderbird.net
153 stars 76 forks source link

Us holiday calendar has Easter on the 4th April. #297

Open MadMattAu opened 2 years ago

MadMattAu commented 2 years ago

The subject says it all, the Easter date is way off. It was reported in support https://support.mozilla.org/en-US/questions/1374202 but on downloading and looking it is not missing, just on the wrong date. It is specified as the 4th April. The earliest date on which Easter can arrive. The other issue is it appears to mark the Friday, but Easter is based on a Sunday date.

Full moon Saturday 16th and Easter is Sunday 17th this year.

Sancus commented 2 years ago

I think I'm going to drop the crowdsourced calendars in favor of an automated approach using https://github.com/dr-prodigy/python-holidays or possibly https://calendarific.com/

They are just way too prone to going out of date or on errors and it's a very poor use of developer time to manually correct .ics files or review calendar PRs.

MadMattAu commented 2 years ago

I think I'm going to drop the crowdsourced calendars in favor of an automated approach using https://github.com/dr-prodigy/python-holidays or possibly https://calendarific.com/

They are just way too prone to going out of date or on errors and it's a very poor use of developer time to manually correct .ics files or review calendar PRs.

I agree, with dropping the crowdsourcing. No pushback from this quarter.

biicwlim commented 2 years ago

In the meantime, here's an update that adds in all of the Good Friday and Easter dates through 2031, if that's helpful to go ahead and publish. I just imported the current feed and fixed those two holidays.

Begin:VCALENDAR PRODID:-//Mozilla.org/NONSGML Mozilla Calendar V1.1//EN VERSION:2.0

Begin:VEVENT LAST-MODIFIED:20220629T162049Z DTSTAMP:20220629T162049Z UID:aba9927b-c9db-403f-8dc6-2af9a139d499 SUMMARY:Good Friday CATEGORIES:Holidays DTSTART;VALUE=DATE:20210402 DTEND;VALUE=DATE:20210403 DESCRIPTION:Good Friday CLASS:PUBLIC SEQUENCE:1 X-MOZ-GENERATION:1 END:VEVENT

Begin:VEVENT LAST-MODIFIED:20220629T162135Z DTSTAMP:20220629T162135Z UID:71fab33c-9496-4d22-b850-124b80baeff7 SUMMARY:Good Friday CATEGORIES:Holidays DTSTART;VALUE=DATE:20220415 DTEND;VALUE=DATE:20220416 DESCRIPTION:Good Friday CLASS:PUBLIC SEQUENCE:2 X-MOZ-GENERATION:2 END:VEVENT

Begin:VEVENT LAST-MODIFIED:20220629T162158Z DTSTAMP:20220629T162158Z UID:c1a38d3e-7f1d-4ec3-a24a-a60e5ed5fc7e SUMMARY:Good Friday CATEGORIES:Holidays DTSTART;VALUE=DATE:20230407 DTEND;VALUE=DATE:20230408 DESCRIPTION:Good Friday CLASS:PUBLIC SEQUENCE:2 X-MOZ-GENERATION:2 END:VEVENT

Begin:VEVENT LAST-MODIFIED:20220629T162219Z DTSTAMP:20220629T162219Z UID:39afbec2-d92e-4fef-9574-90da2c4735e3 SUMMARY:Good Friday CATEGORIES:Holidays DTSTART;VALUE=DATE:20240329 DTEND;VALUE=DATE:20240330 DESCRIPTION:Good Friday CLASS:PUBLIC SEQUENCE:2 X-MOZ-GENERATION:2 END:VEVENT

Begin:VEVENT LAST-MODIFIED:20220629T162240Z DTSTAMP:20220629T162240Z UID:b343ebc8-3535-4f7f-870a-ea697c6529ca SUMMARY:Good Friday CATEGORIES:Holidays DTSTART;VALUE=DATE:20250418 DTEND;VALUE=DATE:20250419 DESCRIPTION:Good Friday CLASS:PUBLIC SEQUENCE:2 X-MOZ-GENERATION:2 END:VEVENT

Begin:VEVENT LAST-MODIFIED:20220629T162258Z DTSTAMP:20220629T162258Z UID:266160381420208523 SUMMARY:Good Friday CATEGORIES:Holidays DTSTART;VALUE=DATE:20260403 DTEND;VALUE=DATE:20260404 DESCRIPTION:Good Friday CLASS:PUBLIC SEQUENCE:2 X-MOZ-GENERATION:2 END:VEVENT

Begin:VEVENT LAST-MODIFIED:20220629T162343Z DTSTAMP:20220629T162343Z UID:e7427040-559d-4fa8-9c1f-0c0a4198cd57 SUMMARY:Good Friday CATEGORIES:Holidays DTSTART;VALUE=DATE:20270326 DTEND;VALUE=DATE:20270327 DESCRIPTION:Good Friday CLASS:PUBLIC SEQUENCE:2 X-MOZ-GENERATION:2 END:VEVENT

Begin:VEVENT LAST-MODIFIED:20220629T162659Z DTSTAMP:20220629T162659Z UID:ce0029e5-1ccb-4ee9-bb9b-889f58a044a7 SUMMARY:Good Friday CATEGORIES:Holidays DTSTART;VALUE=DATE:20280414 DTEND;VALUE=DATE:20280415 DESCRIPTION:Good Friday CLASS:PUBLIC SEQUENCE:2 X-MOZ-GENERATION:2 END:VEVENT

Begin:VEVENT LAST-MODIFIED:20220629T162819Z DTSTAMP:20220629T162819Z UID:50dfc2b2-2009-4d7b-87b8-039db0b3ef76 SUMMARY:Good Friday CATEGORIES:Holidays DTSTART;VALUE=DATE:20290330 DTEND;VALUE=DATE:20290331 DESCRIPTION:Good Friday CLASS:PUBLIC SEQUENCE:2 X-MOZ-GENERATION:2 END:VEVENT

Begin:VEVENT LAST-MODIFIED:20220629T162923Z DTSTAMP:20220629T162923Z UID:f87828b8-d69b-4110-88b5-c5326a4a400f SUMMARY:Good Friday CATEGORIES:Holidays DTSTART;VALUE=DATE:20300419 DTEND;VALUE=DATE:20300420 DESCRIPTION:Good Friday CLASS:PUBLIC SEQUENCE:2 X-MOZ-GENERATION:2 END:VEVENT

Begin:VEVENT LAST-MODIFIED:20220629T163029Z DTSTAMP:20220629T163029Z UID:ec1f4479-31d1-4fdd-a572-ba6c601ec507 SUMMARY:Good Friday CATEGORIES:Holidays DTSTART;VALUE=DATE:20310411 DTEND;VALUE=DATE:20310412 DESCRIPTION:Good Friday CLASS:PUBLIC SEQUENCE:2 X-MOZ-GENERATION:2 END:VEVENT

Begin:VEVENT LAST-MODIFIED:20220629T163430Z DTSTAMP:20220629T163430Z UID:6ce220f5-ade5-41f7-b3b4-84e6300da8bb SUMMARY:Easter CATEGORIES:Holidays DTSTART;VALUE=DATE:20210404 DTEND;VALUE=DATE:20210405 DESCRIPTION:Easter CLASS:PUBLIC SEQUENCE:1 X-MOZ-GENERATION:1 END:VEVENT

Begin:VEVENT LAST-MODIFIED:20220629T163547Z DTSTAMP:20220629T163547Z UID:224d8fc6-12dc-40aa-806a-25a83dc9cf35 SUMMARY:Easter CATEGORIES:Holidays DTSTART;VALUE=DATE:20220417 DTEND;VALUE=DATE:20220418 DESCRIPTION:Easter CLASS:PUBLIC SEQUENCE:2 X-MOZ-GENERATION:2 END:VEVENT

Begin:VEVENT LAST-MODIFIED:20220629T163612Z DTSTAMP:20220629T163612Z UID:287874107485069382 SUMMARY:Easter CATEGORIES:Holidays DTSTART;VALUE=DATE:20230409 DTEND;VALUE=DATE:20230410 DESCRIPTION:Easter CLASS:PUBLIC SEQUENCE:2 X-MOZ-GENERATION:2 END:VEVENT

Begin:VEVENT LAST-MODIFIED:20220629T163637Z DTSTAMP:20220629T163637Z UID:5f41a695-d545-4e5f-b6cc-a512a03192de SUMMARY:Easter CATEGORIES:Holidays DTSTART;VALUE=DATE:20240331 DTEND;VALUE=DATE:20240401 DESCRIPTION:Easter CLASS:PUBLIC SEQUENCE:2 X-MOZ-GENERATION:2 END:VEVENT

Begin:VEVENT LAST-MODIFIED:20220629T163653Z DTSTAMP:20220629T163653Z UID:c222cceb-0bc6-45d3-8478-655b059032df SUMMARY:Easter CATEGORIES:Holidays DTSTART;VALUE=DATE:20250420 DTEND;VALUE=DATE:20250421 DESCRIPTION:Easter CLASS:PUBLIC SEQUENCE:2 X-MOZ-GENERATION:2 END:VEVENT

Begin:VEVENT LAST-MODIFIED:20220629T163712Z DTSTAMP:20220629T163712Z UID:419bbc71-5d31-4ae5-a91f-d5793213f409 SUMMARY:Easter CATEGORIES:Holidays DTSTART;VALUE=DATE:20260405 DTEND;VALUE=DATE:20260406 DESCRIPTION:Easter CLASS:PUBLIC SEQUENCE:2 X-MOZ-GENERATION:2 END:VEVENT

Begin:VEVENT LAST-MODIFIED:20220629T163732Z DTSTAMP:20220629T163732Z UID:e027fcca-7691-42e6-8bd0-7ace5237bfd2 SUMMARY:Easter CATEGORIES:Holidays DTSTART;VALUE=DATE:20270328 DTEND;VALUE=DATE:20270329 DESCRIPTION:Easter CLASS:PUBLIC SEQUENCE:2 X-MOZ-GENERATION:2 END:VEVENT

Begin:VEVENT LAST-MODIFIED:20220629T163752Z DTSTAMP:20220629T163752Z UID:74e3b82e-7452-43d8-b183-1523bd4f0259 SUMMARY:Easter CATEGORIES:Holidays DTSTART;VALUE=DATE:20280416 DTEND;VALUE=DATE:20280417 DESCRIPTION:Easter CLASS:PUBLIC SEQUENCE:2 X-MOZ-GENERATION:2 END:VEVENT

Begin:VEVENT LAST-MODIFIED:20220629T163825Z DTSTAMP:20220629T163825Z UID:120949ac-4e95-4fa3-9455-dbd7f346bb4d SUMMARY:Easter CATEGORIES:Holidays DTSTART;VALUE=DATE:20290401 DTEND;VALUE=DATE:20290402 DESCRIPTION:Easter CLASS:PUBLIC SEQUENCE:2 X-MOZ-GENERATION:2 END:VEVENT

Begin:VEVENT LAST-MODIFIED:20220629T163844Z DTSTAMP:20220629T163844Z UID:f5a45383-5653-48f8-aa96-a96ae3a5a1ee SUMMARY:Easter CATEGORIES:Holidays DTSTART;VALUE=DATE:20300421 DTEND;VALUE=DATE:20300422 DESCRIPTION:Easter CLASS:PUBLIC SEQUENCE:2 X-MOZ-GENERATION:2 END:VEVENT

Begin:VEVENT LAST-MODIFIED:20220629T163906Z DTSTAMP:20220629T163906Z UID:d98cfe19-084d-4b87-8a06-8a828bf88713 SUMMARY:Easter CATEGORIES:Holidays DTSTART;VALUE=DATE:20310413 DTEND;VALUE=DATE:20310414 DESCRIPTION:Easter CLASS:PUBLIC SEQUENCE:2 X-MOZ-GENERATION:2 END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:243379537850136179 SUMMARY:New Year's Day RRULE:FREQ=YEARLY;COUNT=10;BYMONTHDAY=1;BYMONTH=1 CATEGORIES:Holidays DTSTART;VALUE=DATE:20210101 DTEND;VALUE=DATE:20210101 CLASS:PUBLIC DESCRIPTION:New Years Day END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:271696855971409183 SUMMARY:ML King Day RRULE:FREQ=YEARLY;COUNT=10;BYDAY=3MO;BYMONTH=1 CATEGORIES:Holidays DTSTART;VALUE=DATE:20210118 DTEND;VALUE=DATE:20210118 CLASS:PUBLIC DESCRIPTION:ML King Day END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:253538028088281530 SUMMARY:Groundhog Day RRULE:FREQ=YEARLY;COUNT=10;BYMONTHDAY=2;BYMONTH=2 CATEGORIES:Holidays DTSTART;VALUE=DATE:20210202 DTEND;VALUE=DATE:20210202 CLASS:PUBLIC DESCRIPTION:Groundhog Day END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:235015755147109088 SUMMARY:Valentine's Day RRULE:FREQ=YEARLY;COUNT=10;BYMONTHDAY=14;BYMONTH=2 CATEGORIES:Holidays DTSTART;VALUE=DATE:20210214 DTEND;VALUE=DATE:20210214 CLASS:PUBLIC DESCRIPTION:Valentine's Day END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:224003802519217661 SUMMARY:President's Day RRULE:FREQ=YEARLY;COUNT=10;BYDAY=3MO;BYMONTH=2 CATEGORIES:Holidays DTSTART;VALUE=DATE:20210215 DTEND;VALUE=DATE:20210215 CLASS:PUBLIC DESCRIPTION:President's Day END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:286227407165727939 SUMMARY:Daylight Savings Time Begins today RRULE:FREQ=YEARLY;COUNT=10;BYDAY=2SU;BYMONTH=3 CATEGORIES:Holidays DTSTART;VALUE=DATE:20210314 DTEND;VALUE=DATE:20210314 CLASS:PUBLIC DESCRIPTION:Daylight Savings Time Begins today - set your clocks forward 1 hour today Begin:VALARM ACTION:DISPLAY TRIGGER;VALUE=DURATION:PT0S DESCRIPTION:Daylight Savings Time Begins today - set your clocks forward 1 hour today END:VALARM END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:222782492544571366 SUMMARY:St. Patrick's Day RRULE:FREQ=YEARLY;COUNT=10;BYMONTHDAY=17;BYMONTH=3 CATEGORIES:Holidays DTSTART;VALUE=DATE:20210317 DTEND;VALUE=DATE:20210317 CLASS:PUBLIC DESCRIPTION:St. Patrick's Day END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:218608764929121996 SUMMARY:US Tax Day RRULE:FREQ=YEARLY;COUNT=10;BYMONTHDAY=15;BYMONTH=4 CATEGORIES:Holidays DTSTART;VALUE=DATE:20210415 DTEND;VALUE=DATE:20210415 CLASS:PUBLIC DESCRIPTION:US Tax Day END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:271254752332424251 SUMMARY:Mother's Day RRULE:FREQ=YEARLY;COUNT=10;BYDAY=2SU;BYMONTH=5 CATEGORIES:Holidays DTSTART;VALUE=DATE:20210509 DTEND;VALUE=DATE:20210509 CLASS:PUBLIC DESCRIPTION:Mother's Day END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:287123388726072793 SUMMARY:Memorial Day RRULE:FREQ=YEARLY;COUNT=10;BYDAY=-1MO;BYMONTH=5 CATEGORIES:Holidays DTSTART;VALUE=DATE:20210531 DTEND;VALUE=DATE:20210531 CLASS:PUBLIC DESCRIPTION:Memorial Day END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:abe196a3-79fc-4852-bfad-a39d9efb15bc SUMMARY:Juneteenth RRULE:FREQ=YEARLY;COUNT=10;BYMONTHDAY=19;BYMONTH=6 CATEGORIES:Holidays DTSTART;VALUE=DATE:20210619 DTEND;VALUE=DATE:20210619 CLASS:PUBLIC DESCRIPTION:Juneteenth END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:284713224491452631 SUMMARY:Father's Day RRULE:FREQ=YEARLY;COUNT=10;BYDAY=3SU;BYMONTH=6 CATEGORIES:Holidays DTSTART;VALUE=DATE:20210620 DTEND;VALUE=DATE:20210620 CLASS:PUBLIC DESCRIPTION:Father's Day END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:250764245802028434 SUMMARY:Independence Day RRULE:FREQ=YEARLY;COUNT=10;BYMONTHDAY=4;BYMONTH=7 CATEGORIES:Holidays DTSTART;VALUE=DATE:20210704 DTEND;VALUE=DATE:20210704 CLASS:PUBLIC DESCRIPTION:Independence Day END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:219633323020872501 SUMMARY:Labor Day RRULE:FREQ=YEARLY;COUNT=10;BYDAY=1MO;BYMONTH=9 CATEGORIES:Holidays DTSTART;VALUE=DATE:20210906 DTEND;VALUE=DATE:20210906 CLASS:PUBLIC DESCRIPTION:Labor Day END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:226540905658092275 SUMMARY:Columbus Day RRULE:FREQ=YEARLY;COUNT=10;BYDAY=2MO;BYMONTH=10 CATEGORIES:Holidays DTSTART;VALUE=DATE:20211011 DTEND;VALUE=DATE:20211011 CLASS:PUBLIC DESCRIPTION:Columbus Day END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:269543526216555197 SUMMARY:Halloween RRULE:FREQ=YEARLY;COUNT=10;BYMONTHDAY=31;BYMONTH=10 CATEGORIES:Holidays DTSTART;VALUE=DATE:20211031 DTEND;VALUE=DATE:20211031 CLASS:PUBLIC DESCRIPTION:Halloween END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:261647186645341713 SUMMARY:Election Day RRULE:FREQ=YEARLY;COUNT=10;BYDAY=1TU;BYMONTH=11 CATEGORIES:Holidays DTSTART;VALUE=DATE:20211102 DTEND;VALUE=DATE:20211102 CLASS:PUBLIC DESCRIPTION:Election Day END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:275814952229709415 SUMMARY:Daylight Savings Time ends today RRULE:FREQ=YEARLY;COUNT=10;BYDAY=1SU;BYMONTH=11 CATEGORIES:Holidays DTSTART;VALUE=DATE:20211107 DTEND;VALUE=DATE:20211107 CLASS:PUBLIC DESCRIPTION:Daylight Savings Time ends today - set your clocks back 1 hour today Begin:VALARM ACTION:DISPLAY TRIGGER;VALUE=DURATION:PT0S DESCRIPTION:Daylight Savings Time ends today - set your clocks back 1 hour today END:VALARM END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:242099225750291748 SUMMARY:Veteran's Day RRULE:FREQ=YEARLY;COUNT=10;BYMONTHDAY=11;BYMONTH=11 CATEGORIES:Holidays DTSTART;VALUE=DATE:20211111 DTEND;VALUE=DATE:20211111 CLASS:PUBLIC DESCRIPTION:Veteran's Day END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:270036747170405007 SUMMARY:Thanksgiving Day RRULE:FREQ=YEARLY;COUNT=10;BYDAY=4TH;BYMONTH=11 CATEGORIES:Holidays DTSTART;VALUE=DATE:20211125 DTEND;VALUE=DATE:20211125 CLASS:PUBLIC DESCRIPTION:Thanksgiving Day END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:269153814971909741 SUMMARY:Black Friday - day after Thanksgiving RRULE:FREQ=YEARLY;COUNT=10;BYDAY=4FR;BYMONTH=11 CATEGORIES:Holidays DTSTART;VALUE=DATE:20211126 DTEND;VALUE=DATE:20211126 CLASS:PUBLIC DESCRIPTION:Black Friday - day after Thanksgiving END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:218447634230448016 SUMMARY:Christmas Eve RRULE:FREQ=YEARLY;COUNT=10;BYMONTHDAY=24;BYMONTH=12 CATEGORIES:Holidays DTSTART;VALUE=DATE:20211224 DTEND;VALUE=DATE:20211224 CLASS:PUBLIC DESCRIPTION:Christmas Eve END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:268257100556549014 SUMMARY:Christmas Day RRULE:FREQ=YEARLY;COUNT=10;BYMONTHDAY=25;BYMONTH=12 CATEGORIES:Holidays DTSTART;VALUE=DATE:20211225 DTEND;VALUE=DATE:20211225 CLASS:PUBLIC DESCRIPTION:Christmas Day END:VEVENT

Begin:VEVENT CREATED:20220629T155717Z LAST-MODIFIED:20220629T155717Z DTSTAMP:20220629T155717Z UID:258666554916006268 SUMMARY:New Year's Eve RRULE:FREQ=YEARLY;COUNT=10;BYMONTHDAY=31;BYMONTH=12 CATEGORIES:Holidays DTSTART;VALUE=DATE:20211231 DTEND;VALUE=DATE:20211231 CLASS:PUBLIC DESCRIPTION:New Year's Eve END:VEVENT

END:VCALENDAR

mathgirl25 commented 2 years ago

Same with Election Day. The calendar shows it as Tuesday, November 1, 2022. Election Day is actually Tuesday, November 8, 2022.