Bug 360674 - Post-daylight savings time, kalarm records alarms 1 hour later than it should
Summary: Post-daylight savings time, kalarm records alarms 1 hour later than it should
Status: CLOSED FIXED
Alias: None
Product: kalarm
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Arch Linux Linux
: NOR major
Target Milestone: ---
Assignee: David Jarvie
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-03-17 19:44 UTC by David Rosenstrauch
Modified: 2020-08-17 23:37 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 16.04


Attachments
Alarm created is recorded for 1 hour later (134.06 KB, image/png)
2016-03-17 19:46 UTC, David Rosenstrauch
Details
Work around the problem by setting "ignore time zone" (133.95 KB, image/png)
2016-03-17 19:47 UTC, David Rosenstrauch
Details

Note You need to log in before you can comment on or make changes to this bug.
Description David Rosenstrauch 2016-03-17 19:44:05 UTC
Since daylight savings time began (last weekend) any new alarms I enter in kalarm are being recorded - and alerted - one hour later than they should.

Reproducible: Always

Steps to Reproduce:
1. Enter a new alarm into kalarm.

Actual Results:  
Alarm time is displayed - and alarm alerts - one hour later than the time actually entered on the alarm.

Expected Results:  
Alarm time should display - and alert - at the time entered on the alarm.

The only way to workaround this is to go into the alarm again and turn on the box that says "Ignore time zone".

Note that this seems to only happen for new alarms that I enter.  (I.e., any alarms that I've entered since daylight savings time.)  Alarms that I entered weeks ago (i.e., before daylight savings began) seem to work correctly.

See attached screenshots for an example of this behavior.

FYI, in the Time & Date section of the kalarm settings, I have my time zone set to America/New York, and my holiday region set to UnitedStates (American English).  Timedatectl also reports my time zone as America/New_York (EDT, -0400).

I am using kalarm v15.12.3 on Arch Linux.
Comment 1 David Rosenstrauch 2016-03-17 19:46:09 UTC
Created attachment 97945 [details]
Alarm created is recorded for 1 hour later

See in the alarm edit window that I have set the "Testing" alarm for 4:00PM.  But the kalarm window to the right of it shows it as 5:00PM.
Comment 2 David Rosenstrauch 2016-03-17 19:47:46 UTC
Created attachment 97946 [details]
Work around the problem by setting "ignore time zone"

Only when I set "ignore time zone" does the alarm get recorded - and alerted - at the correct time.
Comment 3 jutterback 2016-03-23 13:56:29 UTC
I have the same problem.  Thanks for the hint on the Ignore Time Zone though, I hadn't figured that work around out.  The product was unusable before that.
Comment 4 Graeme Hewson 2016-04-02 18:19:11 UTC
I confirm this. I created an alarm several years ago to pop up at a certain time on Saturday afternoon, and it's been fine until today. Six days after the UK changed from GMT to BST (GMT+1), the alarm popped up an hour later than it should have.

The machine hasn't been rebooted since Sunday. Using Kubuntu 15.10.
"kalarm --version" reports:

QCoreApplication::arguments: Please instantiate the QApplication object first
Qt: 5.4.2
KDE Frameworks: 5.15.0
KAlarm: 2.11.3-5ak
Comment 5 David Jarvie 2016-04-10 12:23:05 UTC
This is due to a bug in the KDE PIM libraries (in kcalcore). See https://phabricator.kde.org/D1375.
Comment 6 David Jarvie 2016-04-10 12:25:29 UTC

*** This bug has been marked as a duplicate of bug 336738 ***
Comment 7 David Jarvie 2016-04-11 19:45:25 UTC
Git commit 9800fca3b44300828a8b7d23ae962f01e47ac5ff by David Jarvie.
Committed on 11/04/2016 at 19:35.
Pushed by djarvie into branch 'Applications/16.04'.

Fix timesInInterval() when parsing VTIMEZONE RRULE components

KDateTime::isValid() (KF5 <= 5.21) wrongly returns invalid for an
instance which is specified in ClockTime, if the date/time is invalid
in LocalTime, resulting in timesInInterval() returning no values when
parsing a VTIMEZONE RRULE component in ICalTimeZones.

This is a workaround for backwards compatibility with KF5 <= 5.21.

Differential Revision: https://phabricator.kde.org/D1375
FIXED-IN: 16.04

M  +2    -1    src/recurrencerule.cpp

http://commits.kde.org/kcalcore/9800fca3b44300828a8b7d23ae962f01e47ac5ff