a calendar server
- CalDAV
- Support for VEVENT, VTODO, VJOURNAL
- Proper filtering for REPORT method
- comp-filter
- time-range filter
- good enough to use
- prop-filter
- ICS parsing
- Datetime parsing
- Implement PROPPATCH
- CardDAV
- Auth (There currently is no authentication at all in place for some routes)
- static authentication
- Access control
- preparation for different principal types (groups)
- authentication rewrite? (argon2 is very slow for each request)
- solved through app tokens
- OIDC support
- Web UI
- Trash bin
- Hiding calendars instead of deleting them
- Restore endpoint
- Packaging
- Ensure cargo install works
- Docker image
- Releases
- Locking
- Testing such that I'm confident enough to use it myself :)
- WebDAV sync extension RFC 6578
- implement getctag see
- implement WebDAV If header
- Ensure proper routing
- Versioning Extensions to WebDAV: RFC 3253
- provides the REPORT method
- Calendaring Extensions to WebDAV (CalDAV): RFC 4791
- Scheduling Extensions to CalDAV: RFC 6638
- not sure yet whether to implement this
- Collection Synchronization WebDAV RFC 6578
- We need to implement sync-token, etc.
- This is important for more efficient synchronisation
- iCalendar RFC 2445
- a returned version of a resource is marked with a sync token
- the client can send the sync token to find out about changes after this sync token