- 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
movemethod. - Added:
beforeMove, andafterMoveevents. - Changed: A few database changes for the CalDAV PDO backend. Make sure you
runbin/migrate21.phpto upgrade your database schema. - Changed: CalDAV backends have a new method:
getCalendarObjectByUID. This
method MUST be implemented by all backends, but theAbstractBackendhas a
simple default implementation for this. - Changed:
Sabre\CalDAV\UserCalendarshas been renamed to
Sabre\CalDAV\CalendarHome. - Changed:
Sabre\CalDAV\CalendarRootNodehas 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\ObjectTreeandSabre\DAV\Tree\FileSystem. All this
functionality has been merged intoSabre\DAV\Tree. - Changed: PrincipalBackend now has a findByUri method.
- Changed:
PrincipalBackend::searchPrincipalshas a new optionaltest
argument. - Added: Support for the
{http://calendarserver.org/ns/}email-address-set
property. - #460: PropertyStorage must move properties during
MOVErequests. - 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:
PUTrequests with aContent-Rangeheader now emit a 400 status
instead of 501, as per RFC7231. - Added: Browser plugin can now display the contents of the
{DAV:}supported-privilege-setproperty. - 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-setandCALDAV: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-setandCALDAV: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:
HEADrequests now work whereverGETalso works. - Changed: Lower priority for the iMip plugins
scheduleevent 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.