Skip to content

Conversation

@LuceusXylian
Copy link
Collaborator

  • Add CalDAV support
  • CI: Check build with caldav

@LuceusXylian LuceusXylian changed the title 3 pr cal dav support Add CalDAV support Aug 22, 2025
@LuceusXylian
Copy link
Collaborator Author

Partially fixes issue #8.

Co-authored-by: Petr Ermishkin <petr@quasiyoke.me>
@LuceusXylian LuceusXylian requested a review from quasiyoke August 29, 2025 14:06
@messense messense requested a review from Copilot September 14, 2025 02:32
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds comprehensive CalDAV support to the dav-server library, extending the existing WebDAV functionality with calendar-specific features. CalDAV is a standardized protocol for calendar data management over HTTP, defined in RFC 4791.

  • Implements CalDAV methods (MKCALENDAR, REPORT) and calendar-specific WebDAV properties
  • Adds iCalendar data validation and calendar query functionality
  • Includes comprehensive test coverage and example application
  • Makes CalDAV support optional via the "caldav" feature flag

Reviewed Changes

Copilot reviewed 16 out of 16 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
tests/caldav_tests.rs Comprehensive test suite covering CalDAV functionality
src/util.rs Adds REPORT and MKCALENDAR methods to DavMethod enum
src/lib.rs Updates documentation and exports CalDAV module
src/handle_props.rs Extends property handling with CalDAV-specific properties
src/handle_options.rs Advertises CalDAV capabilities in OPTIONS responses
src/handle_gethead.rs Adds Nextcloud compatibility and improves HTML output
src/handle_caldav.rs Core CalDAV request handling implementation
src/davheaders.rs Extends Depth header enum with Default variant
src/davhandler.rs Integrates CalDAV methods into main request handler
src/caldav.rs CalDAV data structures and utility functions
src/body.rs Makes body types public for external access
src/actix.rs Minor code improvements and modernizations
examples/caldav.rs Example CalDAV server implementation
README.CalDAV.md Comprehensive CalDAV documentation
Cargo.toml Adds CalDAV dependencies and version bump
.github/workflows/CI.yml Adds CalDAV feature to CI builds

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Copy link
Owner

@messense messense left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@messense messense merged commit ce0d512 into messense:main Oct 22, 2025
12 checks passed
@LuceusXylian LuceusXylian deleted the 3-pr-CalDAV-support branch October 23, 2025 14:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants