Skip to content

iTip fixes - #296

Merged
tchapi merged 1 commit into
mainfrom
itip-fix
Sep 21, 2026
Merged

tchapi merged 1 commit into
mainfrom
itip-fix

Conversation

@tchapi

@tchapi tchapi commented Sep 20, 2026

Copy link
Copy Markdown
Owner

Scheduling emails no longer fails

Invitations are sent from inside the PUT that stores the event, and DavisIMipPlugin let its exceptions escape into sabre. sabre's own IMipPlugin never throws. So anything that went wrong while sending came back to the calendar client as a 500 — and the event was never written.

With SMTP unreachable:

PUT /dav/calendars/tchap/default/meeting.ics → 500
Symfony\Component\Mailer\Exception\TransportException
Connection could not be established with host "ssl://localhost:465"
→ calendarobjects with that uri: 0

Same outcome for an attendee address that isn't RFC-compliant (mailto:someone(at)example.org), which is worth noting because the attendee list comes straight from the organiser's client and nothing validates it before new Address(). The error body also handed the client the internal SMTP host.

Both now return 201 with the event saved. The failure is logged and recorded on the event as a SCHEDULE-STATUS the client can surface:

what fails result
mail transport down error log, SCHEDULE-STATUS 5.1, event saved
address is not an email address error log, SCHEDULE-STATUS 5.3, event saved
unsupported iTIP method warning log, 5.0, no mail — previously left $action undefined and rendered a blank template
recipient isn't mailto: warning log
unknown PARTSTAT in a REPLY warning log
OSM tile server unreachable warning log, invitation sent without the map
sent info log

The map one is the same class of bug: rendering the location image is a network call on the PUT path, for decoration on an email.

@tchapi tchapi self-assigned this Sep 20, 2026
@tchapi tchapi added the bug Something isn't working label Sep 20, 2026
@tchapi
tchapi merged commit 97ea9ba into main Sep 21, 2026
11 checks passed
@tchapi
tchapi deleted the itip-fix branch September 21, 2026 19:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant