[Cyberduck-trac] [Cyberduck] #7827: Upload strategy when editing remote file should be configurable
Cyberduck
trac at trac.cyberduck.io
Sat Mar 1 23:58:58 UTC 2014
#7827: Upload strategy when editing remote file should be configurable
------------------------------------+---------------------------
Reporter: konstantin khilkevitch | Owner: dkocher
Type: enhancement | Status: closed
Priority: normal | Milestone: 4.4.4
Component: webdav | Version: 4.4.3
Severity: normal | Resolution: worksforme
Keywords: webdav | Architecture: Intel
Platform: Mac OS X 10.9 |
------------------------------------+---------------------------
Description changed by konstantin khilkevitch:
Old description:
> When remote file that has been fetched for editing is uploaded back to a
> WebDAV server, Cyberduck does the file name shuffle (PUT / MOVE) (for
> safety? HTTP exchange example is below). Perhaps, this behaviour should
> be configurable; i.e. a user should be able to choose in prefs whether
> the shuffle is performed or the file is uploaded (PUT) directly.
>
> The reason for this suggestion is that WebDAV server may not be be able
> to retain versioning information for the target file when such a shuffle
> is performed.
>
> In my case, it is the WebDAV interface of the Box.com service. When
> edited file is put back on box.com server, file versioning information is
> lost.
>
> {{{
> PUT /dav/Stuff/Leo%20Ent%20Invoice%20No1.docx-
> f040baf0-5c30-45b4-8ab0-f697e42ba6d6 HTTP/1.1
> Expect: 100-continue
> Content-Length: 68151
> Content-Type: application/vnd.openxmlformats-
> officedocument.wordprocessingml.document
> Host: dav.box.com
> Connection: Keep-Alive
> User-Agent: Cyberduck/4.4.3 (Mac OS X/10.9.2) (x86_64)
> Authorization: Basic xxxxx
> HTTP/1.1 201 Created
> Server: nginx
> Date: Fri, 28 Feb 2014 20:43:03 GMT
> Content-Type: text/html; charset=UTF-8
> Content-Length: 0
> Connection: keep-alive
> ETag: "db66b2b5448ed1e752e80a493a9c850d7ada59be"
>
> MOVE /dav/Stuff/Leo%20Ent%20Invoice%20No1.docx-
> f040baf0-5c30-45b4-8ab0-f697e42ba6d6 HTTP/1.1
> Destination: https://dav.box.com/dav/Stuff/Leo%20Ent%20Invoice%20No1.docx
> Overwrite: T
> Host: dav.box.com
> Connection: Keep-Alive
> User-Agent: Cyberduck/4.4.3 (Mac OS X/10.9.2) (x86_64)
> Authorization: Basic xxxxx
> HTTP/1.1 204 No Content
> Server: nginx
> Date: Fri, 28 Feb 2014 20:43:05 GMT
> Content-Type: text/html; charset=UTF-8
> Content-Length: 0
> Connection: keep-alive
> Vary: Host
>
> HEAD /dav/Stuff/Leo%20Ent%20Invoice%20No1.docx HTTP/1.1
> Host: dav.box.com
> Connection: Keep-Alive
> User-Agent: Cyberduck/4.4.3 (Mac OS X/10.9.2) (x86_64)
> Authorization: Basic azJAc29mdHdhcmVhY3JvYmF0aWNzLmNvbTpzcDAwdG4hSw==
> HTTP/1.1 200 OK
> Server: nginx
> Date: Fri, 28 Feb 2014 20:44:14 GMT
> Content-Type: application/vnd.openxmlformats-
> officedocument.wordprocessingml.document
> Content-Length: 68151
> Connection: keep-alive
> Vary: Host
> Last-Modified: Fri, 28 Feb 2014 20:43:04 GMT
> ETag: "db66b2b5448ed1e752e80a493a9c850d7ada59be"
> }}}
New description:
When remote file that has been fetched for editing is uploaded back to a
WebDAV server, Cyberduck does the file name shuffle (PUT / MOVE) (for
safety? HTTP exchange example is below). Perhaps, this behaviour should be
configurable; i.e. a user should be able to choose in prefs whether the
shuffle is performed or the file is uploaded (PUT) directly.
The reason for this suggestion is that WebDAV server may not be be able to
retain versioning information for the target file when such a shuffle is
performed.
In my case, it is the WebDAV interface of the Box.com service. When edited
file is put back on box.com server, file versioning information is lost.
{{{
PUT /dav/Stuff/Leo%20Ent%20Invoice%20No1.docx-
f040baf0-5c30-45b4-8ab0-f697e42ba6d6 HTTP/1.1
Expect: 100-continue
Content-Length: 68151
Content-Type: application/vnd.openxmlformats-
officedocument.wordprocessingml.document
Host: dav.box.com
Connection: Keep-Alive
User-Agent: Cyberduck/4.4.3 (Mac OS X/10.9.2) (x86_64)
Authorization: Basic xxxxx
HTTP/1.1 201 Created
Server: nginx
Date: Fri, 28 Feb 2014 20:43:03 GMT
Content-Type: text/html; charset=UTF-8
Content-Length: 0
Connection: keep-alive
ETag: "db66b2b5448ed1e752e80a493a9c850d7ada59be"
MOVE /dav/Stuff/Leo%20Ent%20Invoice%20No1.docx-
f040baf0-5c30-45b4-8ab0-f697e42ba6d6 HTTP/1.1
Destination: https://dav.box.com/dav/Stuff/Leo%20Ent%20Invoice%20No1.docx
Overwrite: T
Host: dav.box.com
Connection: Keep-Alive
User-Agent: Cyberduck/4.4.3 (Mac OS X/10.9.2) (x86_64)
Authorization: Basic xxxxx
HTTP/1.1 204 No Content
Server: nginx
Date: Fri, 28 Feb 2014 20:43:05 GMT
Content-Type: text/html; charset=UTF-8
Content-Length: 0
Connection: keep-alive
Vary: Host
HEAD /dav/Stuff/Leo%20Ent%20Invoice%20No1.docx HTTP/1.1
Host: dav.box.com
Connection: Keep-Alive
User-Agent: Cyberduck/4.4.3 (Mac OS X/10.9.2) (x86_64)
Authorization: Basic xxxxxx
HTTP/1.1 200 OK
Server: nginx
Date: Fri, 28 Feb 2014 20:44:14 GMT
Content-Type: application/vnd.openxmlformats-
officedocument.wordprocessingml.document
Content-Length: 68151
Connection: keep-alive
Vary: Host
Last-Modified: Fri, 28 Feb 2014 20:43:04 GMT
ETag: "db66b2b5448ed1e752e80a493a9c850d7ada59be"
}}}
--
--
Ticket URL: <https://trac.cyberduck.io/ticket/7827#comment:4>
Cyberduck <http://cyberduck.io>
Libre FTP, SFTP, WebDAV, S3 & OpenStack Swift browser for Mac and Windows
More information about the Cyberduck-trac
mailing list