-
-
Notifications
You must be signed in to change notification settings - Fork 146
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Set last-modified time support? #19
Comments
Hi Jonas, (found a related link here http://stackoverflow.com/a/12643147/19166) Writing a property that is named 'getlastmodified' feels wrong. I have seen objections that this may confuse clients that rely on |
Thanks for the informative input and link, Martin. Yes, I also initially went searching for a corresponding So apparently one must handle getlastmodified for it to work, but it could of course easily be extended to cover plain lastmodified requests as well. Doing another I'm going to be mostly away for the next week or two, but will take a look at making a configurable implementation when time permits. I'm thinking something along the lines of adding support for a |
Add configurable support for setting last modified file/directory timestamps (issue #19)
Hi Martin |
Hi Martin
First of all sorry if this should not go under issues, as it may be more a question or feature request than a bug/issue.
One of our users tried out
rsync -a localdir mntdir
against an OSX Finder-mounted wsgidav volume and it actually mostly works, except the file time stamps are not transferred. Thus repeating the rsync call does not skip the already transferred files as intended. I repeated the test with fusedav from Linux and got similar results. Calling a simpletouch
on a file in the mount also gets rejected with "Operation not supported".As far as I can tell from my tracing this is due to wsgidav refusing PROPPATCH calls with the {DAV:}getlastmodified argument. The relevant doc string in setPropertyValue of dav_provider correctly states that any {DAV:} property modification requests result in a HTTP_FORBIDDEN reply and that resource providers may override the method to "update supported custom live properties".
I did a quick test and added such set {DAV:}getlastmodified support directly in (fs_)dav_handler and then
touch
,rsync -t
andrsync -a
all work as expected. However, I'm not really sure if it belongs there or if it is even compliant with the WebDAV spec:http://tools.ietf.org/html/rfc4918#section-15.7
It would be quite cool with rsync support for our purpose, but maybe I'm overlooking some problems it might introduce? Would it make sense to properly add such general set modification time support and maybe only enable it with a conf setting? I think I can give it a shot and send a pull request if so.
Or is that something you consider in the custom live properties category and better left for a derived fs resource provider?
Cheers, Jonas
The text was updated successfully, but these errors were encountered: