sabre/dav
WebDAV Framework for PHP
4.7.1
16M downloads/mo
#1145 most downloaded on Packagist
sabre-io/dav
What this package is like to depend on
Last release 1 months ago
07 Jul 2026
Release timing varies
gaps range from 8 days to 1.7 years
Nearly every release is documented
notes for 102 of 111 stable releases
Nothing withdrawn
no release was ever pulled
14 years old
125 releases · first in 2012
1 release in the last 12 months
see the full history below
Release timeline
125 releases · Feb 2012 to Jul 2026Releases
latest 60 of 125-
4.7.107 Jul 2026Release notes
Open source →4.7.1 (2026-07-07)
- #1561 Refactor ternary to elvis operator where possible (@ChristophWurst)
- #1562 refactor: Change class strings to ::class constants (@ChristophWurst)
- #1595 Check for instanceof INode instead of Node (@CarlSchwan)
- #1598 docs(caldav): fix RFC section for calendar query report (@ChristophWurst)
- #1495 fix: Handle Depth header for COPY as this is required by RFC (@provokateurin)
- #1604 Remove redundant getLocks() call on a lock refresh (@alecpl)
- #1610 No return from delete() according to INode::delete() (@alecpl)
- #1612 Use Uri\Split() instead of basename() (@alecpl)
- #1623 Fix PDO::PARAM_LOB binding for BYTEA columns in CalDAV and CardDAV (@sylvinus)
- #1625 Fix error on a HEAD request with a Range header (@alecpl)
- #1637 fix(CalDAV/Backend/PDO): bind transparent as int in updateCalendar (@sylvinus)
Release notes
Open source →- #1561 Refactor ternary to elvis operator where possible (@ChristophWurst)
- #1562 refactor: Change class strings to ::class constants (@ChristophWurst)
- #1595 Check for instanceof INode instead of Node (@CarlSchwan)
- #1598 docs(caldav): fix RFC section for calendar query report (@ChristophWurst)
- #1495 fix: Handle Depth header for COPY as this is required by RFC (@provokateurin)
- #1604 Remove redundant getLocks() call on a lock refresh (@alecpl)
- #1610 No return from delete() according to INode::delete() (@alecpl)
- #1612 Use Uri\Split() instead of basename() (@alecpl)
- #1623 Fix PDO::PARAM_LOB binding for BYTEA columns in CalDAV and CardDAV (@sylvinus)
- #1625 Fix error on a HEAD request with a Range header (@alecpl)
- #1637 fix(CalDAV/Backend/PDO): bind transparent as int in updateCalendar (@sylvinus)
-
4.7.029 Oct 2024Release notes
Open source →4.7.0 (2024-10-29)
- #1074 Add event to allow inspecting and changing multipart responses (@icewind1991)
- #1529 fix typo in comment (@st3iny)
- #1534 remove script for dead Google Code (@Rotzbua)
- #1536 fix typos (@Rotzbua)
- #1539 bump actions/cache from 3 to 4
- #1540 bump codecov/codecov-action from 3 to 4
- #1545 fix getNodeForPath caching (@icewind1991)
- #1550 stop exporting php-cs-fixer config (@phil-davis)
- #1559 Allow for custom iTipBroker (@SebastianKrupinski)
- #1560 Fix PHP 8.4 deprecations (@cedric-anne)
Supports PHP 7.1 to 8.4 inclusive.
Release notes
Open source →- #1074 Add event to allow inspecting and changing multipart responses (@icewind1991)
- #1529 fix typo in comment (@st3iny)
- #1534 remove script for dead Google Code (@Rotzbua)
- #1536 fix typos (@Rotzbua)
- #1539 bump actions/cache from 3 to 4
- #1540 bump codecov/codecov-action from 3 to 4
- #1545 fix getNodeForPath caching (@icewind1991)
- #1550 stop exporting php-cs-fixer config (@phil-davis)
- #1559 Allow for custom iTipBroker (@SebastianKrupinski)
- #1560 Fix PHP 8.4 deprecations (@cedric-anne)
-
4.6.011 Dec 2023Release notes
Open source →4.6.0 (2023-12-11)
- #1526: feat: add propFindUnfiltered public method to Client (@phil-davis)
Release notes
Open source →- #1526: feat: add propFindUnfiltered public method to Client (@phil-davis)
-
4.5.123 Nov 2023Release notes
Open source →4.5.1 (2023-11-23)
- #1514: fix: restore autoPrefix property of Href (@phil-davis)
-
4.5.014 Nov 2023Release notes
Open source →4.5.0 (2023-11-14)
- #1488: fix: The WebDAV response element must only contain
propstatORstatuselement(s) (@susnux) - #1481: docs: fix type definition for oldObject (@kesselb)
- #1457: Fix PHPDoc to allow getChanges for sync to return null (@tcitworld)
- #1446: declare addressDataProperties to avoid PHP 8.2 deprecation notice (@phil-davis)
- #1432: Remove unused itipMessage property (@come-nc)
- #1422: Align createFile signature with interface (@kesselb)
- #1300: CalDAV/PropFilter: set empty array as default value for time-range (@simonspa)
- #1060: Add INodeByPath interface to allow optimizing getNodeForPath (@icewind1991)
Release notes
Open source →- #1488: fix: The WebDAV response element must only contain
propstatORstatuselement(s) (@susnux) - #1481: docs: fix type definition for oldObject (@kesselb)
- #1457: Fix PHPDoc to allow getChanges for sync to return null (@tcitworld)
- #1446: declare addressDataProperties to avoid PHP 8.2 deprecation notice (@phil-davis)
- #1432: Remove unused itipMessage property (@come-nc)
- #1422: Align createFile signature with interface (@kesselb)
- #1300: CalDAV/PropFilter: set empty array as default value for time-range (@simonspa)
- #1060: Add INodeByPath interface to allow optimizing getNodeForPath (@icewind1991)
- #1488: fix: The WebDAV response element must only contain
-
4.4.027 Jun 2022Release notes
Open source →4.4.0 (2022-06-27)
- #1396: Include "before" and "after" copy events (@jvillafanez)
- #1404: Fix encoding detection on PHP 8.1 (@come-nc)
Release notes
Open source →- #1396: Include "before" and "after" copy events (@jvillafanez)
- #1404: Fix encoding detection on PHP 8.1 (@come-nc)
-
4.3.120 Jan 2022Release notes
Open source →4.3.1 (2022-01-20)
- #1385: fix: ensure first argument on strpos is a string (@DeepDiver1975)
Release notes
Open source →- #1385: fix: ensure first argument on strpos is a string (@DeepDiver1975)
-
4.3.014 Dec 2021Release notes
Open source →4.3.0 (2021-12-14)
- #1284: A more secure and generalized approach for PDO Basic Auth Backend (@lightbluetom)
Release notes
Open source →- #1284: A more secure and generalized approach for PDO Basic Auth Backend (@lightbluetom)
-
4.2.309 Dec 2021Release notes
Open source →4.2.3 (2021-12-09)
- #1375: revert 1365 'add params for put interface' (@phil-davis)
Note: the change in #1365 was not strictly backward-compatible (BC). This release reverts that change, so that the 4.2.* patch release series is truly BC.
-
4.2.209 Dec 2021Release notes
Open source →- #1248: CalDAV to sync properly when limit is set in PDO backend (@nhirokinet)
- #1365: add params for put interface (@yrong)
- #1372: Allow psr/log major versions 2 and 3 as dependencies (@fezfez)
-
4.2.130 Nov 2021Release notes
Open source →- #1371: Fix phpdoc return type of findByUri in BackendInterface (@come-nc)
-
4.2.017 Nov 2021Release notes
Open source →- #1317: Add primary key to schedulingobjects table in pgsql.calendars.sql example (@perguth)
- #1335: don't remove lock on dir when deleting a child node (@tbsmark86)
- #1341: Add new event "afterCreateCollection" like "afterCreateFile" (@woutersamaey)
- #1344: Fix propfind type of subnodes with depth >= 1 (@n-peugnet)
- #1355: Make sure a {DAV:}prop is not empty (@kesselb)
- #1356: Switch CI to GitHub Actions (@kesselb)
- #1362: Adjust PHPdoc return types (@phil-davis)
- #1354: Fix deprecated usages on PHP 8.1 (@cedric-anne)
-
4.1.512 Feb 2021Release notes
Open source →- #1322: Fixes for addressbook-query filters (@mstilkerich)
- #1329: Correctly process a POST with no Content-Type specified plus phpstan level 1 (@phil-davis)
-
4.1.412 Jan 2021Release notes
Open source →- #1312: Reduce package size by ignoring test and other non-run-time files
- #1316: Minor code changes for latest PHP cs-fixer
- #1319: Fix "Trying to access array offset on value of type bool"
- #1321: Complete checks for non existing/null/false time-range array keys
-
4.1.309 Nov 2020Release notes
Open source →- #1306: Return 409 when trying to PUT a file into a non-existent collection
-
4.1.204 Oct 2020 -
4.1.113 Jul 2020Release notes
Open source →- Fix PHPdoc of Tree:move method
- Allow using custom SAPI implementations
- Include baseUri in lock responses
-
4.1.020 Mar 2020Release notes
Open source →- Support PHP 7.4
- Drop support for PHP 7.0
- CalDAV: send MIME-Version header in scheduling emails
-
4.0.310 Jan 2020Release notes
Open source →- DAV: Streaming PROPFIND server implementation
- DAVACL: Fix uppercase of NotAuthenticated class
- CalDAV: Return only calendar objects owned by principal itself
- CalDAV: Convert scheduling object data from resource to string
- Browser Plugin: Fix content type guessing if setBaseUri is set to a folder
-
4.0.219 Oct 2019 -
4.0.120 Aug 2019Release notes
Open source →- TemporaryFileFilterPlugin: Fix Strict Error
- CalDAV\Plugin: Fix null path
-
4.0.001 Jul 2019Release notes
Open source →- Lock: Support lock timeout value Infinity
- Lock: Hide lock token in lock discovery when not set
- BrowserPlugin: Show display name of nodes
- FSExt: Fix folder (file) move issue if rename fails
- IMipPlugin: Add sender name in invite mail headers
- IMipPlugin: Fix email subject and recipient
- Fix issues with empty content-type header
- Apply new code style
- Fix for litmus test suite - test case: props propfind_invalid2
- Depend on sabre/xml 2.0.1
- Depend on sabre/http 5.0
- Now supports PHP 7.3
- Now requires PHP 7.
- Using
strict_typesin every php file. - #896: Using the [sabre/event][evnt]
WildcardEmitter. This allows event handlers to listen to events using a wildcard. - #896: Event listeners that in the past listened to
beforeMethodormethodno longer get called. They must listen tobeforeMethod:*andmethod:*now. - #322: Imap authentication backend. (@c0d3z3r0).
- #889: Support for selective property querying in CardDAV's addressbook-query. (@DeepDiver1975).
- #982: Make sure that files that are siblings of directories, are reported as files (@nickvergessen)
-
4.0.0-beta108 May 2019 pre-releaseRelease notes
Open source →- Lock: Support lock timeout value Infinity
- Lock: Hide lock token in lock discovery when not set
- BrowserPlugin: Show display name of nodes
- FSExt: Fix folder (file) move issue if rename fails
- IMipPlugin: Add sender name in invite mail headers
- IMipPlugin: Fix email subject and recipient
-
4.0.0-alpha515 Oct 2018 pre-release -
4.0.0-alpha412 Oct 2018 pre-releaseRelease notes
Open source →- Apply new code style
- Fix for litmus test suite - test case: props propfind_invalid2
- Depend on sabre/xml 2.0.1
-
4.0.0-alpha305 Oct 2018 pre-release -
4.0.0-alpha227 Sep 2018 pre-release -
3.3.0-alpha105 Jun 2018 pre-releaseRelease notes
Open source →- SimpleCollection can now take arrays and strings as argument for super simple tree creation.
- Added
Sabre\DAV\Server::start(). This replaces::exec().::exec()is now deprecated, but we're keeping it around for a year or two to make the transition easier. getChildren()function in any collection may now return an iterator instead of an array. This can result in memory savings for large collections.Tree::getChildren()now returns an Iterator instead of an array.- Added
$overrideNameto allSabre\DAV\FSandSabre\DAV\FSExtclasses, so users can specify under what name these nodes show up in the tree. - #889 Added support for filtering vCard properties in the addressbook-query REPORT (@DeepDiver1975).
- #918: Add a lot of sqlite indexes. This should speed up sqlite-based installations quite a bit.
- #982: Make sure that files that are siblings of directories, are reported as files (@nickvergessen)
- #1058: Don't open file resource on HEAD request (@icewind1991)
- #1031: Fix copyNode for case of file named 0 (@phil-davis)
-
3.2.319 Oct 2018Release notes
Open source →- #982: Make sure that files that are siblings of directories, are reported as files (@nickvergessen)
-
3.2.215 Feb 2017Release notes
Open source →- #943: Fix CardDAV XML reporting bug, which was affecting several CardDAV clients. Bug was introduced in 3.2.1.
- The zip release ships with [sabre/vobject 4.1.2][vobj], [sabre/http 4.2.2][http], [sabre/event 3.0.0][evnt], [sabre/uri 1.2.0][uri] and [sabre/xml 1.5.0][xml].
-
3.2.128 Jan 2017Release notes
Open source →- #877: Fix for syncing large calendars when using the Sqlite PDO backend. (@theseer).
- #889 Added support for filtering vCard properties in the addressbook-query REPORT (@DeepDiver1975).
- The zip release ships with [sabre/vobject 4.1.2][vobj], [sabre/http 4.2.2][http], [sabre/event 3.0.0][evnt], [sabre/uri 1.2.0][uri] and [sabre/xml 1.5.0][xml].
-
3.2.028 Jun 2016Release notes
Open source →- The default ACL rules allow an unauthenticated user to read information about nodes that don't have their own ACL defined. This was a security problem.
- The zip release ships with [sabre/vobject 4.1.0][vobj], [sabre/http 4.2.1][http], [sabre/event 3.0.0][evnt], [sabre/uri 1.1.0][uri] and [sabre/xml 1.4.2][xml].
-
3.2.0-beta121 May 2016 pre-releaseRelease notes
Open source →- #833: Calendars throw exceptions when the sharing plugin is not enabled.
- #834: Return vCards exactly as they were stored if we don't need to convert in between versions.
- The zip release ships with [sabre/vobject 4.1.0][vobj], [sabre/http 4.2.1][http], [sabre/event 3.0.0][evnt], [sabre/uri 1.1.0][uri] and [sabre/xml 1.4.1][xml].
-
3.2.0-alpha109 May 2016 pre-releaseRelease notes
Open source →- Database changes for CalDAV. If you are using the CalDAV PDO backends, you
must migrate. Run
./bin/migrateto32.phpfor more info. - Support for WebDAV Resource Sharing, an upcoming standard.
- Added support for sharing in the CalDAV PDO backend! Users can now invite others to their calendar and give them read/read-write access!
- #397: Support for PSR-3. You can now log exceptions with your favourite psr3-compatible logging tool.
- #825: Actual proper, tested support for PostgreSQL. We require version 9.5.
- Removed database migration script for sabre/dav 1.7. To update from that version you now first need to update to sabre/dav 3.1.
- Removed deprecated function:
Sabre\DAV\Auth\Plugin::getCurrentUser(). - #774: Fixes for getting free disk space on Windows.
- #803: Major changes in the sharing API. If you were using an old sabre/dav sharing api, head to the website for more detailed migration notes.
- #657: Support for optional auth using
{DAV:}unauthorizedand{DAV:}allprivileges. This allows you to assign a privilege to a resource, allowing non-authenticated users to access it. For instance, this could allow you to create a public read-only collection. - #812 #814: ICS/VCF exporter now includes a more useful filename in its
Content-Dispositionheader. (@Xenopathic). - #801: BC break: If you were using the
Hrefobject before, it's behavior now changed a bit, andLocalHrefwas added to replace the old, default behavior ofHref. See the migration doc for more info. - Removed
Sabre\DAVACL\Plugin::$allowAccessToNodesWithoutACLsetting. Instead, you can provide a set of default ACL rules withSabre\DAVACL\Plugin::setDefaultAcl(). - Introduced
Sabre\DAVACL\ACLTraitwhich contains a default implementation ofSabre\DAV\IACLwith some sane defaults. We're using this trait all over the place now, reducing the amount of boilerplate. - Plugins can now control the "Supported Privilege Set".
- Added Sharing, ICSExport and VCFExport plugins to
groupwareserver.phpexample. - The
{DAV:}allprivilege is now no longer abstract, so it can be assigned directly. We're using the{DAV:}allprivilege now in a lot of cases where we before assigned both{DAV:}readand{DAV:}write. - Resources that are not collections no longer support the
{DAV:}bindand{DAV:}unbindprivileges. - Corrected the CalDAV-scheduling related privileges.
- Doing an
UNLOCKno longer requires the{DAV:}write-contentprivilege. - Added a new
getPrincipalByUriplugin event. Allowing plugins to request quickly where a principal lives on a server. - Renamed
phpunit.xmltophpunit.xml.distto make local modifications easy. - Functionality from
IShareableCalendaris merged intoISharedCalendar. - #751: Fixed XML responses from failing
MKCOLrequests. - #600: Support for
principal-matchACLREPORT. - #599: Support for
acl-principal-prop-setACLREPORT. - #798: Added an index on
firstoccurencefield in MySQL CalDAV backend. This should speed up common calendar-query requests. - #759: DAV\Client is now able to actually correctly resolve relative urls.
- #671: We are no longer checking the
read-free-busyprivilege on individual calendars during freebusy operations in the scheduling plugin. Instead, we check theschedule-query-freebusyprivilege on the target users' inbox, which validates access for the entire account, per the spec. - The zip release ships with [sabre/vobject 4.1.0][vobj], [sabre/http 4.2.1][http], [sabre/event 3.0.0][evnt], [sabre/uri 1.1.0][uri] and [sabre/xml 1.4.1][xml].
- Database changes for CalDAV. If you are using the CalDAV PDO backends, you
must migrate. Run
-
3.1.519 Oct 2018Release notes
Open source →- Fixed: Creating a new calendar on some MySQL configurations caused an error.
- #889 Added support for filtering vCard properties in the addressbook-query REPORT (@DeepDiver1975).
-
3.1.429 May 2016Release notes
Open source →- #834: Backport from
master: Return vCards exactly as they were stored if we don't need to convert in between versions. This should speed up many large addressbook syncs sometimes up to 50%. - The zip release ships with [sabre/vobject 4.1.0][vobj], [sabre/http 4.2.1][http], [sabre/event 3.0.0][evnt], [sabre/uri 1.1.0][uri] and [sabre/xml 1.4.2][xml].
- #834: Backport from
-
3.1.307 Apr 2016Release notes
Open source →- Set minimum libxml version to 2.7.0 in
composer.json. - #805: It wasn't possible to create calendars that hold events, journals and
todos using MySQL, because the
componentscolumn was 1 byte too small. - The zip release ships with [sabre/vobject 4.1.0][vobj], [sabre/http 4.2.1][http], [sabre/event 3.0.0][evnt], [sabre/uri 1.1.0][uri] and [sabre/xml 1.4.1][xml].
- Set minimum libxml version to 2.7.0 in
-
3.1.213 Mar 2016Release notes
Open source →- #784: Sync logs for address books were not correctly cleaned up after deleting them.
- #787: Cannot use non-seekable stream-wrappers with range requests.
- Faster XML parsing and generating due to sabre/xml update.
- #793: The Sqlite schema is now more strict and more similar to the MySQL schema. This solves a problem within Baikal.
- The zip release ships with [sabre/vobject 4.0.3][vobj], [sabre/http 4.2.1][http], [sabre/event 3.0.0][evnt], [sabre/uri 1.1.0][uri] and [sabre/xml 1.4.1][xml].
-
3.1.125 Jan 2016Release notes
Open source →- #755: The brower plugin and some operations would break when scheduling and delegation would both be enabled.
- #757: A bunch of unittest improvements (@jakobsack).
- The zip release ships with [sabre/vobject 4.0.2][vobj], [sabre/http 4.2.1][http], [sabre/event 3.0.0][evnt], [sabre/uri 1.0.1][uri] and [sabre/xml 1.3.0][xml].
-
3.1.006 Jan 2016Release notes
Open source →- Better error message when the browser plugin is not enabled.
- Added a super minimal server example.
- #730: Switched all mysql tables to
utf8mb4character set, allowing you to use emoji in some tables where you couldn't before. - #710: Provide an Auth backend that acts as a helper for people implementing OAuth2 Bearer token. (@fkooman).
- #729: Not all calls to
Sabre\DAV\Tree::getChildren()were properly cached. - #727: Added another workaround to make CalDAV work for Windows 10 clients.
- #742: Fixes to make sure that vobject 4 is correctly supported.
- #726: Better error reporting in
Client::propPatch. We're now throwing exceptions. - #608: When a HTTP error is triggered during
Client:propFind, we're now throwingSabre\HTTP\ClientHttpExceptioninstead ofSabre\DAV\Exception. This new exception contains a LOT more information about the problem. - #721: Events are now handled in the correct order for
COPYrequests. Before this subtle bugs could appear that could cause data-loss. - #747: Now throwing exceptions and setting the HTTP status to 500 in subtle cases where no other plugin set a correct HTTP status.
- #686: Corrected PDO principal backend's findByURI for email addresses that don't match the exact capitalization.
- #512: The client now has it's own
User-Agent. - #720: Some browser improvements.
- The zip release ships with [sabre/vobject 4.0.1][vobj], [sabre/http 4.2.1][http], [sabre/event 3.0.0][evnt], [sabre/uri 1.0.1][uri] and [sabre/xml 1.3.0][xml].
-
3.1.0-alpha204 Sep 2015 pre-releaseRelease notes
Open source →- Massive calendars and addressbooks should see a big drop in peak memory usage.
- Fixed a privilege bug in the availability system.
- #697: Added a "tableName" member to the PropertyStorage PDO backend. (@Frzk).
- #699: PostgreSQL fix for the Locks PDO backend. (@TCKnet)
- Removed the
simplefsserver.phpexample file. It's not simple enough. - #703: PropPatch in client is not correctly encoded.
- #709: Throw exception when running into empty
supported-calendar-component-set. - #711: Don't trigger deserializers for empty elements in
{DAV:}prop. This fixes issues when using sabre/dav as a client. - The zip release ships with [sabre/vobject 4.0.0-alpha2][vobj], [sabre/http 4.1.0][http], [sabre/event 2.0.2][evnt], [sabre/uri 1.0.1][uri] and [sabre/xml 1.2.0][xml].
-
3.1.0-alpha119 Jul 2015 pre-releaseRelease notes
Open source →- Now requires PHP 5.5
- Upgraded to vobject 4, which is a lot faster.
- Support for PHP 7.
- #690: Support for
calendar-availability, draft 05. [reference][calendar-availability]. - #691: Workaround for broken Windows Phone client.
- The zip release ships with [sabre/vobject 4.0.0-alpha1][vobj], [sabre/http 4.0.0][http], [sabre/event 2.0.2][evnt], [sabre/uri 1.0.1][uri] and [sabre/xml 1.1.0][xml].
-
3.0.907 Apr 2016Release notes
Open source →- Set minimum libxml version to 2.7.0 in
composer.json. - #727: Added another workaround to make CalDAV work for Windows 10 clients.
- #805: It wasn't possible to create calendars that hold events, journals and
todos using MySQL, because the
componentscolumn was 1 byte too small. - The zip release ships with [sabre/vobject 3.5.1][vobj], [sabre/http 4.2.1][http], [sabre/event 2.0.2][evnt], [sabre/uri 1.1.0][uri] and [sabre/xml 1.4.1][xml].
- Set minimum libxml version to 2.7.0 in
-
3.0.812 Mar 2016Release notes
Open source →- #784: Sync logs for address books were not correctly cleaned up after deleting them.
- #787: Cannot use non-seekable stream-wrappers with range requests.
- Faster XML parsing and generating due to sabre/xml update.
- The zip release ships with [sabre/vobject 3.5.0][vobj], [sabre/http 4.2.1][http], [sabre/event 2.0.2][evnt], [sabre/uri 1.1.0][uri] and [sabre/xml 1.4.1][xml].
-
3.0.712 Jan 2016Release notes
Open source →- #752: PHP 7 support for 3.0 branch. (@DeepDiver1975)
- The zip release ships with [sabre/vobject 3.5.0][vobj], [sabre/http 4.2.1][http], [sabre/event 2.0.2][evnt], [sabre/uri 1.0.1][uri] and [sabre/xml 1.3.0][xml].
-
3.0.604 Jan 2016Release notes
Open source →- #730: Switched all mysql tables to
utf8mb4character set, allowing you to use emoji in some tables where you couldn't before. - #729: Not all calls to
Sabre\DAV\Tree::getChildren()were properly cached. - #734: Return
418 I'm a Teapotwhen generating a multistatus response that has resources with no returned properties. - #740: Bugs in
migrate20.phpscript. - The zip release ships with [sabre/vobject 3.4.8][vobj], [sabre/http 4.1.0][http], [sabre/event 2.0.2][evnt], [sabre/uri 1.0.1][uri] and [sabre/xml 1.3.0][xml].
- #730: Switched all mysql tables to
-
3.0.515 Sep 2015Release notes
Open source →- #704: Fixed broken uri encoding in multistatus responses. This affected at least CyberDuck, but probably also others.
- The zip release ships with [sabre/vobject 3.4.7][vobj],
- The zip release ships with [sabre/vobject 3.4.7][vobj], [sabre/http 4.1.0][http], [sabre/event 2.0.2][evnt], [sabre/uri 1.0.1][uri] and [sabre/xml 1.2.0][xml].
-
3.0.404 Sep 2015Release notes
Open source →- #703: PropPatch in client is not correctly encoded.
- #709: Throw exception when running into empty
supported-calendar-component-set. - #711: Don't trigger deserializers for empty elements in
{DAV:}prop. This fixes issues when using sabre/dav as a client. - #705: A
MOVErequest that gets prevented from deleting the source resource will still remove the target resource. Now all events are triggered before any destructive operations. - The zip release ships with [sabre/vobject 3.4.7][vobj], [sabre/http 4.1.0][http], [sabre/event 2.0.2][evnt], [sabre/uri 1.0.1][uri] and [sabre/xml 1.2.0][xml].
-
3.0.306 Aug 2015Release notes
Open source →- #700: Digest Auth fails on
HEADrequests. - Fixed example files to no longer use now-deprecated realm argument.
- The zip release ships with [sabre/vobject 3.4.6][vobj], [sabre/http 4.0.0][http], [sabre/event 2.0.2][evnt], [sabre/uri 1.0.1][uri] and [sabre/xml 1.1.0][xml].
- #700: Digest Auth fails on
-
3.0.221 Jul 2015Release notes
Open source →- #657: Migration script would break when coming a cross an iCalendar object with no UID.
- #691: Workaround for broken Windows Phone client.
- Fixed a whole bunch of incorrect php docblocks.
- The zip release ships with [sabre/vobject 3.4.5][vobj], [sabre/http 4.0.0][http], [sabre/event 2.0.2][evnt], [sabre/uri 1.0.1][uri] and [sabre/xml 1.1.0][xml].
-
3.0.102 Jul 2015Release notes
Open source →- #674: Postgres sql file fixes. (@davesouthey)
- #677: Resources with the name '0' would not get retrieved when using
Depth: infinityin aPROPFINDrequest. - #680: Fix 'autoprefixing' of dead
{DAV:}hrefproperties. - #675: NTLM support in DAV\Client. (@k42b3)
- The zip release ships with [sabre/vobject 3.4.5][vobj], [sabre/http 4.0.0][http], [sabre/event 2.0.2][evnt], [sabre/uri 1.0.1][uri] and [sabre/xml 1.1.0][xml].
-
3.0.002 Jun 2015Release notes
Open source →- No changes since last beta.
- The zip release ships with [sabre/vobject 3.4.5][vobj], [sabre/http 4.0.0][http], [sabre/event 2.0.2][evnt], [sabre/uri 1.0.1][uri] and [sabre/xml 1.0.0][xml].
-
3.0.0-beta329 May 2015 pre-releaseRelease notes
Open source →- Fixed deserializing href properties with no value.
- Fixed deserializing
{DAV:}propstatwithout a{DAV:}prop. - #668: More information about vcf-export-plugin in browser plugin.
- #669: Add export button to browser plugin for address books. (@mgee)
- #670: multiget report hrefs were not decoded.
- The zip release ships with [sabre/vobject 3.4.4][vobj], [sabre/http 4.0.0][http], [sabre/event 2.0.2][evnt], [sabre/uri 1.0.1][uri] and [sabre/xml 1.0.0][xml].
-
3.0.0-beta227 May 2015 pre-releaseRelease notes
Open source →- A node's properties should not overwrite properties that were already set.
- Some uris were not correctly encoded in notifications.
- The zip release ships with [sabre/vobject 3.4.4][vobj], [sabre/http 4.0.0][http], [sabre/event 2.0.2][evnt], [sabre/uri 1.0.1][uri] and [sabre/xml 1.0.0][xml].
-
3.0.0-beta126 May 2015 pre-releaseRelease notes
Open source →migrate22.phpis now calledmigrate30.php.- Using php-cs-fixer for automated coding standards enforcement and fixing.
- #660: principals could break html output.
- #662: Fixed several bugs in the
sharerequest parser. - #665: Fix a bug in serialization of complex properties in the proppatch request in the client.
- #666: expand-property report did not correctly prepend the base uri when generating uris, this caused delegation to break.
- #659: Don't throw errors when when etag-related checks are done on collections.
- Fully supporting the updated
Preferheader syntax, as defined in [rfc7240][rfc7240]. - The zip release ships with [sabre/vobject 3.4.3][vobj], [sabre/http 4.0.0][http], [sabre/event 2.0.2][evnt], [sabre/uri 1.0.1][uri] and [sabre/xml 1.0.0][xml].
-
3.0.0-alpha119 May 2015 pre-releaseRelease notes
Open source →- It's now possible to get all property information from files using the browser plugin.
- Browser plugin will now show a 'calendar export' button when the ics-export plugin is enabled.
- Some nodes that by default showed the current time as their last modification time, now no longer has a last modification time.
- CardDAV namespace was missing from default namespaceMap.
- #646: Properties can now control their own HTML output in the browser plugin.
- #646: Nicer HTML output for the
{DAV:}aclproperty. - Browser plugin no longer shows a few properties that take up a lot of space, but are likely not really interesting for most users.
- #654: Added a collection,
Sabre\DAVACL\FS\HomeCollectionfor automatically creating a private home collection per-user. - Changed all MySQL columns from
VARCHARtoVARBINARYwhere possible. - Improved older migration scripts a bit to allow easier testing.
- The zip release ships with [sabre/vobject 3.4.3][vobj], [sabre/http 4.0.0-alpha3][http], [sabre/event 2.0.2][evnt], [sabre/uri 1.0.1][uri] and [sabre/xml 0.4.3][xml].
-
2.1.1107 Oct 2016Release notes
Open source →- #805: It wasn't possible to create calendars that hold events, journals and
todos using MySQL, because the
componentscolumn was 1 byte too small. - The zip release ships with [sabre/vobject 3.5.3][vobj], [sabre/http 3.0.5][http], and [sabre/event 2.0.2][evnt].
- #805: It wasn't possible to create calendars that hold events, journals and
todos using MySQL, because the
-
2.1.1010 Mar 2016Release notes
Open source →- #784: Sync logs for address books were not correctly cleaned up after deleting them.
- The zip release ships with [sabre/vobject 3.5.0][vobj], [sabre/http 3.0.5][http], and [sabre/event 2.0.2][evnt].
-
2.1.925 Jan 2016Release notes
Open source →- #674: PHP7 support (@DeepDiver1975).
- The zip release ships with [sabre/vobject 3.5.0][vobj], [sabre/http 3.0.5][http], and [sabre/event 2.0.2][evnt].
-
2.1.804 Jan 2016Release notes
Open source →- #729: Fixed a caching problem in the Tree object.
- #740: Bugs in
migrate20.phpscript. - The zip release ships with [sabre/vobject 3.4.8][vobj], [sabre/http 3.0.5][http], and [sabre/event 2.0.2][evnt].