Versión: Discourse 2026.1.5 (ESR), plugin discourse-calendar
Resumen
Los nuevos eventos creados con una zona horaria establecida (timezone="Europe/Berlin" y showLocalTime="true") muestran una hora incorrecta con +1 hora al descargar el archivo .ics e importarlo en Outlook (Windows). La hora es correcta en el propio foro. Solo se ven afectados los nuevos eventos, es decir, la importación mediante el archivo .ics.
Reproducción
- Crear un evento (hoy, en horario de verano CEST/UTC+2): 17:00 – 19:15 hora de Berlín.
[event start="2026-08-11 17:00" status="public" name="testevent 2" timezone="Europe/Berlin" showLocalTime="true" end="2026-08-11 19:15"]
[/event]
- «Añadir al calendario» → descargar el archivo
.ics. - Importar el archivo en Outlook.
Esperado: 11.08.2026, 17:00 – 19:15
Real: 11.08.2026, 18:00 – 20:15 (+1 hora)
Contenido ICS (relevante):
DTSTART;TZID=Europe/Berlin:20260811T170000
DTEND;TZID=Europe/Berlin:20260811T191500
(El archivo no contiene un bloque VTIMEZONE para Europe/Berlin.)
Análisis / Causa sospechada
La exportación especifica la hora localmente con TZID=Europe/Berlin (nombre IANA) en lugar de UTC (...Z). Outlook no entiende los nombres de zonas horarias IANA (utiliza identificadores de Windows como «W. Europe Standard Time») y, sin una definición VTIMEZONE, vuelve al desplazamiento fijo UTC+1 (CET/hora de invierno). Durante la hora de verano (CEST = UTC+2) esto provoca exactamente +1 hora. Comprobación cruzada: importar el mismo archivo en Google Calendar (que entiende las zonas horarias IANA de forma nativa) muestra la correcta 17:00.
Sugerencia: la exportación ICS debería utilizar marcas de tiempo UTC con Z o generar un bloque VTIMEZONE completo que incluya las reglas de horario de verano (véase también la discusión sobre el cumplimiento de la especificación ICS en LOCATION no está disponible en la exportación ICS completa).
Observación adicional: Cuando el mismo evento se crea sin timezone=/showLocalTime, el .ics exportado utiliza UTC y Outlook muestra +2 horas (ya que 17:00 UTC = 19:00 CEST). Este es el comportamiento UTC documentado, pero ilustra aún más que el manejo de las zonas horarias en torno a la exportación ICS resulta confuso para los usuarios que esperan horas locales.