[Pkg-owncloud-commits] [php-sabredav] 08/16: Merge branch '2.0' into 2.1

David Prévot taffit at moszumanska.debian.org
Sat Sep 5 15:23:58 UTC 2015


This is an automated email from the git hooks/post-receive script.

taffit pushed a commit to branch 2.1
in repository php-sabredav.

commit 39ca954c440ad5e347b0d55716a4d8e7c0d01460
Merge: 393dc0e 3f3ef57
Author: Evert Pot <me at evertpot.com>
Date:   Fri Sep 4 17:15:20 2015 +0200

    Merge branch '2.0' into 2.1
    
    Conflicts:
    	ChangeLog.md
    	lib/DAV/CorePlugin.php
    	lib/DAV/Version.php
    	tests/Sabre/DAV/ServerCopyMoveTest.php

 ChangeLog.md                                    |  12 +++
 lib/DAV/Collection.php                          |   2 +-
 lib/DAV/CorePlugin.php                          |  11 ++-
 tests/Sabre/CalDAV/GetEventsByTimerangeTest.php |  16 ++--
 tests/Sabre/DAV/HttpMoveTest.php                | 119 ++++++++++++++++++++++++
 tests/Sabre/DAV/HttpPutTest.php                 |   2 +-
 tests/Sabre/DAV/Mock/Collection.php             |  38 +++-----
 tests/Sabre/DAV/Mock/File.php                   |   6 ++
 tests/Sabre/DAV/ServerCopyMoveTest.php          |  68 --------------
 9 files changed, 171 insertions(+), 103 deletions(-)

diff --cc ChangeLog.md
index 804cb68,0b39cce..9fc01e8
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@@ -1,188 -1,16 +1,200 @@@
  ChangeLog
  =========
  
