[Koha-bugs] [Bug 16376] Koha::Calendar-> is_holiday date truncation creates fatal errors for TZ America/Santiago

bugzilla-daemon at bugs.koha-community.org bugzilla-daemon at bugs.koha-community.org
Tue Dec 6 15:40:23 CET 2016


https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16376

Tomás Cohen Arazi <tomascohen at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #51968|0                           |1
        is obsolete|                            |

--- Comment #23 from Tomás Cohen Arazi <tomascohen at gmail.com> ---
Created attachment 58002
  -->
https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=58002&action=edit
Bug 16376 - Koha::Calendar->is_holiday date truncation creates fatal errors for
TZ America/Santiago

Using a DateTime object with a timezone of America/Santiago
was causing fatal errors for Koha::Calendar->is_holiday
and Koha::Calendar->exception_holidays, when the objects
were truncated to an invalid local time.

Using a floating zone allows us to use the same day, month, year
for comparison purposes without running into the possibility of
creating an invalid local time and thus a fatal software error.

Edit:

While the changes to is_holiday and single_holiday make sense (Jonathan agrees
too)
I didn't manage to have them fail, because truncate is not failing in my
trials, but
days_between. So to me, it narrows down to have exception_holiday return
floating tz
datetime objects so it doesn't break days_between.

Anyway, it is ok to push this patch, and the regression test I provide covers
this scenario
I'm describing.

To test:
- Apply the regression tests patch
- Run:
  $ prove t/db_dependent/Holidays.t
=> FAIL: Unexpected error due to bad timezone/date combination
- Apply this patch
- Run:
  $ prove t/db_dependent/Holidays.t
=> SUCCESS: Tests pass

Signed-off-by: Chris Cormack <chris at bigballofwax.co.nz>
Signed-off-by: Tomas Cohen Arazi <tomascohen at theke.io>

-- 
You are receiving this mail because:
You are the assignee for the bug.
You are watching all bug changes.


More information about the Koha-bugs mailing list