Initial multi-calendar/address book support

Thanks to the latest version of go-webdav, this is now a thing. A lot of
operations (like creating a calendar) are not yet supported. But the
basics work fine. Note that multi-calendar means that different users
can each have their own calenders. Resource sharing is not yet
implemented either.

Includes the adding of a lot of debug logs, as issues are otherwise
pretty hard to figure out. The logging still needs to be made more
consistent, and probably cleaned up a bit in some places.
This commit is contained in:
Conrad Hoffmann 2024-02-02 22:19:36 +01:00
parent 1d871b000a
commit a74c76857d
7 changed files with 347 additions and 155 deletions

4
go.mod
View file

@ -7,7 +7,7 @@ require (
github.com/emersion/go-imap v1.2.1
github.com/emersion/go-sasl v0.0.0-20231106173351-e73c9f7bad43
github.com/emersion/go-vcard v0.0.0-20230815062825-8fda7d206ec9
github.com/emersion/go-webdav v0.4.0
github.com/emersion/go-webdav v0.5.1-0.20240202164822-eaac65215b3a
github.com/go-chi/chi/v5 v5.0.10
github.com/msteinert/pam v1.2.0
github.com/rs/zerolog v1.31.0
@ -17,6 +17,6 @@ require (
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/teambition/rrule-go v1.8.2 // indirect
golang.org/x/sys v0.15.0 // indirect
golang.org/x/sys v0.16.0 // indirect
golang.org/x/text v0.14.0 // indirect
)