Yasumi v2.5.0 Release Notes

Release Date: 2022-01-30 // about 1 year ago
  • βž• Added

    • Argentina Provider #264 (Nader Safadi).
    • Turkey Provider #250.
    • World Children's Day for Thuringia (Germany) #260.
    • πŸ†• New National Day for Truth and Reconciliation to Canada #257 (Owen V. Gray).
    • πŸ†• New Juneteenth National Independence Day to USA #253 (Mark Heintz).
    • The Korea Tourism Organization's holiday guide link was added to the source of South Korea Provider. #255 (barami).
    • Mothering Day for the United Kingdom #266.

    • All holiday providers now include a method that returns a list of external sources (i.e. references to websites, books, scientific papers, etc.) that are used for determining the calculation logic of the providers' holidays.

    πŸ”„ Changed

    • Revised rules to calculate substitution holidays of South Korea to apply the newly enacted law on June
      1. #255 (barami).
    • Separate calculateSubstituteHolidays method of South Korea Provider to calculateSubstituteHolidays and calculateOldSubstituteHolidays . #255 (barami)
    • πŸ”¨ Refactored the tests of South Korea provider to testing substitution holidays. #255 (barami).
    • 🚚 Moved the United Kingdom Spring Bank Holiday to June 2nd and added Platinum Jubilee bank holiday on June 3rd for #270 (Dan).

    • βœ… Provider tests must implement the ProviderTestCase interface to ensure all required test methods are defined.

    • βœ… YasumiTestCaseInterface was renamed to HolidayTestCase to better match the newly added ProviderTestCase interface.

    • ⚑️ Updated codebase using PHP7.4 syntax features.

    • ⬆️ Upgraded PHP CS Fixer to v3.

    πŸ›  Fixed

    • All Saints Day (German: 'AllerHeiligen') was classified as Other for states celebrating this day. This was incorrect (or officially changed) and has been altered to Official . #263
    • Corpus Christi (German: 'Fronleichnam') was classified as Other for states celebrating this day. This was incorrect (or officially changed) and has been altered to Official. #252.
    • βœ… The test for the USA in that juneteenthDay was considered for all years: it is only celebrated since 2021.
    • Definition of Canada Day in Canada #257 in that, Canada Day is July 1 if that day is not Sunday, and July 2 if July 1 is a Sunday.(Owen V. Gray).

    • βͺ Reverted the visibility of the AbstractProvider->getHolidaDates() method as it incorrectly was set to protectecd.

    βœ‚ Removed

    • πŸ‘ PHP7.3 Support as it is End of Life.

Previous changes from v2.4.0

  • βž• Added

    • Georgia Provider #245 (Zurab Sardarov)
    • Pentecost (Sunday) to Germany #225 (Patrick-Root)

    • πŸ‘ PHP8 Support #238 (StΓ©phane)

    • βœ… Infection PHP to perform mutation testing.

    • PHPStan to the dependencies allowing for local analysis.

    • πŸš€ .gitattributes file to reduce the size of a release package #237 (StΓ©phane)

    πŸ”„ Changed

    • ⏱ Rescheduled exceptional Japanese holidays for Olympic Games 2020 after COVID-19 #240 (tanakahisateru)
    • πŸ”¨ Some improvements/refactoring of the Swiss holiday providers (including source references) #233 (Quentin Ligier)

    • πŸ‘ Allow the WEEKEND_DATA constant in provider classes to be overridden. #235 (Mahmood Dhia)

    • ⬆️ Upgraded PHPUnit's XML configuration.

    • πŸ”¨ Refactored removing the magic numbers for the lower and upper limits of the calendar year.

    • ⚑️ Reformatted code using new/updated Code Styling rules.

    • Hardened error handling of json functions.

    • ⚑️ Updated Copyright year.

    πŸ›  Fixed

    • βœ… The test for North West Territories (Canada) in that the National Indigenous Peoples Day was considered for all years: it is only celebrated since 1996.
    • βœ… The test for NovaScotia (Canada) in that novaScotiaHeritageDay was considered for all years: it is only celebrated since 2015.
    • βœ… The test for Ontario (Canada) in that IslanderDay was considered for all years: it is only celebrated since 2009.
    • ⏱ The test for Marine Day (Japan) as the rescheduled day was moved to 2021 (due to the COVID-19 pandemic).
    • Typo for Estonian Day of Restoration of Independence #228 (Reijo Vosu)

    • βœ… The substitute holiday unit test as the use of the at() method will be deprecated in PHPUnit 10.

    • Incorrect invocation of Fribourg::calculateBerchtoldsTag() and Fribourg::calculateDecember26th (Switzerland)

    • πŸ‘‰ Use proper parameter and return type hinting

    • Replaced the mt_rand function with the random_int function as it is cryptographically insecure.

    • Some static functions were used as if they are object functions.

    βœ‚ Removed

    • πŸ’… Travis/StyleCI/Scrutinizer services replaced by GitHub Actions.
    • πŸ‘ PHP 7.2 Support (PHP 7.2 is EOL)
    • Faker library as it has been sunset #238 (StΓ©phane)
    • Native function invocations.
    • Various undefined class references, unused imports, etc.
    • Unnecessary curly braces in strings, continue keyword in while loops, typecasting.