++
 +2.1.6 (2015-07-21)
 +------------------
 +
 +* #657: Migration script would break when coming a cross an iCalendar object
 +  with no UID.
 +* #691: Workaround for broken Windows Phone client.
 +* The zip release ships with [sabre/vobject 3.4.5][vobj],
 +  [sabre/http 3.0.5][http], and [sabre/event 2.0.2][evnt].
 +
 +
 +2.1.5 (2015-07-11)
 +------------------
 +
 +* #677: Resources with the name '0' would not get retrieved when using
 +  `Depth: infinity` in a `PROPFIND` request.
 +* The zip release ships with [sabre/vobject 3.4.5][vobj],
 +  [sabre/http 3.0.5][http], and [sabre/event 2.0.2][evnt].
 +
 +
 +2.1.4 (2015-05-25)
 +------------------
 +
 +* #651: Double-encoded path in the browser plugin. Should fix a few broken
 +  links in some setups.
 +* #650: Correctly cleaning up change info after deleting calendars (@ErrOrnAmE).
 +* #658: Updating `schedule-calendar-default-URL` does not work well, so we're
 +  disabling it until there's a better fix.
 +* The zip release ships with [sabre/vobject 3.4.3][vobj],
 +  [sabre/http 3.0.5][http], and [sabre/event 2.0.2][evnt].
 +
 +
 +2.1.3 (2015-02-25)
 +------------------
 +
 +* #586: `SCHEDULE-STATUS` should not contain a reason-phrase.
 +* #539: Fixed a bug related to scheduling in shared calendars.
 +* #595: Support for calendar-timezone in iCalendar exports.
 +* #581: findByUri would send empty prefixes to the principal backend (@soydeedo)
 +* #611: Escaping a bit more HTML output in the browser plugin. (@LukasReschke)
 +* #610: Don't allow discovery of arbitrary files using `..` in the browser
 +  plugin (@LukasReschke).
 +* Browser plugin now shows quota properties.
 +* #612: PropertyStorage didn't delete properties from nodes when a node's
 +  parents get deleted.
 +* #581: Fixed problems related to finding attendee information during
 +  scheduling.
 +* The zip release ships with [sabre/vobject 3.4.2][vobj],
 +  [sabre/http 3.0.4][http], and [sabre/event 2.0.1][evnt].
 +
 +
 +2.1.2 (2014-12-10)
 +------------------
 +
 +* #566: Another issue related to the migration script, which would cause
 +  scheduling to not work well for events that were already added before the
 +  migration.
 +* #567: Doing freebusy requests on accounts that had 0 calendars would throw
 +  a `E_NOTICE`.
 +* #579: Browser plugin can throw exception for a few resourcetypes that didn't
 +  have an icon defined.
 +* The zip release ships with [sabre/vobject 3.3.4][vobj],
 +  [sabre/http 3.0.4][http], and [sabre/event 2.0.1][evnt].
 +
 +
 +2.1.1 (2014-11-22)
 +------------------
 +
 +* #561: IMip Plugin didn't strip mailto: from email addresses.
 +* #566: Migration process had 2 problems related to adding the `uid` field
 +  to the `calendarobjects` table.
 +* The zip release ships with [sabre/vobject 3.3.4][vobj],
 +  [sabre/http 3.0.2][http], and [sabre/event 2.0.1][evnt].
 +
 +
 +2.1.0 (2014-11-19)
 +------------------
 +
 +* #541: CalDAV PDO backend didn't respect overridden PDO table names.
 +* #550: Scheduling invites are no longer delivered into shared calendars.
 +* #554: `calendar-multiget` `REPORT` did not work on inbox items.
 +* #555: The `calendar-timezone` property is now respected for floating times
 +  and all-day events in the `calendar-query`, `calendar-multiget` and
 +  `free-busy-query` REPORTs.
 +* #555: The `calendar-timezone` property is also respected for scheduling
 +  free-busy requests.
 +* #547: CalDAV system too aggressively 'corrects' incoming iCalendar data, and
 +  as a result doesn't return an etag for common cases.
 +* The zip release ships with [sabre/vobject 3.3.4][vobj],
 +  [sabre/http 3.0.2][http], and [sabre/event 2.0.1][evnt].
 +
 +
 +2.1.0-alpha2 (2014-10-23)
 +-------------------------
 +
 +* Added: calendar-user-address-set to default principal search properties
 +  list. This should fix iOS attendee autocomplete support.
 +* Changed: Moved all 'notifications' functionality from `Sabre\CalDAV\Plugin`
 +  to a new plugin: `Sabre\CalDAV\Notifications\Plugin`. If you want to use
 +  notifications-related functionality, just add this plugin.
 +* Changed: Accessing the caldav inbox, outbox or notification collection no
 +  longer triggers getCalendarsForUser() on backends.
 +* #533: New invites are no longer delivered to taks-only calendars.
 +* #538: Added `calendarObjectChange` event.
 +* Scheduling speedups.
 +* #539: added `afterResponse` event. (@joserobleda)
 +* Deprecated: All the "tableName" constructor arguments for all the PDO
 +  backends are now deprecated. They still work, but will be removed in the
 +  next major sabredav version. Every argument that is now deprecated can now
 +  be accessed as a public property on the respective backends.
 +* #529: Added getCalendarObjectByUID to PDO backend, speeding up scheduling
 +  operations on large calendars.
 +* The zip release ships with [sabre/vobject 3.3.3][vobj],
 +  [sabre/http 3.0.2][http], and [sabre/event 2.0.1][evnt].
 +
 +
 +2.1.0-alpha1 (2014-09-23)
 +-------------------------
 +
 +* Added: Support for [rfc6638][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 upon `PUT`. 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`, and `afterMove` events.
 +* Changed: A few database changes for the CalDAV PDO backend. Make sure you
 +  run `bin/migrate21.php` to upgrade your database schema.
 +* Changed: CalDAV backends have a new method: `getCalendarObjectByUID`. This
 +  method MUST be implemented by all backends, but the `AbstractBackend` 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` and `Sabre\DAV\Tree\FileSystem`. All this
 +  functionality has been merged into `Sabre\DAV\Tree`.
 +* Changed: PrincipalBackend now has a findByUri method.
 +* Changed: `PrincipalBackend::searchPrincipals` has a new optional `test`
 +  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 a `Content-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` and `CALDAV: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 wherever `GET` 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][vobj],
 +  [sabre/http 3.0.0][http], and [sabre/event 2.0.0][evnt].
 +
 +
+ 2.0.9 (2015-09-04)
+ ------------------
+ 
+ * #705: A `MOVE` request 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.6][vobj],
+   [sabre/http 2.0.4][http], and [sabre/event 1.0.1][evnt].
+ 
+ 
++
  2.0.8 (2015-07-11)
  ------------------
  
diff --cc lib/DAV/CorePlugin.php
index 6340107,bc23310..c52a674
--- a/lib/DAV/CorePlugin.php
+++ b/lib/DAV/CorePlugin.php
@@@ -618,28 -632,26 +618,33 @@@ class CorePlugin extends ServerPlugin 
  
          if ($moveInfo['destinationExists']) {
  
 -            if (!$this->server->emit('beforeUnbind',[$moveInfo['destination']])) return false;
 +            if (!$this->server->emit('beforeUnbind', [$moveInfo['destination']])) return false;
+ 
+         }
+         if (!$this->server->emit('beforeUnbind',[$path])) return false;
+         if (!$this->server->emit('beforeBind',[$moveInfo['destination']])) return false;
++        if (!$this->server->emit('beforeMove', [$path, $moveInfo['destination']])) return false;
+ 
+         if ($moveInfo['destinationExists']) {
+ 
              $this->server->tree->delete($moveInfo['destination']);
 -            $this->server->emit('afterUnbind',[$moveInfo['destination']]);
 +            $this->server->emit('afterUnbind', [$moveInfo['destination']]);
  
          }
  
-         if (!$this->server->emit('beforeUnbind', [$path])) return false;
-         if (!$this->server->emit('beforeBind', [$moveInfo['destination']])) return false;
-         if (!$this->server->emit('beforeMove', [$path, $moveInfo['destination']])) return false;
          $this->server->tree->move($path, $moveInfo['destination']);
 -        $this->server->emit('afterUnbind',[$path]);
 -        $this->server->emit('afterBind',[$moveInfo['destination']]);
 +
 +        // Its important afterMove is called before afterUnbind, because it
 +        // allows systems to transfer data from one path to another.
 +        // PropertyStorage uses this. If afterUnbind was first, it would clean
 +        // up all the properties before it has a chance.
 +        $this->server->emit('afterMove', [$path, $moveInfo['destination']]);
 +        $this->server->emit('afterUnbind', [$path]);
 +        $this->server->emit('afterBind', [$moveInfo['destination']]);
  
          // If a resource was overwritten we should send a 204, otherwise a 201
 -        $response->setHeader('Content-Length','0');
 -        $response->setStatus($moveInfo['destinationExists']?204:201);
 +        $response->setHeader('Content-Length', '0');
 +        $response->setStatus($moveInfo['destinationExists'] ? 204 : 201);
  
          // Sending back false will interupt the event chain and tell the server
          // we've handled this method.

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-owncloud/php-sabredav.git



More information about the Pkg-owncloud-commits mailing list