Release 1.30 of Date::Holidays - more holiday for the French

Jonas Brømsø - Mar 8 '22 - - Dev Community

I received a PR (#53) some time ago, but due to being busy with other open source activities I did not get around to to it right away.

The PR was a bug fix to the Perl distribution Date::Holidays, which is an adapter class for a namespace/set of distribution on CPAN.

This was a minor fix to US holiday calendar adapter and it was most welcome - thanks @qorron.

Release 1.30, the first release in over a year, is now available on CPAN.

After a few days I checked the CPAN-testers reports and they did not look as good as I expected.

Date::Holidays Test Results for release 1.30

I checked the reports which was coming in and they reported issue with Date::Holidays::FR, which is one of the distributions adapted by Date::Holidays.

The test-suite for Date::Holidays has some tests which assert the adaptability of the different distributions and if they break the contract or, as in this case, fulfill the contract the test breaks.

I looked at the latest release of Date::Holidays::FR and it's changes and guess who was responsible for the breaking tests - me!

0.04 2021-01-27

  • follow the guidelines for Date::Holidays::XX modules (thanks to JONASBN)
  • clean up the code (thanks again JONASBN)

I had completely forgotten that I had contributed to the Date::Holidays::FR distribution and because I had not run any tests, I had not discovered the change.

On a timeline:

2020-11-13          2021-01-27              2022-03-01
D::H release 1.29   D::H::FR release 0.04   D::H release 1.29
Enter fullscreen mode Exit fullscreen mode

I have followed up with:

  • Date::Holidays release 1.31 today
  • Task::Date::Holidays release 0.11 yesterday

Both repositories have been configured with scheduled test runs, so a test run is made every 30 days, so we will not observe these long periods, where obvious bugs can roam.

Task::Date::Holidays is a helper distribution, which downloads everything Date::Holidays, which makes it faster and easier to develop.

From .github/workflows/ci.yaml

name: Dist::Zilla Action
on:
  push:
  schedule:
    - cron: '0 * */30 * *'

jobs:
  dzil:
    runs-on: ubuntu-latest
    name: "dzil run"
    steps:
      - name: "Checkout repository"
        uses: actions/checkout@v3
      - name: "Installing dependencies and testing all using dzil"
        uses: jonasbn/github-action-perl-dist-zilla@0.2.0
        with:
          dzil-arguments: 'test --all'
Enter fullscreen mode Exit fullscreen mode

I think the capability of running scheduled actions, can be but to valuable use and I have some other repositories that can benefit from something similar, so I will dig some more into this.

Now we have more holiday for the French, I hope the scheduled jobs will not interfere with my holiday plans.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .