Skip to content

Split holiday calendars into public ([country]-public.py) and other ([country]-other.py) categories #3067

@davidhedlund

Description

@davidhedlund

Do not close this issue solely because the Swedish calendar was updated without splitting; at least one country calendar must be SPLIT into public ([country]-public.py) and other ([country]-other.py) first.

Is your feature request related to a problem? Please describe

The current calendar files combine legally mandated public holidays and de facto or cultural holidays. Public holidays are the ones required by law.

For example, in Sweden, the following are not public holidays because they are not listed in the Swedish Parliament legal document:
Förordning (1989:253) om allmänna helgdagar:

  • Jungfru Marie bebådelsedag
  • Midsommarafton
  • Nyårsafton
  • Julafton

People are CalDAV subscribing calendars from https://www.thunderbird.net/en-US/calendar/, for example SwedishHolidays.ics, and use them with calendar software. Thunderbird developers are evaluating the vacanza/holidays library to generate the SwedishHolidays.ics file, see:

However, the vacanza/holidays calendars are not split. Currently it is not possible to hide selected categories in these software:

So users must manually split ICS files, a time-consuming process that most will avoid.​

Describe the solution you'd like

Split the calendars into two files:

  • [country]-public.py: Contains only public holidays mandated by law.
  • [country]-other.py: Contains other culturally important or de facto holidays.

Example: Sweden

  1. Move "Jungfru Marie bebådelsedag", "Midsommarafton", "Nyårsafton", and "Julafton" from the current sweden.py to a new file called sweden-other.py
  2. Rename sweden.py to sweden-public.py with only the legally mandated public holidays remaining.

Describe alternatives you've considered

Currently using date-holidays, which implements this exact split:

References

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions