D29373: Taiwan: Hardcoding holidays based on the Lunar Calendar; Minor update to the holiday list

N. Higa noreply at phabricator.kde.org
Sun May 3 14:40:34 BST 2020


nhiga added a comment.


  > specified the start year of Peace Memorial Day 228和平紀念日
  
  Great! This is what I have missed in my patch.
  
  > The star * ones are specified using the "lunar new year date" minus/plus some days, hoping to make it easier to adapt to additional years in the future.
  
  I appreciate this new idea and I think it is worth discussing which way of dealing lunar calendar-based holidays is better.
  I consider my method a no-brainer because:
  
  - In many cases, Lunar calendar-based (public) holidays in Taiwan are actually the same as (or similar to) those in Hong Kong, so basically we can refer to the dates in `holiday_hk_en-gb` (which contains the dates up to 2030). One notable exception is the Mid-Autumn Festival - for Hong Kong the holiday is on the day **after** Mid-Autumn Festival.
  - Or, just refer to the document published by the Ministry of the Interior, R. O. C. (Taiwan), which is really straightforward.
  
  For your method:
  
  - We can see the patterns for those holidays (i.e. Lunar new year date + XX days + extra months or days (leap month 閏月 / leap days 閏日))
  - If you are (very) familiar with lunar calendar, this method may actually be better. Otherwise, you will have to be really careful with the leap months/days.
  
  > There are holidays entries regarding specific arrangements (an extra day is observed in lieu of an extra working day) that can't be calculated in advance
  
  If you are referring to 補假 (substitute holiday / supplementary holiday), the logic is stated in the law (紀念日及節日實施辦法 <https://law.moj.gov.tw/LawClass/LawAll.aspx?pcode=D0020033>):
  
  > 紀念日及節日之放假日逢例假日應予補假。例假日為星期六者於前一個上班日補假,為星期日者於次一個上班日補假。但農曆除夕及春節放假日逢例假日,均於次一個上班日補假。
  
  I believe that means:
  
  - If a public holiday is on Saturday, the substitute holiday will be the previous working day;
  - If a public holiday is on Sunday, the substitute holiday will be the next working day;
  - However, for Lunar New Year's eve and Lunar New Year, the substitute holiday will always be the previous working day.
  
  > I think there are still issues with the 4 season dates
  
  I have not enabled "Astronomical Events" plugin, but the astronomical seasons (especially June solstice, which is not a holiday for Japan and Hong Kong) are still automatically displayed for me. And apparently kholidays has the astronomical seasons support already in `src/astroseasons.cpp`.
  Some other issues:
  
  - Official holiday names should be used.
  - Using a third-party and non-official site such as `publicholidays.tw` as reference seems unreliable. My patch refers to the law and official documents to ensure accuracy.
  - Hence, I excluded all non-official holidays, such as Easter, which has been included in your patch.
  - But I cannot say I am 100% sure that I have not missed any official **commemorative** days. For example, Wikipedia says the Freedom of Expression Day (言論自由日) is an official one, but I wonder why it is not included in the law 紀念日及節日實施辦法. The website I linked above should be displaying the latest (and official) revision of the law. I hope someone from Taiwan can provide more information on this.

REPOSITORY
  R175 KHolidays

REVISION DETAIL
  https://phabricator.kde.org/D29373

To: weisi, winterz, cgiboudeaux
Cc: nhiga, kde-frameworks-devel, LeGast00n, cblack, michaelh, ngraham, bruns
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20200503/9f01492f/attachment-0001.html>


More information about the Kde-frameworks-devel mailing list