- Added: Support for rfc6638, also known as CalDAV Scheduling.
- Added: Automatically converting between vCard 3, 4 and jCard using the
Accept:
header, in CardDAV reports, and automatically converting from
jCard to vCard uponPUT
. It's important to note that your backends may
now recieve both vCard 3.0 and 4.0. - Added: #444. Collections can now opt-in to support high-speed
MOVE
. - Changed: PropertyStorage backends now have a
move
method. - Added:
beforeMove
, andafterMove
events. - Changed: A few database changes for the CalDAV PDO backend. Make sure you
runbin/migrate21.php
to upgrade your database schema. - Changed: CalDAV backends have a new method:
getCalendarObjectByUID
. This
method MUST be implemented by all backends, but theAbstractBackend
has a
simple default implementation for this. - Changed:
Sabre\CalDAV\UserCalendars
has been renamed to
Sabre\CalDAV\CalendarHome
. - Changed:
Sabre\CalDAV\CalendarRootNode
has been renamed to
Sabre\CalDAV\CalendarRoot
. - Changed: The IMipHandler has been completely removed. With CalDAV scheduling
support, it is no longer needed. It's functionality has been replaced by
Sabre\CalDAV\Schedule\IMipPlugin
, which can now send emails for clients
other than iCal. - Removed:
Sabre\DAV\ObjectTree
andSabre\DAV\Tree\FileSystem
. All this
functionality has been merged intoSabre\DAV\Tree
. - Changed: PrincipalBackend now has a findByUri method.
- Changed:
PrincipalBackend::searchPrincipals
has a new optionaltest
argument. - Added: Support for the
{http://calendarserver.org/ns/}email-address-set
property. - #460: PropertyStorage must move properties during
MOVE
requests. - Changed: Restructured the zip distribution to be a little bit more lean
and consistent. - #524: Full support for the
test="anyof"
attribute in principal-search
REPORT
. - #472: Always returning lock tokens in the lockdiscovery property.
- Directory entries in the Browser plugin are sorted by type and name.
(@aklomp) - #486: It's now possible to return additional properties when an 'allprop'
PROPFIND request is being done. (@aklomp) - Changed: Now return HTTP errors when an addressbook-query REPORT is done
on a uri that's not a vcard. This should help with debugging this common
mistake. - Changed:
PUT
requests with aContent-Range
header now emit a 400 status
instead of 501, as per RFC7231. - Added: Browser plugin can now display the contents of the
{DAV:}supported-privilege-set
property. - Added: Now reporting
CALDAV:max-resource-size
, but we're not actively
restricting it yet. - Changed: CalDAV plugin is now responsible for reporting
CALDAV:supported-collation-set
andCALDAV:supported-calendar-data
properties. - Added: Now reporting
CARDDAV:max-resource-size
, but we're not actively
restricting it yet. - Changed: CalDAV plugin is now responsible for reporting
CALDAV:supported-collation-set
andCALDAV:supported-calendar-data
properties. - Added: Now reporting
CARDDAV:max-resource-size
, but we're not actively
restricting it yet. - Added: Support for
CARDDAV:supported-collation-set
. - Changed: CardDAV plugin is now responsible for reporting
CARDDAV:supported-address-data
. This functionality has been removed from
the CardDAV PDO backend. - When a REPORT is not supported, we now emit HTTP error 415, instead of 403.
- #348:
HEAD
requests now work whereverGET
also works. - Changed: Lower priority for the iMip plugins
schedule
event listener. - Added: #523 Custom CalDAV backends can now mark any calendar as read-only.
- The zip release ships with sabre/vobject 3.3.3,
sabre/http 3.0.0, and sabre/event 2.0.0.