Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

iCloud: time-range search doesn't match a moved recurrence instance by its new date

Abierto
#784 1 comentario 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
48/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
python
Área
api, networking

Línea de trabajo

Start by reading related issue #157 and RFC 4791 section 9.9, then reproduce the narrow and broader time-range queries described here against iCloud. The issue does not identify a code entry point, so first trace how python-caldav builds and handles CalDAV time-range queries. Done means a narrowly scoped compatibility approach handles the moved instance without changing results for other servers, with a test covering the described case.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Summary

Apple iCloud CalDAV omits a moved recurring-event instance when the CalDAV time-range filter covers the instance's new date but not its original recurrence date.

Environment

  • Server: Apple iCloud CalDAV (not self-hosted)
  • Client: Home Assistant Core 2026.10.1, UI-configured CalDAV integration
  • python-caldav: 3.3.0a1
  • Time zone: Europe/Zurich

Reproduction

  1. Create an all-day weekly series with occurrences on 2026-10-31, 2026-11-07, and 2026-11-14 (FREQ=WEEKLY;COUNT=3).
  2. Move only the first occurrence from 2026-10-31 to 2026-10-17. Its actual start is then 2026-10-17 and its RECURRENCE-ID remains 2026-10-31.
  3. Query the calendar from 2026-10-17 00:00 to 2026-10-18 00:00.

Actual result

The moved instance is absent both from Home Assistant's calendar.get_events result and from the raw iCloud CalDAV XML response.

When querying the broader range 2026-10-17 00:00 to 2026-11-01 00:00, the same moved instance is present in both places. The relevant CalDAV request succeeds; the server response simply omits the event for the narrow range.

Expected result

The instance should match the time-range filter by its current/effective date, 2026-10-17. RFC 4791 section 9.9 describes time-range matching for overridden recurrence instances on their current date.

The identical test works with Radicale, according to a Home Assistant developer. This therefore appears to be an iCloud-specific compatibility problem rather than a Home Assistant-only issue.

Could python-caldav provide an iCloud-specific compatibility workaround, potentially related to #157, such as a deliberately scoped fallback for this server behavior?

Related Home Assistant report: https://github.com/home-assistant/core/issues/179125
Relevant discussion: https://github.com/home-assistant/core/issues/179125#issuecomment-6232748536

Privacy

No real event UIDs, calendar URLs, credentials, XML/log payloads, or unrelated calendar events are included here.

AI assistance

This issue text was assisted by OpenAI ChatGPT. I performed the live test and inspected the raw response myself; I can answer follow-up questions and test a proposed fix.

Lenguaje dominante
Python
Estrellas
412
Forks
113
Merge medio
11 h 37 min
PR fusionados (30 d)
50

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de python-caldav/caldav

Todos los issues de python-caldav/caldav

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.