# Copyright (C) 2006, 2007, 2008, 2009 Werner Baumann # Copying and distribution of this file, with or without modification, are # permitted in any medium without royalty. What is new in davfs2 1.4.1 =========================== For this version I got many bug fixes, informations and suggestions for improvement from Dirk Arend of the German company AVM. Thanks a lot. davfs2 experimentally uses the non-standard method USERINFO to get information about available and used web space from the server. Some of the big German providers use it. davfs2 will now recognize when the server does not provide this information and avoid useless further attempts. When attempts to upload changed files fail because of problems with the network connection, new upload attempts will be done with increasing time intervals to not waist bandwith with to many useless attempts. When the davfs2 file system is unmounted while the connection is down changed files will stay in the cache and will be uploaded when the file system is mounted the next time. What is new in davfs2 1.4.0 =========================== With this release of davfs2 the default configuration has changed significantly to better match user experience and the behaviour of current WebDAV servers. This might cause your current configuration to no longer work with your server. Please carefully check for changes that might affect your davfs2 configuration. if_match_bug ------------ The default is now 0 (was 1) assuming your server does not have this bug. To the best of my knowledge this bug was only found in Apache with mod_dav and was fixed with release 2.2.8. But there are many older versions of Apache/mod_dav out there and you might have to manually insert this option in your davfs2.conf. use_expect100 ------------- The default is now 0 (was 1). This option rarely is of any use but frequently causes trouble with servers that don't support it (it is an optional protocol element). You only should set this option if you really need it and know it is working with your server. use_displayname --------------- This option has been removed. davfs2 no longer supports "displayname". This WebDAV property has been undefined nonsense from the beginning and the update of the WebDAV protocol only made it worse. The protocol explicitly states that this "name"(?) needs *not* to be unique. It is therefore impossible to use it as a file name in davfs2. delay_upload ------------ When this option is set to 0 seconds on closing a changed file it will be *synchronously* saved to the server and the upcall from the kernel will block until the upload is finished. But in case the upload fails temporarily the upcall from the kernel will return and davfs2 will try uploading later. This may make davfs2 very slow due too many unsuccessful attempts to upload. Only use "delay_upload 0" when your really need it and you have a reliable connection to the server. Command line (and fstab) options askauth, locks and useproxy ------------------------------------------------------------ These have been deprecated for many years and now have been removed. There are corresponding options in davfs2.conf. Command line (and fstab) option users ------------------------------------- davfs2 now supports the option users which allows any user to unmount a davfs2 file system. This is intended as a work around for systems without the mtab file. Known bugs (except those listed in BUGS) have been fixed. Last but not least the davfs2 project moved to Savannah: http://savannah.nongnu.org/projects/davfs2 What is new in davfs2 1.3.X =========================== - The format of entries in the secrets file is changed. It now uses the mount point as key, instead of the URL. The old format is still recognized by davfs2. - When mount.davfs gets signal SIGTERM, it will not try to upload dirty files to the server, but mark the cached files as dirty to avoid too slow reaction (and get SIGKILL). The files will be uploaded when mount.davfs runs the next time. - Added support for Neon 0.27 and 0.28, removed support for Neon 0.24. - Scanning the cache for changed files and locks improved to require less CPU-time. - Support for dav-quota. davfs2 will get available and used storage space from the server if the server supports RFC 4331. - Use conditional PUT and LOCK requests if possible. This is still turned off by default, as the most widely used server does not support it. But you should set "if_match_bug 0" for Apache 2.2.8 and newer, as well as for many other servers. This will save many unnecessary requests. Conditional LOCKs will not work with neon 0.25. You should update to neon 0.26, 0.27 or 0.28. - Reads environment variables https_proxy, http_proxy and all_proxy, if no proxy is configured in the config files. Reads environment variable no_proxy for hosts to access directly, not via proxy. - MIME-type is accessible as extended attribute (read-only). - Option to add custom headers. - Added very simple Cookie-support. Will not work with neon 0.25. You should update to neon 0.26, 0.27 or 0.28. - New options: precheck, ignore_dav_header, if_match_bug, delay_upload, drop_weak_etags and connect_timeout (1.3.3 only). See 'man davfs2.conf' for details. - Removed option idle_time. - WebDAV-property displayname is no longer used by default (it is defined to be *not* a name and mostly useless). - Fixed all known bugs (except one; see BUGS). What is new in davfs2 1.2.2 =========================== Debugging is not longer a compile time option but a run time option. The amount of debugging output is controlled by the davfs2.conf file. What is new in davfs2 1.2.1 =========================== This is a bug fix release. No new features. What is new in davfs2 1.2.0 =========================== - davfs2 now supports localized versions of messages and man pages using GNU gettext and the po4a tools. Currently there is a German translation, but other languages will follow. You are invited to contribute. - davfs2 needs a system user 'davfs2' and a system group 'davfs2'. Normal users must be member of group 'davfs2' in order to mount (no longer group 'users'). You may change the system user and group at configuration time. You will have to create the system user and group manually. The system user should not have a shell. Proposed home directory is '/var/cache/davfs2', but this does not matter. - davfs2 supports client certificates. - davfs2 can use server certificates, stored on disk, that can not be verified the normal way, like self-made certificates. - davfs can translate the encoding of file names. - There are two new man pages: umount.davfs and davfs2.conf. - File system is mounted, even when the first request times out. When access to the file system is tried, an error is returned until the connection comes up. (This feature had been removed in the last release by mistake.) What is new in davfs2 1.1.4 =========================== Please be sure to read section "0 UPDATING FROM PREVIOUS VERSION" of the README file to avoid loss of data. This version fixes bugs that have become known since the last release. - The kernel interface module for fuse kernel version 7 crashed. Now the fuse interface will work with kernel 2.6.14 and higher. - The handling of file times has been adjusted. The modification time will no longer change unexpectedly, thus confusing some applications (bug 1596104). - davfs2 will check server capabilities at start up to decide whether locks may be used. As a side effect this also fixes interoperation problems with the gmx-server (bug 1594808). - The default time to refresh directory information is reduced to 60 s. Every time a directory is opened, the directory content is newly retrieved from the server. Remote changes will get visible earlier this way, but performance may decrease. Please send a bug report if the performance decrease is unacceptable. What is new in davfs2 1.1.3 =========================== Please be sure to read section "0 UPDATING FROM PREVIOUS VERSION" of the README file to avoid loss of data. - There is a umount helper umount.davfs. It will be called by umount and make sure that umount will not return before mount.davfs has saved back all data that changed in cache. So umount with davfs2 now shows the same behaviour as with local file systems. - The new configuration option 'gui_optimize' will speed up the display of large directories on graphical user interfaces (once the files are cached). - The configuration options 'expire' and 'get_wait' have been renamed into 'dir_refresh' and 'file_refresh'. - The use of the HTTP-Header 'Expect: 100-Continue' is now a configuration option, as some servers don't understand it. - Known bugs are fixed and some changes are done to improve performance (see ChangeLog). What is new in davfs2 1.1.0 =========================== Please be sure to read section "0 UPDATING FROM PREVIOUS VERSION" of the README file to avoid loss of data. - davfs2 can now use the fuse kernel file system besides coda. - Neon library version 0.24, 0.25 and 0.26 are now supported. Version 0.26 allows to use gnutls instead of openssl. - Support for large files (> 2 GiByte) added. - davfs2 now uses time-outs on locks to reduce problems with stale locks. But not all servers will honour this. - No more URL-encoding of server URLs with spaces (see man-page). - davfs2 allows to set configuration options differently for different mount points. - The name of the backup directory is changed to the well known "lost+found". But you may configure something else. The following bugs should have gone: - [ 1519718 ] davfs2 fails to properly decode complex escape sequences - [ 1522903 ] chokes on directory names containing ' _ % characters - [ 1539444 ] mounting of webdav drive fails - [ 1539445 ] unable to access files in mounted webdav drive - [ 1558525 ] davfs2-1.0.2_p20060820 mount fails These bugs were related to incorrect alignment of data structures on 64 bit systems, incorrect treatment of the WebDAV property "displayname" and incorrect double URL-decoding of URLs. Problems with notifying the kernel of changes on the server are solved too. What is new in davfs2 1.0.0 =========================== davfs2 1.0.0 is an almost complete rewrite of davfs2. it introduces the following features into davfs2: - The same binary now supports different versions of the coda kernel module (CODA_KERNEL_VERSION 2 and 3). The version is evaluated at run time. - Extended caching: davfs2 now caches information about all visited files and directories at runtime in memory. This will speed up operation and it is necessary to enable operations like chmod or chown, as the WebDAV-servers usually do not know about this. - Persistent cache: davfs2 will save all downloaded files in a cache directory. This cache will persist when the file system is unmounted and will be reused, when mounted again. This should save a lot of network traffic, as files that did not change on the server will not be downloaded again. Especially when working with graphical user interfaces this will make a big difference, since some of them will open almost every file in a directory, though they just need a directory listing. - Unix Permissions: davfs2 now implements standard Unix permissions. Options uid, gid, file_mode and dir_mode are enabled again. This allows the mounting user to share the file system with other local users. Note: The WebDAV server still does not know about this. On the server side there is still only one user (the user who's credentials are used). Except the execute bit, mode, uid and gid are maintained locally only. But they are saved in the persistent cache. - Configuration: There are a lot of new configuration options in /etc/davfs2/davfs2.conf and ~/.davfs2/davfs2.conf. But usually the defaults will do. As the code of davfs2 1.0.0 is quite different from davfs 0.2.x, bug fixes that were done between davfs 0.2.4 and 0.2.8 could not be ported automatically to davfs2 1.0.0. So some of the old bugs may reappear together with the new ones I introduced.