Page MenuHomePhabricator

Time zones on Phabricator events are confusing
Open, LowPublic

Description

Upstream: https://secure.phabricator.com/T11073

Phabricator has a crazy behaviour when it comes to time zones and especially the handling of daylight saving time. I have seen this here and went to phab-01 to test. To reproduce, do the following:

In Phabricator settings, set your prefered time zone to UTC.
Create an event that repeats every week. Let it start at e.x. 8 PM.
Go to calendar month view. Click forward a few months. You'll see that the event will always start at 8 PM, there is no influence whether it is summer or winter.
Go back to your settings and set your prefered time zone to Europe/Berlin (or anything other different to UTC I guess, but this is what I tested with).
As expected, the event starts at 9 PM as long as winter time is active and gets to start at 10PM when summer time arrives.
Create an event that repeats every week. Let it start at e.x. 6 AM.
Go to calendar month view. Click forward a few months. You'll see that the event will always start at 6 AM, there is no influence whether it is summer or winter.
Go back to your settings and set your prefered time zone back to UTC.
Go to calendar month view. Click forward a few months. What you'll notice is that the event you created when your setting was UTC again always starts at 8PM no matter if summer or winter, but the event you created when your setting was Europe/Berlin will start at 5AM in during winter and at 4AM during summer.

The following link shows two test events created by the scheme above in phab. Note that (if not logged, so when UTC used) the "Test event created with "time zone" in preferences to UTC" is always showing up at 8 PM while. The event "Test event created with "time zone" in preferences to Europe/Berlin" shows up on 5 AM until 23 March 2017 and starts at 4 AM at 30 March 2017. On 26 March 2017 Europe/Berlin goes from winter time CET(UTC+1) to summer time CEST(UTC+2).
https://phab-01.wmflabs.org/calendar/query/month/2017/03/

TLDR: So it seems Phabricator saves the prefered time zone the creator (or maybe the last editor or whatever, I didn't test this) had when the event was created and takes this as the fix point to calculate the dates of recurring events and when daylight saving time comes or goes. However phab does neither give the option to change this behaviour in task settings nor at least shows the time zone in the task.

Event Timeline

Aklapper renamed this task from Time zones on phabricator events are crazy to Time zones on Phabricator events are confusing.Feb 23 2017, 9:47 PM

https://secure.phabricator.com/T11816#218816 referred a seperate task for this problem, which is why I replied to the follow-up question there (https://secure.phabricator.com/T11073#218832 and following discussion).