CalDAV: ¿las instancias futuras de eventos recurrentes ya no se regeneran después de un tiempo?

Hola @bertrandda,

Tengo un problema con un calendario CalDAV que contiene aniversarios recurrentes anuales.

Hoy, tengo un aniversario que está presente en mi calendario CalDAV Aniversario, pero el evento del día no aparece en Gladys.

La conexión CalDAV parece funcionar correctamente:

  • Gladys descubre bien el calendario Aniversario durante las sincronizaciones;

  • los otros calendarios, en particular Familia, funcionan;

  • he intentado desactivar/activar el calendario y luego reiniciar una sincronización, sin resultado.

Al mirar el funcionamiento del código CalDAV de Gladys, me di cuenta de que los eventos recurrentes se desarrollan en un período de tiempo limitado, con:


const rangeStart = this.dayjs().subtract(1, 'years');

const rangeEnd = this.dayjs().add(2, 'years');

Por lo tanto, me pregunto si podría haber el siguiente caso:

  1. Un evento anual con una RRULE se sincroniza.

  2. Gladys crea sus ocurrencias hasta +2 años.

  3. Los años pasan sin modificación del evento fuente.

  4. El ctag del calendario no cambia.

  5. Gladys no reprocesa el evento recurrente.

  6. Las ocurrencias pre-calculadas finalmente llegan al final de la ventana inicialmente generada.

¿Es posible este escenario con el funcionamiento actual de la sincronización CalDAV?

Esto podría explicar por qué un aniversario siempre presente en el lado CalDAV ya no aparece en Gladys varios años después de su importación inicial.

Si es útil para confirmar, puedo hacer pruebas en mi instalación, por ejemplo, forzar una resincronización completa del calendario y verificar si la ocurrencia reaparece.

¡Gracias!

Hola @spenceur,

Bien visto, hay un problema en caso de evento recurrente no actualizado durante mucho tiempo.

Aquí tienes una PR para arreglarlo

Una imagen docker estará disponible en los próximos minutos para probar bertrandda/gladys:caldav