Repository navigation
fix(docker): install DateTime::TimeZone 2.71 for BC permanent UTC-7 - #59
Merged
Merged
Conversation
BC no longer falls back on 2026-11-01. Ubuntu 24.04's libdatetime-timezone-perl is 2.62 (Olson 2024a) and will not be updated, and DateTime uses its own zone data, not /usr/share/zoneinfo, so WeBWorK would show Nov-Mar dates an hour early as "PST" and parse set-def/default dates an hour late. 2.68+ has the BC change; install 2.71 from CPAN (it lands in /usr/local/share/perl, ahead of the apt copy in @inc) and fail the build if America/Vancouver is not UTC-7 in December 2026.
2 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
BC stays on UTC-7 permanently: no fall back on Sunday 2026-11-01 02:00. WeBWorK converts course dates with Perl
DateTime::TimeZone, which ships its own compiled zone data and ignores/usr/share/zoneinfo.The image's copy is Ubuntu 24.04's
libdatetime-timezone-perl 1:2.62-1+2024a(Olson 2024a), and noble will not get a newer one. So from Nov 1, for any date between 2026-11-01 and 2027-03-14:Grade passback, queues and LTI tokens use epochs or GMT and are not affected.
Change
Dockerfile-prod, plusDockerfileto keep them in step:cpanm install -n DateTime::TimeZone@2.71(Olson 2026d). 2.68 is the first release with the BC change. The module installs to/usr/local/share/perl/5.38.2, which comes before the apt copy in@INC.Testing
Tested in
lthub/webwork:v2.20.8(the current prod image) using WeBWorK's ownWeBWorK::Utils::DateTime:parseDateTime("12/01/2026 at 11:59pm")cpanm installed only DateTime-TimeZone; the image already had all its dependencies.
Notes
v2.20.9, pin it in configuration, deploy staging, then prod under a CHG before 2026-10-31.