Files
ihasmail/web
jcoffey-dev 590edd50a1
ci / node (pull_request) Skipped
ci / version (pull_request) Skipped
github/ci (branch) GitHub Actions
ci / github (pull_request) Successful in 3m4s
ci / stalwart (stalwartlabs/stalwart@sha256:baafeacd6cbde77acdd94af49972d41c6709e54a376df48e18a9fe3f445eb3d5, 1.0.0) (pull_request) Skipped
ci / stalwart (stalwartlabs/stalwart@sha256:c429b311c93db5606598abc1c68225a85a6953183848ae01bee9c6a98885836c, 0.16.27) (pull_request) Skipped
ci / docker-build (pull_request) Skipped
ci / publish (pull_request) Skipped
Stalwart 1.0: load calendars, and keep settings and Files working
Two changes in Stalwart 1.0 broke ihasmail for its readers (#66).

A CalendarEvent/get that names recurrenceOverrides together with utcStart
or utcEnd now fails whole, even with no ids, so no calendar would load.
The everyday property list no longer asks for the overrides; an
occurrence's are null anyway. The export, which needs them, asks with
SERIES_PROPS, without the times.

FileNode renamed nodeType to @type ("Directory", "File") and type to
mediaType, and each version refuses the other's names on create and
update. ihasmail could make no folder on 1.0, including its own, so the
settings file was never written and settings reset at every sign-in. The
client now asks once per session which shape the server wants (a query
sorted by type, which 1.0 refuses as unsupportedSort), asking the
reader's own account, and translates FileNode calls in one place,
jmap/fileNodeShape.ts, so the rest of the app keeps the shape it was
written for. A filter by nodeType, which 1.0 answers with nothing, is
dropped there; the Files tree already sorts folders from files itself.

The compatibility test missed both because it never made these calls. It
now reads events with both property lists, expands a weekly series, and
writes, finds, updates and reads back the settings file through the
client's own translation. Run against real 0.16.27 and 1.0.0 servers,
and the app was checked by hand on 1.0: calendars load, and a setting
survives signing out and back in.

Fixes #66
2026-10-30 13:07:54 -07:00
..