Page MenuHomePhabricator

Events doesn't take into account summer/winter time changes
Closed, InvalidPublicBUG REPORT

Description

Steps to replicate the issue (include links if applicable):

  • Create an event before a summer/winter time change
  • Suppose the event is organized by someone in a country who doesn't apply time changes
  • Set the date of the event after the time change.

What happens?:

  • Before the time change occur, the indicated time does not take into account the future time change, in countries where it apply.

What should have happened instead?:
*The indicated time should take into account the time change occurring before the event date and display the corrected hour, depending on time-zone.

Other information (browser name/version, screenshots, etc.):

This specific bug had made me miss this event on saturday: https://dcwwiki.org/index.php?curid=1154 it was precisely in the night between this sunday and saturday that the time change occurred in my country. So my calendar reminded me of the event 1 hour later, when it had already ended.

Event Timeline

Create an event before a summer/winter time change the event is organized by someone in a country who doesn't apply time changes.

I have problems to parse that sentence.

The indicated time should take into account the time change occurring before the event date and display the corrected hour, depending on time-zone.

It does, today. That link posted displays the very same CEST time for me as the embedded flyer for CEST.
Or do you refer to opening and looking at that link before DST started and it showed a wrong time for your timezone?
It's currently not clear to me what you expect where from whom...

I have edited the description to try to be more clear.

Indeed, the issue is that the timing is wrong before the time change occur. So when an event happen the very day of the time change, it's confusing.

Events do take timezones into account, there's a good chunk of logic to deal with that precisely because of how important it is for event participation. Of course, this requires event organizers to be mindful of the timezone they're using: for example, UTC is rarely a good choice, as event tend to be pinned to the time in a certain country. Using the example you provided, and retrieving event info via the API, we see that the event time is 2026-03-29 22:30:00 Asia/Kolkata, so that seems correct. I don't know what your timezone is, but for the purpose of explaining I'll use my own central european timezone. While it is true that DST rules differ between indian time and european time (in that, as you mentioned, indian time has no DST at all), this is correctly taken into account when showing the event time. To confirm, I created two events:

You can see in the respective event pages that the times shown are different: for example, I see 8:30 for the first event, and 7:30 for the second.

Instead, I believe the problem lies here:

So my calendar reminded me of the event 1 hour later, when it had already ended.

How did the event end up on your calendar? We haven't implemented an "export to calendar" feature. It is planned, but currently stalled precisely due to timezone issues, see T351757 and subtask T358493. So, my guess would be that the import was done using the wrong timezone, or that it's the calendar in question that got confused. At any rate, more information is needed.

The event https://dcwwiki.org/index.php?curid=1154 link to an .ics file that I used to save the event to my calendar. The problem is probably there? I thought it was generated by the event extension but maybe not??

The event https://dcwwiki.org/index.php?curid=1154 link to an .ics file that I used to save the event to my calendar. The problem is probably there? I thought it was generated by the event extension but maybe not??

Oh! Sorry, I didn't see that. No, that's not something the extension generates. Checking https://dcwwiki.org/index.php?curid=1154&action=edit, the content of the page (ICS file included) is generated via an {{event}} template. The start and end times for that event are passed as UTC (2026-03-29 05:00:00 PM UTC), so that's why they end up being wrong. The organizer should've used the proper timezone.

Besides, it looks like the template in question (form view) is duplicating some of the extension features. One thing that looks a bit suspicious is the timezone field being an integer. Those tend to not work well when DST is involved, just like it happened here. Maybe it's sufficiently good for indian time because it does not observe DST, but for all countries that do observe it, it wouldn't work well. Likewise, UTC is rarely the right timezone to use for an event, simply because there aren't many humans who live in a place whose local time is equal to UTC all year long.

At any rate, these changes need to be made to that wiki template; the extension itself is working correctly.

That linked ICS file says PRODID:mediawiki/cargo so it was likely created (?) by the Cargo extension. The ICS file includes no timezone information.

Thank you for the clarification.