You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2019/03/21 14:26:54 UTC

[commons-vfs] branch master updated: [VFS-694] Fix inability to start the DefaultFileMonitor after it has been stopped.

This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-vfs.git


The following commit(s) were added to refs/heads/master by this push:
     new 5a2bdb6  [VFS-694] Fix inability to start the DefaultFileMonitor after it has been stopped.
5a2bdb6 is described below

commit 5a2bdb6521208b66635ac9cd431eda12976490af
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Thu Mar 21 10:26:51 2019 -0400

    [VFS-694] Fix inability to start the DefaultFileMonitor after it has
    been stopped.
    
    Closes #55.
---
 src/changes/changes.xml | 1631 ++++++++++++++++++++++++-----------------------
 1 file changed, 817 insertions(+), 814 deletions(-)

diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 6b4d282..82c5560 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -1,814 +1,817 @@
-<?xml version="1.0"?>
-<!--
-   Licensed to the Apache Software Foundation (ASF) under one or more
-   contributor license agreements.  See the NOTICE file distributed with
-   this work for additional information regarding copyright ownership.
-   The ASF licenses this file to You under the Apache License, Version 2.0
-   (the "License"); you may not use this file except in compliance with
-   the License.  You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-   Unless required by applicable law or agreed to in writing, software
-   distributed under the License is distributed on an "AS IS" BASIS,
-   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-   See the License for the specific language governing permissions and
-   limitations under the License.
--->
-<!--
-This file is also used by the maven-changes-plugin to generate the release notes.
-Useful ways of finding items to add to this file are:
-
-1.  Add items when you fix a bug or add a feature (this makes the
-release process easy :-).
-
-2.  Do a JIRA search for tickets closed since the previous release.
-
-3.  Use the report generated by the maven-changelog-plugin to see all
-SVN commits. Set the project.properties' maven.changelog.range
-property to the number of days since the last release.
-
-To generate the release notes from this file:
-
-mvn -N changes:announcement-generate -Prelease-notes [-Dchanges.version=nnn]
-
-then tweak the formatting if necessary
-and commit
-
-The <action> type attribute can be add,update,fix,remove.
--->
-
-<document xmlns="http://maven.apache.org/changes/1.0.0">
-  <properties>
-    <title>Apache Commons VFS Changes</title>
-    <author email="dev@commons.apache.org">Apache Commons Developers</author>
-  </properties>
-
-  <body>
-    <release version="2.4" date="2019-MM-DD" description="New features and bug fix release.">
-<!--       <action issue="VFS-443" dev="ggregory" type="update" due-to="nickallen"> -->
-<!--        [Local] Need an easy way to convert from a FileObject to a File. -->
-<!--       </action> -->
-<!-- START Might need to be moved to the next version -->
-      <action issue="VFS-690" dev="ggregory" type="add">
-        Allow to set key exchange algorithm explicitly. GitHub #32.
-      </action>
-      <action issue="VFS-692" dev="ggregory" type="update" due-to="Gary Gregory">
-        Update Apache Commons Collections from 4.2 to 4.3.
-      </action>
-      <action issue="VFS-693" dev="ggregory" type="update" due-to="Boris Petrov, Gary Gregory">
-        Add support for customizing FTP transfer aborted status codes. GitHub PR #51.
-      </action>
-    </release>
-    <release version="2.3" date="2019-02-01" description="New features and bug fix release.">
-      <action issue="VFS-645" dev="ggregory" type="fix">
-		VfsClassLoaderTests and JarProviderTestCase fails on Java 9 and up.
-      </action>
-      <action issue="VFS-678" dev="ecki" type="fix">
-        Fix various LGTM.com code review warnings.
-      </action>
-      <action issue="VFS-652" dev="ecki" type="fix">
-        PatternFileSelector documentation to describe actual matching against getPath().
-      </action>
-      <action issue="VFS-650" dev="ggregory" type="update">
-        Update Apache Commons Compress from 1.15 to 1.16.1.
-      </action>
-      <action issue="VFS-646" dev="ggregory" type="update">
-        Update Apache Commons Compress from 1.14 to 1.15.
-      </action>
-      <action issue="VFS-589" dev="ggregory" type="fix" due-to="L, Gary Gregory">
-        SFTP moveTo operation hangs if the server does not support SSH channelExec.
-      </action>
-      <action issue="VFS-653" dev="ggregory" type="update">
-        Replace use of deprecated APIs in HDFS provider.
-      </action>
-      <action issue="VFS-655" dev="ggregory" type="fix" due-to="Arnaud MERGEY">
-        OSGI MANIFEST.MF "Import-Package" should be ";resolution:=optional" for Maven "optional" dependencies.
-      </action>
-      <action issue="VFS-657" dev="ggregory" type="fix" due-to="Elias Putz">
-        FileSelector implementations like FileDepthSelector should throw Exception.
-      </action>
-      <action issue="VFS-614" dev="ggregory" type="fix" due-to="Boris Petrov, Otto Fowler">
-        MonitorInputStream should not close the stream in read().
-      </action>
-      <action issue="VFS-666" dev="ggregory" type="update">
-        Update Apache Commons Collections from 4.1 to 4.2.
-      </action>
-      <action issue="VFS-667" dev="ggregory" type="fix">
-        org.apache.commons.vfs2.provider.res.ResourceFileProvider.findFile(FileObject, String, FileSystemOptions) should throw a org.apache.commons.vfs2.FileSystemException instead of a NPE when the class loader is null.
-      </action>
-      <action issue="VFS-668" dev="ggregory" type="update">
-        Throw a NPE with a better message when a class loader is null.
-      </action>
-      <action issue="VFS-669" dev="ggregory" type="fix">
-        org.apache.commons.vfs2.util.CombinedResources.loadResources(String) should not throw an NPE for the system class loader is null.
-      </action>
-      <action issue="VFS-671" dev="ggregory" type="update">
-        Update Apache Commons Compress from 1.16.1 to 1.18.
-      </action>
-      <action issue="VFS-675" dev="ggregory" type="fix">
-        NullPointerException at AbstractFileObject.java:221.
-      </action>
-      <action issue="VFS-680" dev="ggregory" type="update">
-        Update from Java 7 to Java 8.
-      </action>
-      <action issue="VFS-681" dev="ggregory" type="update" due-to="Robert DeRose">
-        VFS.setManager should be synchronized; #43.
-      </action>
-      <action issue="VFS-674" dev="ggregory" type="fix" due-to="Boris Petrov, Gary Gregory">
-        Cannot close an FTP input stream without an exception.
-      </action>
-      <action issue="VFS-682" dev="ggregory" type="update">
-        Throw a org.apache.commons.vfs2.FileSystemException instead of a NullPointerException in org.apache.commons.vfs2.impl.DefaultFileSystemManager.resolveName(FileName, String, NameScope).
-      </action>
-      <action issue="VFS-294" dev="ggregory" type="fix" due-to="Johannes Scharf">
-        NullPointerException in FtpFileObject.getChildFile().
-      </action>
-      <action issue="VFS-679" dev="ggregory" type="fix" due-to="Boris Petrov, Gary Gregory">
-        NullPointerException in FtpFileObject.doGetLastModifiedTime().
-      </action>
-      <action issue="VFS-398" dev="ggregory" type="fix" due-to="Otto Fowler">
-        FtpFileObject.getChildren() fails when a folder contains a file with a colon in the name.
-      </action>
-      <action issue="VFS-688" dev="ggregory" type="update">
-        [SFTP] Update jsch from 0.1.54 to 0.1.55.
-      </action>
-      <action issue="VFS-677" dev="ggregory" type="add" due-to="dingxbcn">
-        [SFTP] Add support for append mode.
-      </action>
-      <action issue="VFS-673" dev="ggregory" type="add" due-to="Oleksandr Lykhonosov">
-        [SFTP] Support com.jcraft.jsch.ConfigRepository (~/.ssh/config) with SftpFileSystemConfigBuilder and flag to load OpenSSHConfig.
-      </action>
-      <action issue="VFS-673" dev="ggregory" type="add" due-to="Daniel Banks">
-        DefaultFileSystemManager should implement AutoCloseable.
-      </action>
-      <action issue="VFS-637" dev="ggregory" type="add" due-to="Gary Gregory">
-        Zip files with legacy encoding and special characters let VFS crash.
-      </action>
-      <action issue="VFS-360" dev="ggregory" type="add" due-to="Woonsan Ko">
-        Add HTTP provider based on HttpComponents HttpClient 4.
-      </action>
-      <action issue="VFS-689" dev="ggregory" type="add" due-to="Gary Gregory">
-        org.apache.commons.vfs2.provider.http.HttpFileObject.getHeadMethod() does not release connection when an exception is thrown.
-      </action>
-    </release>
-    <release version="2.2" date="2017-10-06" description="New features and bug fix release.">
-      <action issue="VFS-642" dev="pschumacher" type="update" due-to="ilangoldfeld">
-        Upgrade to jcifs 1.3.17
-      </action>
-      <action issue="VFS-189" dev="kinow" type="fix">
-        Possible NPE in DefaultFileSystemManager.
-      </action>
-      <action issue="VFS-628" dev="ggregory" type="add">
-        Add a file inverter FileSelector: InvertIncludeFileSelector.
-      </action>
-      <action issue="VFS-612" dev="ggregory" type="update">
-        Update the platform requirement from Java 6 to Java 7.
-      </action>
-      <action issue="VFS-615" dev="ggregory" type="update">
-        Update Apache Commons Compress from 1.11 to 1.12.
-      </action>
-      <action issue="VFS-629" dev="ggregory" type="update">
-        Update Apache Commons Compress from 1.12 to 1.13.
-      </action>
-      <action issue="VFS-639" dev="ggregory" type="update">
-        Update Apache Commons Compress from 1.13 to 1.14.
-      </action>
-      <action issue="VFS-631" dev="ggregory" type="update">
-        Update from Apache Commons Net 3.5 to 3.6.
-      </action>
-      <action issue="VFS-632" dev="ggregory" type="update">
-        Update from JCraft jsch for SFTP/SSH from 0.1.53 to 0.1.54.
-      </action>
-      <action issue="VFS-621" dev="ggregory" type="update">
-        Add API VFS.setManager(FileSystemManager).
-      </action>
-      <action issue="VFS-643" dev="ggregory" type="update">
-        VFS should not log at the INFO level.
-      </action>
-      <action issue="VFS-620" dev="ggregory" type="fix" due-to="stevezhuang">
-        FileObject.moveTo(FileObject) API doesn't work well for a Linux FTP.
-      </action>
-      <action issue="VFS-291" dev="ggregory" type="fix">
-        ZIP archives are not properly closed after unzipping and cannot be deleted until the JVM exists.
-      </action>
-      <action issue="VFS-644" dev="ggregory" type="fix">
-        AbstractFileSystem.streamClosed() always sets openStream count to zero.
-      </action>
-    </release>
-    <release version="2.1" date="2016-05-19" description="New features and bug fix release.
-
-
-
-Please note that the Clirr report shows several errors.
-
-These may affect source compatibility.
-
-However they should not affect binary compatibility, as explained below.
-
-
-
-FileContent, FileName, FileObject, FileSystemManager, RandomAccessContent:
-
-The above interfaces have been updated to add new methods.
-
-This does not affect binary compatibility; for details please see:
-
-https://docs.oracle.com/javase/specs/jls/se7/html/jls-13.html#jls-13.5.3-100
-
-The above changes may affect source compatibility.
-
-
-Changes to method parameters and return types in TarFileObject and TarFileSystem
-
-The original parameter/return types were the following:
-
-org.apache.commons.vfs2.provider.tar.TarEntry
-
-org.apache.commons.vfs2.provider.tar.TarInputStream
-
-The above were package protected, so any methods using them did not form part of the public API.
-
-Therefore source and binary compatibility is not affected.">
-<!--       <action issue="VFS-443" dev="ggregory" type="update" due-to="nickallen"> -->
-<!--        [Local] Need an easy way to convert from a FileObject to a File. -->
-<!--       </action> -->
-<!-- START Might need to be moved to the next version -->
-     <action issue="VFS-607" dev="ggregory" type="update">
-        Update Apache Commons Compress from 1.10 to 1.11.
-     </action>
-     <action issue="VFS-608" dev="ggregory" type="update">
-        Update Apache Commons Net from 3.4 to 3.5.
-     </action>
-<!-- END Might need to be moved to the next version -->
-     <action issue="VFS-424" dev="ecki" type="fix">
-        Fix StandardFileSystemManager class loading so it works in a OSGi environment.
-     </action>
-      <action issue="VFS-490" dev="ecki" type="fix">
-        [vfsclassloader] Do not open folders with .jar extension. Adds tests.
-     </action>
-      <action issue="VFS-582" dev="ecki" type="fix">
-        [tests] revert rename of getTestDirectoryFile to make test classes more compatible for external providers.
-     </action>
-      <action issue="VFS-480" dev="ecki" type="fix">
-        Make startup of SoftRefsFileCache cleaner thread work and less racy to avoid leaks.
-     </action>
-      <action issue="VFS-549" dev="ecki" type="fix">
-        Use File.seperator instead of getProperty("file.separator").
-     </action>
-      <action issue="VFS-567" dev="ecki" type="fix" due-to="Antonio Petrelli">
-        [ftp] Ignore exceptions while QUIT/disconnect.
-     </action>
-      <action issue="VFS-572" dev="ecki" type="fix" due-to="Sandra Parsick">
-        [sftp] better documentation for knownhosts file option.
-     </action>
-      <action issue="VFS-574" dev="ecki" type="fix">
-        Ensure FileOpertionProviders are closed. Adds some testcases.
-        The error code for missing operations exceptions corrected: vfs.operation/operation-not-supported.error
-     </action>
-      <action issue="VFS-279" dev="ecki" type="fix" due-to="Didier Earith, Simon Legner">
-        [local] Avoid ClassCastException when replicating local files while OnCall caching is active.
-      </action>
-      <action issue="VFS-297" dev="joehni" type="fix" due-to="Kirill Safonov, Jimmy Praet">
-        [sftp] VSF fails to reuse FileSystem instances if FileSystemOptions contain
-        an array as value. Reported for SFTP using identities.
-      </action>
-      <action issue="VFS-198" dev="ecki" type="add" due-to="Andrew Franklin, Simon Legner">
-        [http] Make user agent configurable.
-      </action>
-      <action issue="VFS-202" dev="ecki" type="fix" due-to="Sergey Vladimirov, Simon Legner">
-        [http] Allow URLs responding with 405 to HEAD requests.
-      </action>
-      <action issue="VFS-490" dev="ecki" type="fix">
-        [hdfs] Make OSGi package imports for hdfs resolution=optional.
-        Removed all scopes from dependency management.
-      </action>
-      <action issue="VFS-560" dev="ecki" type="fix">
-        [http] avoid initial HEAD request to root of HttpFileSystem as it might be wrong context.
-      </action>
-      <action issue="VFS-236" dev="ecki" type="fix" due-to="Matt Casters">
-        [smb] Allow SMB to be used with no authentication.
-      </action>
-      <action issue="VFS-564" dev="ecki" type="fix" due-to="Dmitry Konstantinov">
-        Make some loggers static.
-      </action>
-      <action issue="VFS-555" dev="rwhitcomb" type="add">
-        [hdfs] Add the ability to specify an HDFS configuration file with HdfsFileSystemConfigBuilder.
-      </action>
-      <action issue="VFS-557" dev="ecki" type="fix">
-       [webdav][test] Create WebDav test directory in target/test. Avoid creating core/jackrabbit/tmp.
-       Logfiles of Jackrabbit are preserved when -DWebdavProviderTestCase.Debug=true is specified.
-      </action>
-      <action issue="VFS-558" dev="ecki" type="fix">
-       Make moveTo() and getParent() work with CacheStrategy.ON_CALL.
-       In case of FTP Provider it would lead otherwise to an UnsupportedOperationException.
-      </action>
-      <action dev="ecki" type="fix">
-       [sandbox] RACRandomAccessFile is now in org.apache.commons.vfs2.util package (so sandbox has only one overlapping package).
-      </action>
-      <action issue="VFS-530" dev="ecki" type="update" due-to="Dave Marion">
-       [hdfs] Use stable Apache Hadoop 2.6 dependencies.
-      </action>
-      <action dev="ecki" type="add">
-       [example] make VFS Shell print version and implement new 'info' command.
-      </action>
-      <action issue="VFS-552" dev="ecki" type="fix">
-       [sandbox] include vfs-providers.xml in JAR for dynamic registration of mime and smb providers.
-      </action>
-      <action issue="VFS-551" dev="ecki" type="fix" due-to="David Camilo Espitia Manrique">
-       Javadoc: make it clear that DefaultCryptor is only an obfuscation function.
-      </action>
-      <action issue="VFS-309" dev="ecki" type="fix">
-       DefaultFileContent will remove thread data whenever possible to avoid leaks.
-      </action>
-      <action issue="VFS-487" dev="ecki" type="fix" due-to="Dave Marion">
-       DefaultFileMonitor detects recreated files.
-      </action>
-      <action issue="VFS-523" dev="ecki" type="fix" due-to="Roger Whitcomb">
-       [HDFS] Make HdfsFileObject.equal use system hashcode/equals instead of
-       wrongly comparing file path only.
-      </action>
-      <action issue="VFS-544" dev="ecki" type="fix">
-       [Virtual] Allow virtual file systems and virtual file system provider
-       to be closed, to avoid memory leak.
-      </action>
-      <action issue="VFS-142" dev="ecki" type="fix" due-to="Ryan Boettcher">
-       Use ThreadLocal.remove() to clean out FileContentThreadData objects.
-      </action>
-      <action issue="VFS-545" dev="ecki" type="fix">
-       Make DefaultFilesCache remove reference to filesystem when it is cleared (closed).
-      </action>
-      <action issue="VFS-521" dev="ecki" type="fix">
-       [Ram][Tests] Make RAM provider test pass on Java 8
-       (JDK-8042377, self-suppression not permitted, MonitorOutputStream#close()).
-      </action>
-      <action issue="VFS-601" dev="ggregory" type="update">
-       Update Apache Commons Net from 3.3 to 3.4.
-      </action>
-      <action issue="VFS-602" dev="ggregory" type="update">
-       Update Apache Commons IO from 2.4 to 2.5.
-      </action>
-      <action issue="VFS-579" dev="ggregory" type="update">
-       Update Jsch from 0.1.51 to 0.1.53.
-      </action>
-      <action issue="VFS-542" dev="ggregory" type="update">
-       Update Jsch from 0.1.50 to 0.1.51.
-      </action>
-      <action issue="VFS-578" dev="ggregory" type="update">
-       Update Apache Commons Compress from 1.9 to 1.10.
-      </action>
-      <action issue="VFS-541" dev="ggregory" type="update">
-       Update Apache Commons Compress from 1.6 to 1.9.
-      </action>
-      <action issue="VFS-540" dev="ggregory" type="update">
-       Update Apache Commons Logging from 1.1.3 to 1.2.
-      </action>
-      <action issue="VFS-539" dev="ggregory" type="update">
-       Update Apache Commons Lang from 3.1 to 3.3.2.
-      </action>
-      <action issue="VFS-532" dev="ggregory" type="add" due-to="Gareth Daniel Smith">
-       [FTP] Allow configuring remoteVerificationEnabled on FTPClient instances.
-      </action>
-      <action issue="VFS-338" dev="ecki" type="fix" due-to="Daniel R.">
-       [Local][Tests] Avoid IndexOutOfBoundsException when validating local file URIs.
-      </action>
-      <action issue="VFS-526" dev="ecki" type="update">
-       [HDFS][Tests] Support HDFS testing on Windows (but keep profile "no-hdfs" enabled on Windows VFS-529).
-      </action>
-      <action issue="VFS-453" dev="ecki" type="update" due-to="Jiri Syrovy">
-       [HTTP][WEBDAV] Add file system options for connect and socket timeout.
-      </action>
-      <action issue="VFS-167" dev="ecki" type="update" due-to="Jimmy Praet">
-       [FTP] Allow Proxy support to file system options.
-      </action>
-      <action issue="VFS-520" dev="ecki" type="update">
-       Make Javadoc compatible with Java 8 tool.
-      </action>
-      <action issue="VFS-518" dev="ggregory" type="update" due-to="Roland Illig">
-        Documentation of FileSystemOptions should be more helpful.
-      </action>
-      <action issue="VFS-500" dev="ggregory" type="update" due-to="Bernd Eckenfels">
-        VFSClassLoader.findResources missing.
-      </action>
-      <action issue="VFS-514" dev="ggregory" type="update" due-to="Bernd Eckenfels">
-        [tests] PermissionsTests leaves unclean test directory.
-      </action>
-      <action issue="VFS-501" dev="ggregory" type="update" due-to="Yves Schumann">
-        Hide passwords from log/console output.
-      </action>
-      <action issue="VFS-496" dev="ggregory" type="update" due-to="Bernd Eckenfels">
-        Resource translation issues.
-      </action>
-      <action issue="VFS-494" dev="ggregory" type="update" due-to="Allen Xudong Cheng">
-        [SFTP] No support for SFTP servers with non Latin-1 file name encoding.
-      </action>
-      <action issue="VFS-368" dev="ggregory" type="update" due-to="Brendan Long">
-        [SFTP] Documentation implies that "userDirIsRoot" defaults to true.
-      </action>
-      <action issue="VFS-265" dev="ggregory" type="update" due-to="Scott Bjerstedt">
-        [FTP] Set user dir as root dir by default.
-      </action>
-      <action issue="VFS-489" dev="ggregory" type="fix" due-to="Bernd Eckenfels">
-        [tests] ProviderWriteTests#testListener does not fail cleanly.
-      </action>
-      <action issue="VFS-486" dev="ggregory" type="fix" due-to="Sam Haldane">
-        DefaultFileMonitor sleeps for twice the specified delay when checkPerRun > 0.
-      </action>
-      <action issue="VFS-484" dev="ggregory" type="update">
-        [SFTP] Update Jsch to 0.1.50 from 0.1.49.
-      </action>
-      <action issue="VFS-482" dev="ggregory" type="fix">
-        Wrong assertion messages in RAM provider test case.
-      </action>
-      <action issue="VFS-507" dev="ggregory" type="update">
-        Update to Apache Commons Collection 4.1 from 3.2.1 and use generics.
-      </action>
-      <action issue="VFS-476" dev="ggregory" type="update">
-        Update Apache Commons Logging to 1.1.3 from 1.1.2.
-      </action>
-      <action issue="VFS-475" dev="ggregory" type="update">
-        Update Apache Commons Net to 3.3 from 3.2.
-      </action>
-      <action issue="VFS-506" dev="ggregory" type="update">
-        [Tar][Bzip2] Update Apache Commons Compress to 1.6 from 1.5.
-      </action>
-      <action issue="VFS-471" dev="ggregory" type="update">
-        Update to Apache Commons Compress 1.5.
-      </action>
-      <action issue="VFS-469" dev="joehni" type="remove">
-        Remove unused dependency to javax.jcr:jcr.
-      </action>
-      <action issue="VFS-283" dev="joehni" type="update">
-        [SFTP] SFTP provider did not support passphrase-protected keys nor the exchange of a public key with
-        a requesting SFTP server. To support such triples (private key/passphrase/public key) instead of private
-        keys only, a new structure EntityInfo has been created. SftpFileSystemConfigBuilder has now the new
-        getter and setter methods getIdentityInfo and setIdentity info which replace the now deprecated methods
-        getIdentities and setIdentities.
-      </action>
-      <action issue="VFS-460" dev="joehni" type="fix">
-        Dependency to commons-compress set as optional.
-      </action>
-      <action issue="VFS-468" dev="joehni" type="add">
-        [FTPS] Add option for KeyManager (and TrustManager) to support FTPS servers that ask for the client certificate for authentication.
-      </action>
-      <action issue="VFS-464" dev="joehni" type="fix">
-        StaticUserAuthenticator should return only requested authentication data.
-      </action>
-      <action issue="VFS-463" dev="joehni" type="update">
-        FileSytemConfigBuilder supports system properties for the value of enum-based configuration entries.
-      </action>
-      <action issue="VFS-462" dev="joehni" type="update">
-        [FTPS] Deprecate FtpsFileSystemConfigBuilder.setFtpsType and FtpsFileSystemConfigBuilder.getFtpsType
-        in favor of FtpsFileSystemConfigBuilder.setFtpsMode and FtpsFileSystemConfigBuilder.getFtpsMode which
-        use new enum FtpsMode instead.
-      </action>
-      <action issue="VFS-461" dev="joehni" type="fix">
-        [FTP/FTPS] ConfigBuilder does not consider system properties for the value of SoTimeout and Encoding.
-      </action>
-      <action issue="VFS-412" dev="joehni" type="add" due-to="Jose Juan Montiel">
-        [FTPS] Add support for command to set the DataChannelProtectionLevel.
-      </action>
-      <action issue="VFS-459" dev="joehni" type="update">
-        [FTP/FTPS] Sent commands and the received answer is logged at debug level.
-      </action>
-      <action issue="VFS-458" dev="joehni" type="fix">
-        [FTPS] Provider missed functionality and bug fixes already available for the FTP provider.
-      </action>
-      <action issue="VFS-452" dev="ggregory" type="fix" due-to="Jean-Marc Borer">
-        [HTTP] HttpFileObject read/write attributes should reflect underlying FileSystem capabilities.
-      </action>
-      <action issue="VFS-285" dev="tn" type="fix" due-to="Kirill Safonov">
-        AbstractFileObject.getChildren() may corrupt its internal state if a filename
-        can not be resolved.
-      </action>
-      <action issue="VFS-450" dev="ggregory" type="fix" due-to="Dave Marion">
-        [HDFS] HDFSFileSystem.resolveFile() does not honor CacheStrategy.ON_RESOLVE.
-      </action>
-      <action issue="VFS-442" dev="ggregory" type="add" due-to="Dave Marion">
-        [HDFS] Add an HDFS FileSystem Provider.
-      </action>
-      <action issue="VFS-448" dev="ggregory" type="fix">
-        commons-vfs 2.0 JAR has flawed OSGi MANIFEST.MF.
-      </action>
-      <action issue="VFS-447" dev="ggregory" type="add">
-        [FTP/FTPS] Update Apache Commons Net to 3.2 from 3.1.
-      </action>
-      <action issue="VFS-445" dev="ggregory" type="add">
-        Add FileSystemManager.resolveFile(URI) and resolveFile(URL).
-      </action>
-      <action issue="VFS-440" dev="ggregory" type="add" due-to="bpiwowar">
-        [SFTP] Stream (e.g. netcat) proxy for Sftp file system (aka ProxyCommand).
-      </action>
-      <action issue="VFS-439" dev="ggregory" type="fix" due-to="pensecit">
-        StaticUserAuthenticator usage example wrong.
-      </action>
-      <action issue="VFS-437" dev="ggregory" type="fix" due-to="denniszhu, danttran, jpowang">
-        [FTP] StackOverFlowError getting the type of a directory with a symbolic link to a parent directory with the same name.
-      </action>
-      <action issue="VFS-435" dev="ggregory" type="fix" due-to="george scott">
-        FileSystemConfigBuilder does not use prefix for some system property lookups.
-      </action>
-      <action issue="VFS-434" dev="ggregory" type="fix">
-        FileSystemException should reuse IOException's chained exception.
-      </action>
-      <action issue="VFS-433" dev="ggregory" type="fix">
-        [WebDAV] Message "vfs.provider.webdav/propfind.error" is not defined.
-      </action>
-      <action issue="VFS-430" dev="ggregory" type="fix" due-to="antonin.stefanutti">
-        The SoftRefFilesCache class logs clear text password.
-      </action>
-      <action issue="VFS-432" dev="ggregory" type="add">
-        [HTTP][WebDAV] Allow HTTP follow redirect.
-      </action>
-      <action issue="VFS-431" dev="ggregory" type="add">
-        FileSystemOption does not implement toString().
-      </action>
-      <action issue="VFS-429" dev="ggregory" type="fix">
-        Remove extra FileSystem ivar in AbstractFileObject subclasses with generics.
-      </action>
-      <action issue="VFS-427" dev="ggregory" type="fix" due-to="awelynant">
-        [HTTP] NPE on HttpFileObject.getContent().getContentInfo().
-      </action>
-      <action issue="VFS-405" dev="ggregory" type="add" due-to="dwaszak">
-        Get/set the file permissions.
-      </action>
-      <action issue="VFS-457" dev="joehni" type="update">
-        Update test dependencies: sshd-core version 0.7.0 to 0.8.0; mina-core 2.0.4 to 2.0.7; junit 4.11 to 4.12; slf4j-* 1.5.5 to 1.5.11
-      </action>
-      <action issue="VFS-456" dev="joehni" type="update">
-        Use org.bouncycastel:bcprov-jdk16 instead of org.bouncycastle:bcprof-jdk15on since Java 1.6 is required.
-      </action>
-      <action issue="VFS-415" dev="ggregory" type="update">
-        Update VFS requirement to Java 1.6.
-      </action>
-      <action issue="VFS-426" dev="ggregory" type="add" due-to="daniel.bergholm">
-        HTTP URL query string not part of cache key.
-      </action>
-      <action issue="VFS-425" dev="ggregory" type="add">
-        Add API FileObject.isExecutable().
-      </action>
-      <action issue="VFS-421" dev="ggregory" type="add" due-to="bpiwowar">
-        [SFTP] Configure a custom Identity Repository.
-      </action>
-      <action issue="VFS-418" dev="ggregory" type="update">
-        Update to Apache Commons Compress 1.4.1.
-      </action>
-      <action issue="VFS-417" dev="ggregory" type="add">
-        [RAM][Local] Add and implement new API: RandomAccessContent.setLength(long).
-      </action>
-      <action issue="VFS-406" dev="ggregory" type="fix" due-to="mp1">
-        [RAM] resize throws ArrayOOBE when shrinking in size.
-      </action>
-      <action issue="VFS-321" dev="ggregory" type="update" due-to="sebb">
-        AbstractFileObject sometimes uses getFileSystem() and sometimes references "fs" field directly.
-      </action>
-      <action issue="VFS-327" dev="ggregory" type="update" due-to="sebb">
-        UriParser.canonicalizePath possible NPE for filenameParser.
-      </action>
-      <action issue="VFS-353" dev="ggregory" type="fix" due-to="bergander">
-        [FTP] Client should call logout before disconnecting.
-      </action>
-      <action issue="VFS-408" dev="ggregory" type="fix" due-to="anilm2@yahoo.com">
-        CompressedFileFileObject Exception thrown when container file has no extension.
-      </action>
-      <action issue="VFS-400" dev="ggregory" type="add">
-        Add a FileSelector based on regular expressions.
-      </action>
-      <action issue="VFS-258" dev="ggregory" type="fix" due-to="mzawirski">
-        [SFTP][RAM] Unsafe casting to AbstractFileObject subclasses in doRename().
-      </action>
-      <action issue="VFS-254" dev="ggregory" type="add" due-to="mzawirski">
-        Let FileObject and FileContent extend java.io.Closeable.
-      </action>
-      <action issue="VFS-413" dev="ggregory" type="fix" due-to="polivenok">
-        [FTP] No support for FTP servers with non Latin-1 control encoding.
-      </action>
-      <action issue="VFS-252" dev="ggregory" type="add">
-        [SMB] SmbFileObject does not support setLastModifiedTime while jcifs supports it.
-      </action>
-      <action issue="VFS-200" dev="ggregory" type="fix">
-        [SFTP] Failure when files are very large.
-      </action>
-      <action issue="VFS-416" dev="joehni" type="update">
-        [SFTP] Update Jsch to version 0.1.49 from 0.1.47.
-      </action>
-      <action issue="VFS-296" dev="ggregory" type="fix" due-to="andreasp">
-        [FTP] FTP socket timeout setting doesn't work if connect hangs.
-      </action>
-      <action issue="VFS-313" dev="ggregory" type="add" due-to="bdavis@saintandreas.org">
-        [FTP] Configuration does not include option for setting socket timeout.
-      </action>
-      <action issue="VFS-414" dev="ggregory" type="add">
-        [FTP] Add config API to set the file type.
-      </action>
-      <action issue="VFS-182" dev="ggregory" type="add">
-        [FTP] Usage of FTP with heterogeneous FTP server (possibility of using Ascii file type).
-      </action>
-      <action issue="VFS-395" dev="ggregory" type="update">
-        [POM] Remove maven-scm-* dependencies.
-      </action>
-      <action issue="VFS-411" dev="ggregory" type="update">
-        [SFTP] Update Jsch to version 0.1.47 from 0.1.46.
-      </action>
-      <action issue="VFS-410" dev="ggregory" type="fix" due-to="mstockhammer">
-        [SFTP] SftpFileObject getInputStream(long) reads the whole file into memory.
-      </action>
-      <action issue="VFS-409" dev="ggregory" type="update">
-        Update Apache Commons Compress to 1.4 from 1.3.
-      </action>
-      <action issue="VFS-407" dev="ggregory" type="fix" due-to="mp1">
-        [RAM] Reading a RAM FileSystem file fails because it never returns EOF -1.
-      </action>
-      <action issue="VFS-404" dev="ggregory" type="update">
-        [FTP][FTPS] Update Apache Commons Net to 3.1 from 3.0.1.
-      </action>
-      <action issue="VFS-402" dev="ggregory" type="update">
-        [WebDAV] Update Apache Jackrabbit 1.5.2 to 1.6.5.
-      </action>
-      <action issue="VFS-401" dev="ggregory" type="update">
-        Update JSch to 0.1.46 from 0.1.45 for the SFTP provider.
-      </action>
-      <action issue="VFS-392" dev="ggregory" type="update">
-        Build tests WebDAV file system with an embedded WebDAV server (Apache Jackrabbit).
-      </action>
-      <action issue="VFS-391" dev="ggregory" type="update">
-        Build tests URL HTTP file system with an embedded HTTP server (Apache HttpComponent Core).
-      </action>
-      <action issue="VFS-390" dev="ggregory" type="update">
-        Use variable argument list in org.apache.commons.vfs2.util.Messages instead of Object[].
-      </action>
-      <action issue="VFS-389" dev="ggregory" type="update">
-        Use variable argument lists in FileSystemException instead of Object[]s.
-      </action>
-      <action issue="VFS-388" dev="ggregory" type="update">
-        Build tests SFTP file system with an embedded SFTP server (Apache MINA).
-      </action>
-      <action issue="VFS-387" dev="ggregory" type="update">
-        Build tests FTP file system with an embedded FTP server (Apache MINA).
-      </action>
-      <action issue="VFS-386" dev="ggregory" type="update">
-        Build tests HTTP file system with an embedded HTTP server (Apache HttpComponent Core).
-      </action>
-      <action issue="VFS-385" dev="ggregory" type="update">
-        Add HTTP status code to HTTP file provider exception messages when available.
-      </action>
-      <action issue="VFS-384" dev="ggregory" type="update">
-        Update Apache Commons Net to 3.0.1 from 2.2 for FTP and SFTP providers.
-      </action>
-      <action issue="VFS-383" dev="ggregory" type="update">
-        Update JSch to 0.1.45 from 0.1.42 for the SFTP provider.
-      </action>
-      <action issue="VFS-382" dev="ggregory" type="fix">
-        SFTP getChildren() does not fail when called on a file.
-      </action>
-      <action issue="VFS-381" dev="ggregory" type="add">
-        Iterate over a FileObject using the Java "foreach" statement, to provide all descendents of a FileObject.
-      </action>
-      <action issue="VFS-380" dev="ggregory" type="fix">
-        FTP connect.error message used instead of SFTP connect.error message.
-      </action>
-      <action issue="VFS-379" dev="ggregory" type="update">
-        Replace custom BZIP2 code with Apache Commons Compress 1.3.
-      </action>
-      <action issue="VFS-378" dev="ggregory" type="fix">
-        Tar error message are missing from resource file.
-      </action>
-      <action issue="VFS-377" dev="ggregory" type="update">
-        Replace custom TAR code with Apache Commons Compress 1.3.
-      </action>
-      <action issue="VFS-375" dev="ggregory" type="update">
-        Upgrade to Apache Commons Compress 1.3 from 1.2.
-      </action>
-      <action issue="VFS-374" dev="ggregory" type="fix">
-        Incorrect lazy initialization of static field org.apache.commons.vfs2.util.Messages.resources in org.apache.commons.vfs2.util.Messages.findMessage(String)Add FileContent write APIs.
-      </action>
-      <action issue="VFS-373" dev="ggregory" type="add">
-        Add FileContent write APIs.
-      </action>
-      <action issue="VFS-372" dev="ggregory" type="add">
-        Add constructors FileDepthSelector() and FileDepthSelector(int).
-      </action>
-      <action issue="VFS-371" dev="ggregory" type="add">
-        Add FileObject API deleteAll().
-      </action>
-      <action issue="VFS-370" dev="ggregory" type="add">
-        Add a FileExtensionSelector class.
-      </action>
-      <action issue="VFS-367" dev="ggregory" type="add">
-        Add APIs FileObject isFile(), FileObject isFolder(), and FileName isFile().
-      </action>
-      <action issue="VFS-366" dev="ggregory" type="update">
-        Can't sort a List of FileObject's, FileObject to implement Comparable&lt;FileObject&gt;.
-      </action>
-      <action issue="VFS-341" dev="rgoers" type="update" due-to="Rajika Kumarasiri">
-        Enable logging of JSch using the Commons Logging Log object in SftpClientFactory.
-      </action>
-      <action issue="VFS-355" dev="rgoers" type="fix" due-to="Miroslav Pokorny">
-        The read method of RamFileRandomAccessContent's input stream does not return -1 at eof.
-      </action>
-      <action issue="VFS-356" dev="rgoers" type="fix">
-        Throw an IOException if an attempt is made to seek to a position before the start of the file.
-      </action>
-      <action issue="VFS-359" dev="rgoers" type="fix" due-to="Miroslav Pokorny">
-        Don't delete a RamFileObject if it is open.
-      </action>
-      <action issue="VFS-352" dev="rgoers" type="fix">
-        ZipFileSystem now uses an internal Map as a cache for all the files in the zip archive.
-      </action>
-      <action issue="VFS-351" dev="rgoers" type="fix" due-to="John Backstrand">
-        Chain the SftpException in the FileSystemException.
-      </action>
-      <action issue="VFS-361" dev="rgoers" type="update">
-        Upgrade commons collections version to 3.2.1.
-      </action>
-      <action issue="VFS-325" dev="rgoers" type="fix" due-to="Larry Reeve">
-        Allow # character in file names.
-      </action>
-      <action issue="VFS-335" dev="rgoers" type="fix">
-        Use atomic variables in MonitorInputStream.
-      </action>
-      <action issue="VFS-364" dev="rgoers" type="fix">
-        Check the href in the response for just a path in addition to a full uri.
-      </action>
-    </release>
-    <release version="2.0" date="2011-08-24" description="Backwards incompatible update of Commons VFS to Java 5">
-      <action issue="VFS-348" dev="rgoers" type="fix" due-to="Stefan Bodewig">
-        Update the version of commons-net.
-      </action>
-      <action issue="VFS-230" dev="rgoers" type="fix">
-        Documented FileSystem capabilities on the web site.
-      </action>
-      <action issue="VFS-337" dev="rgoers" type="fix">
-        AbstractFileObject and classes that extend from it use AbstractFileName in the constructor and in
-        the createFile method.
-      </action>
-       <action issue="VFS-245" dev="rgoers" type="fix">
-        AbstractFileName is not immutable as it should be. equals(), hashcode() and compareTo() have been modified
-        to return the same results regardless of whether the FileType is changed.
-      </action>
-      <action issue="VFS-334" dev="sebb" type="fix">
-        DefaultFileSystemConfigBuilder.getConfigClass() returns DefaultFileSystemConfigBuilder.class which is not a FileSystem
-      </action>
-      <action dev="rgoers" type="fix" issue="VFS-305" due-to="Tom">
-        Add encoding option to FTP provider.
-      </action>
-       <action dev="rgoers" type="fix" issue="VFS-315" due-to="David Hausladen">
-        Fix potential NullPointerException if the DavProperty is null or contains null values.
-      </action>
-       <action dev="rgoers" type="fix" issue="VFS-316" due-to="David Hausladen">
-        Add option for preemptive authentication for HTTP based protocols.
-      </action>
-       <action dev="rgoers" type="fix" issue="VFS-322" due-to="Curtis Boyden">
-        Allow tar files that contain files over 2GB in size.
-      </action>
-       <action dev="rgoers" type="fix" issue="VFS-324" due-to="sebb">
-        Clear the cache in RamFileSystem and the children in RamFileData.
-      </action>
-      <action dev="sebb" type="fix" issue="VFS-319">
-        Typo in FtpsFileSystemConfigBuilder.setFtpsType
-      </action>
-      <action dev="rgoers" type="fix" issue="VFS-227" due-to="Sergey Vladimirov">
-        InputStream and RandomAccessContent memory leak in FileContentThreadData
-      </action>
-      <action dev="rgoers" type="update" issue="VFS-263" due-to="Ingo Maas">
-        WebdavFileObject does not implement doSetAttribute()
-      </action>
-      <action dev="rgoers" type="fix" issue="VFS-259" due-to="Marek Zawirski">
-        Http and Webdav FIleContentInfoFactory: undress to AbstractFileObject before casting
-      </action>
-      <action dev="rgoers" type="fix" issue="VFS-261" due-to="Simon Olofsson">
-        WebDAV upload corrupts binary files
-      </action>
-      <action dev="rgoers" type="fix" issue="VFS-276" due-to="Vince Bonfanti">
-        add ProviderTestConfig.getDefaultFileSystemManager() method
-      </action>
-      <action dev="rgoers" type="fix" issue="VFS-282" due-to="Alexey">
-        SftpFileProvider and SftpFileSystemConfigBuilder can't change ssh authentication methods
-      </action>
-      <action dev="rgoers" type="fix" issue="VFS-269" due-to="Marek Zawirski">
-        HttpFileObject: unsupported content over 2GB length
-      </action>
-      <action dev="rgoers" type="fix" issue="VFS-287" due-to="Mircea-Eugen Ionica">
-        LocalFileName objects are not released from AbstractFileSystem.listenerMap when all listeners are removed.
-      </action>
-      <action dev="rgoers" type="fix" issue="VFS-216" due-to="Reetu Mutti">
-        The FTP Configuration includes an option to set a timeout for the data connection, but not for the socket
-        timeout. This is a problem, as idle sockets can cause your download to hang forever and never timeout.
-      </action>
-      <action dev="rgoers" type="fix" issue="VFS-289" due-to="Kirill Safonov">
-        FTP connection is not released If exception is thrown out of FtpFileObject.doGetOutputStream().
-      </action>
-      <action dev="rgoers" type="fix" issue="VFS-286" due-to="Kirill Safonov">
-        SftpFileObject.doListChildrenResolved() changes the working dir before doing ChannelSftp.ls() call.
-        If ls() throws an exception, the current directory is not reset. All the subsequent operations that rely on the
-        current dir will fail trying to change into nonexistent directory.
-      </action>
-      <action dev="jcarman" type="add" issue="VFS-264" due-to="Scott Bjerstedt">
-        Add FTPS provider.
-      </action>
-      <action dev="rgoers" type="add" issue="VFS-244">
-        Rename HttpRandomAccesContent to HttpRandomAccessContent.
-      </action>
-    </release>
-  </body>
-</document>
+<?xml version="1.0"?>
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
+<!--
+This file is also used by the maven-changes-plugin to generate the release notes.
+Useful ways of finding items to add to this file are:
+
+1.  Add items when you fix a bug or add a feature (this makes the
+release process easy :-).
+
+2.  Do a JIRA search for tickets closed since the previous release.
+
+3.  Use the report generated by the maven-changelog-plugin to see all
+SVN commits. Set the project.properties' maven.changelog.range
+property to the number of days since the last release.
+
+To generate the release notes from this file:
+
+mvn -N changes:announcement-generate -Prelease-notes [-Dchanges.version=nnn]
+
+then tweak the formatting if necessary
+and commit
+
+The <action> type attribute can be add,update,fix,remove.
+-->
+
+<document xmlns="http://maven.apache.org/changes/1.0.0">
+  <properties>
+    <title>Apache Commons VFS Changes</title>
+    <author email="dev@commons.apache.org">Apache Commons Developers</author>
+  </properties>
+
+  <body>
+    <release version="2.4" date="2019-MM-DD" description="New features and bug fix release.">
+<!--       <action issue="VFS-443" dev="ggregory" type="update" due-to="nickallen"> -->
+<!--        [Local] Need an easy way to convert from a FileObject to a File. -->
+<!--       </action> -->
+<!-- START Might need to be moved to the next version -->
+      <action issue="VFS-690" dev="ggregory" type="add">
+        Allow to set key exchange algorithm explicitly. GitHub #32.
+      </action>
+      <action issue="VFS-692" dev="ggregory" type="update" due-to="Gary Gregory">
+        Update Apache Commons Collections from 4.2 to 4.3.
+      </action>
+      <action issue="VFS-693" dev="ggregory" type="update" due-to="Boris Petrov, Gary Gregory">
+        Add support for customizing FTP transfer aborted status codes. GitHub PR #51.
+      </action>
+      <action issue="VFS-694" dev="ggregory" type="fix" due-to="Boris Petrov">
+        Fix inability to start the DefaultFileMonitor after it has been stopped. GitHub PR #55.
+      </action>
+    </release>
+    <release version="2.3" date="2019-02-01" description="New features and bug fix release.">
+      <action issue="VFS-645" dev="ggregory" type="fix">
+		VfsClassLoaderTests and JarProviderTestCase fails on Java 9 and up.
+      </action>
+      <action issue="VFS-678" dev="ecki" type="fix">
+        Fix various LGTM.com code review warnings.
+      </action>
+      <action issue="VFS-652" dev="ecki" type="fix">
+        PatternFileSelector documentation to describe actual matching against getPath().
+      </action>
+      <action issue="VFS-650" dev="ggregory" type="update">
+        Update Apache Commons Compress from 1.15 to 1.16.1.
+      </action>
+      <action issue="VFS-646" dev="ggregory" type="update">
+        Update Apache Commons Compress from 1.14 to 1.15.
+      </action>
+      <action issue="VFS-589" dev="ggregory" type="fix" due-to="L, Gary Gregory">
+        SFTP moveTo operation hangs if the server does not support SSH channelExec.
+      </action>
+      <action issue="VFS-653" dev="ggregory" type="update">
+        Replace use of deprecated APIs in HDFS provider.
+      </action>
+      <action issue="VFS-655" dev="ggregory" type="fix" due-to="Arnaud MERGEY">
+        OSGI MANIFEST.MF "Import-Package" should be ";resolution:=optional" for Maven "optional" dependencies.
+      </action>
+      <action issue="VFS-657" dev="ggregory" type="fix" due-to="Elias Putz">
+        FileSelector implementations like FileDepthSelector should throw Exception.
+      </action>
+      <action issue="VFS-614" dev="ggregory" type="fix" due-to="Boris Petrov, Otto Fowler">
+        MonitorInputStream should not close the stream in read().
+      </action>
+      <action issue="VFS-666" dev="ggregory" type="update">
+        Update Apache Commons Collections from 4.1 to 4.2.
+      </action>
+      <action issue="VFS-667" dev="ggregory" type="fix">
+        org.apache.commons.vfs2.provider.res.ResourceFileProvider.findFile(FileObject, String, FileSystemOptions) should throw a org.apache.commons.vfs2.FileSystemException instead of a NPE when the class loader is null.
+      </action>
+      <action issue="VFS-668" dev="ggregory" type="update">
+        Throw a NPE with a better message when a class loader is null.
+      </action>
+      <action issue="VFS-669" dev="ggregory" type="fix">
+        org.apache.commons.vfs2.util.CombinedResources.loadResources(String) should not throw an NPE for the system class loader is null.
+      </action>
+      <action issue="VFS-671" dev="ggregory" type="update">
+        Update Apache Commons Compress from 1.16.1 to 1.18.
+      </action>
+      <action issue="VFS-675" dev="ggregory" type="fix">
+        NullPointerException at AbstractFileObject.java:221.
+      </action>
+      <action issue="VFS-680" dev="ggregory" type="update">
+        Update from Java 7 to Java 8.
+      </action>
+      <action issue="VFS-681" dev="ggregory" type="update" due-to="Robert DeRose">
+        VFS.setManager should be synchronized; #43.
+      </action>
+      <action issue="VFS-674" dev="ggregory" type="fix" due-to="Boris Petrov, Gary Gregory">
+        Cannot close an FTP input stream without an exception.
+      </action>
+      <action issue="VFS-682" dev="ggregory" type="update">
+        Throw a org.apache.commons.vfs2.FileSystemException instead of a NullPointerException in org.apache.commons.vfs2.impl.DefaultFileSystemManager.resolveName(FileName, String, NameScope).
+      </action>
+      <action issue="VFS-294" dev="ggregory" type="fix" due-to="Johannes Scharf">
+        NullPointerException in FtpFileObject.getChildFile().
+      </action>
+      <action issue="VFS-679" dev="ggregory" type="fix" due-to="Boris Petrov, Gary Gregory">
+        NullPointerException in FtpFileObject.doGetLastModifiedTime().
+      </action>
+      <action issue="VFS-398" dev="ggregory" type="fix" due-to="Otto Fowler">
+        FtpFileObject.getChildren() fails when a folder contains a file with a colon in the name.
+      </action>
+      <action issue="VFS-688" dev="ggregory" type="update">
+        [SFTP] Update jsch from 0.1.54 to 0.1.55.
+      </action>
+      <action issue="VFS-677" dev="ggregory" type="add" due-to="dingxbcn">
+        [SFTP] Add support for append mode.
+      </action>
+      <action issue="VFS-673" dev="ggregory" type="add" due-to="Oleksandr Lykhonosov">
+        [SFTP] Support com.jcraft.jsch.ConfigRepository (~/.ssh/config) with SftpFileSystemConfigBuilder and flag to load OpenSSHConfig.
+      </action>
+      <action issue="VFS-673" dev="ggregory" type="add" due-to="Daniel Banks">
+        DefaultFileSystemManager should implement AutoCloseable.
+      </action>
+      <action issue="VFS-637" dev="ggregory" type="add" due-to="Gary Gregory">
+        Zip files with legacy encoding and special characters let VFS crash.
+      </action>
+      <action issue="VFS-360" dev="ggregory" type="add" due-to="Woonsan Ko">
+        Add HTTP provider based on HttpComponents HttpClient 4.
+      </action>
+      <action issue="VFS-689" dev="ggregory" type="add" due-to="Gary Gregory">
+        org.apache.commons.vfs2.provider.http.HttpFileObject.getHeadMethod() does not release connection when an exception is thrown.
+      </action>
+    </release>
+    <release version="2.2" date="2017-10-06" description="New features and bug fix release.">
+      <action issue="VFS-642" dev="pschumacher" type="update" due-to="ilangoldfeld">
+        Upgrade to jcifs 1.3.17
+      </action>
+      <action issue="VFS-189" dev="kinow" type="fix">
+        Possible NPE in DefaultFileSystemManager.
+      </action>
+      <action issue="VFS-628" dev="ggregory" type="add">
+        Add a file inverter FileSelector: InvertIncludeFileSelector.
+      </action>
+      <action issue="VFS-612" dev="ggregory" type="update">
+        Update the platform requirement from Java 6 to Java 7.
+      </action>
+      <action issue="VFS-615" dev="ggregory" type="update">
+        Update Apache Commons Compress from 1.11 to 1.12.
+      </action>
+      <action issue="VFS-629" dev="ggregory" type="update">
+        Update Apache Commons Compress from 1.12 to 1.13.
+      </action>
+      <action issue="VFS-639" dev="ggregory" type="update">
+        Update Apache Commons Compress from 1.13 to 1.14.
+      </action>
+      <action issue="VFS-631" dev="ggregory" type="update">
+        Update from Apache Commons Net 3.5 to 3.6.
+      </action>
+      <action issue="VFS-632" dev="ggregory" type="update">
+        Update from JCraft jsch for SFTP/SSH from 0.1.53 to 0.1.54.
+      </action>
+      <action issue="VFS-621" dev="ggregory" type="update">
+        Add API VFS.setManager(FileSystemManager).
+      </action>
+      <action issue="VFS-643" dev="ggregory" type="update">
+        VFS should not log at the INFO level.
+      </action>
+      <action issue="VFS-620" dev="ggregory" type="fix" due-to="stevezhuang">
+        FileObject.moveTo(FileObject) API doesn't work well for a Linux FTP.
+      </action>
+      <action issue="VFS-291" dev="ggregory" type="fix">
+        ZIP archives are not properly closed after unzipping and cannot be deleted until the JVM exists.
+      </action>
+      <action issue="VFS-644" dev="ggregory" type="fix">
+        AbstractFileSystem.streamClosed() always sets openStream count to zero.
+      </action>
+    </release>
+    <release version="2.1" date="2016-05-19" description="New features and bug fix release.
+
+
+
+Please note that the Clirr report shows several errors.
+
+These may affect source compatibility.
+
+However they should not affect binary compatibility, as explained below.
+
+
+
+FileContent, FileName, FileObject, FileSystemManager, RandomAccessContent:
+
+The above interfaces have been updated to add new methods.
+
+This does not affect binary compatibility; for details please see:
+
+https://docs.oracle.com/javase/specs/jls/se7/html/jls-13.html#jls-13.5.3-100
+
+The above changes may affect source compatibility.
+
+
+Changes to method parameters and return types in TarFileObject and TarFileSystem
+
+The original parameter/return types were the following:
+
+org.apache.commons.vfs2.provider.tar.TarEntry
+
+org.apache.commons.vfs2.provider.tar.TarInputStream
+
+The above were package protected, so any methods using them did not form part of the public API.
+
+Therefore source and binary compatibility is not affected.">
+<!--       <action issue="VFS-443" dev="ggregory" type="update" due-to="nickallen"> -->
+<!--        [Local] Need an easy way to convert from a FileObject to a File. -->
+<!--       </action> -->
+<!-- START Might need to be moved to the next version -->
+     <action issue="VFS-607" dev="ggregory" type="update">
+        Update Apache Commons Compress from 1.10 to 1.11.
+     </action>
+     <action issue="VFS-608" dev="ggregory" type="update">
+        Update Apache Commons Net from 3.4 to 3.5.
+     </action>
+<!-- END Might need to be moved to the next version -->
+     <action issue="VFS-424" dev="ecki" type="fix">
+        Fix StandardFileSystemManager class loading so it works in a OSGi environment.
+     </action>
+      <action issue="VFS-490" dev="ecki" type="fix">
+        [vfsclassloader] Do not open folders with .jar extension. Adds tests.
+     </action>
+      <action issue="VFS-582" dev="ecki" type="fix">
+        [tests] revert rename of getTestDirectoryFile to make test classes more compatible for external providers.
+     </action>
+      <action issue="VFS-480" dev="ecki" type="fix">
+        Make startup of SoftRefsFileCache cleaner thread work and less racy to avoid leaks.
+     </action>
+      <action issue="VFS-549" dev="ecki" type="fix">
+        Use File.seperator instead of getProperty("file.separator").
+     </action>
+      <action issue="VFS-567" dev="ecki" type="fix" due-to="Antonio Petrelli">
+        [ftp] Ignore exceptions while QUIT/disconnect.
+     </action>
+      <action issue="VFS-572" dev="ecki" type="fix" due-to="Sandra Parsick">
+        [sftp] better documentation for knownhosts file option.
+     </action>
+      <action issue="VFS-574" dev="ecki" type="fix">
+        Ensure FileOpertionProviders are closed. Adds some testcases.
+        The error code for missing operations exceptions corrected: vfs.operation/operation-not-supported.error
+     </action>
+      <action issue="VFS-279" dev="ecki" type="fix" due-to="Didier Earith, Simon Legner">
+        [local] Avoid ClassCastException when replicating local files while OnCall caching is active.
+      </action>
+      <action issue="VFS-297" dev="joehni" type="fix" due-to="Kirill Safonov, Jimmy Praet">
+        [sftp] VSF fails to reuse FileSystem instances if FileSystemOptions contain
+        an array as value. Reported for SFTP using identities.
+      </action>
+      <action issue="VFS-198" dev="ecki" type="add" due-to="Andrew Franklin, Simon Legner">
+        [http] Make user agent configurable.
+      </action>
+      <action issue="VFS-202" dev="ecki" type="fix" due-to="Sergey Vladimirov, Simon Legner">
+        [http] Allow URLs responding with 405 to HEAD requests.
+      </action>
+      <action issue="VFS-490" dev="ecki" type="fix">
+        [hdfs] Make OSGi package imports for hdfs resolution=optional.
+        Removed all scopes from dependency management.
+      </action>
+      <action issue="VFS-560" dev="ecki" type="fix">
+        [http] avoid initial HEAD request to root of HttpFileSystem as it might be wrong context.
+      </action>
+      <action issue="VFS-236" dev="ecki" type="fix" due-to="Matt Casters">
+        [smb] Allow SMB to be used with no authentication.
+      </action>
+      <action issue="VFS-564" dev="ecki" type="fix" due-to="Dmitry Konstantinov">
+        Make some loggers static.
+      </action>
+      <action issue="VFS-555" dev="rwhitcomb" type="add">
+        [hdfs] Add the ability to specify an HDFS configuration file with HdfsFileSystemConfigBuilder.
+      </action>
+      <action issue="VFS-557" dev="ecki" type="fix">
+       [webdav][test] Create WebDav test directory in target/test. Avoid creating core/jackrabbit/tmp.
+       Logfiles of Jackrabbit are preserved when -DWebdavProviderTestCase.Debug=true is specified.
+      </action>
+      <action issue="VFS-558" dev="ecki" type="fix">
+       Make moveTo() and getParent() work with CacheStrategy.ON_CALL.
+       In case of FTP Provider it would lead otherwise to an UnsupportedOperationException.
+      </action>
+      <action dev="ecki" type="fix">
+       [sandbox] RACRandomAccessFile is now in org.apache.commons.vfs2.util package (so sandbox has only one overlapping package).
+      </action>
+      <action issue="VFS-530" dev="ecki" type="update" due-to="Dave Marion">
+       [hdfs] Use stable Apache Hadoop 2.6 dependencies.
+      </action>
+      <action dev="ecki" type="add">
+       [example] make VFS Shell print version and implement new 'info' command.
+      </action>
+      <action issue="VFS-552" dev="ecki" type="fix">
+       [sandbox] include vfs-providers.xml in JAR for dynamic registration of mime and smb providers.
+      </action>
+      <action issue="VFS-551" dev="ecki" type="fix" due-to="David Camilo Espitia Manrique">
+       Javadoc: make it clear that DefaultCryptor is only an obfuscation function.
+      </action>
+      <action issue="VFS-309" dev="ecki" type="fix">
+       DefaultFileContent will remove thread data whenever possible to avoid leaks.
+      </action>
+      <action issue="VFS-487" dev="ecki" type="fix" due-to="Dave Marion">
+       DefaultFileMonitor detects recreated files.
+      </action>
+      <action issue="VFS-523" dev="ecki" type="fix" due-to="Roger Whitcomb">
+       [HDFS] Make HdfsFileObject.equal use system hashcode/equals instead of
+       wrongly comparing file path only.
+      </action>
+      <action issue="VFS-544" dev="ecki" type="fix">
+       [Virtual] Allow virtual file systems and virtual file system provider
+       to be closed, to avoid memory leak.
+      </action>
+      <action issue="VFS-142" dev="ecki" type="fix" due-to="Ryan Boettcher">
+       Use ThreadLocal.remove() to clean out FileContentThreadData objects.
+      </action>
+      <action issue="VFS-545" dev="ecki" type="fix">
+       Make DefaultFilesCache remove reference to filesystem when it is cleared (closed).
+      </action>
+      <action issue="VFS-521" dev="ecki" type="fix">
+       [Ram][Tests] Make RAM provider test pass on Java 8
+       (JDK-8042377, self-suppression not permitted, MonitorOutputStream#close()).
+      </action>
+      <action issue="VFS-601" dev="ggregory" type="update">
+       Update Apache Commons Net from 3.3 to 3.4.
+      </action>
+      <action issue="VFS-602" dev="ggregory" type="update">
+       Update Apache Commons IO from 2.4 to 2.5.
+      </action>
+      <action issue="VFS-579" dev="ggregory" type="update">
+       Update Jsch from 0.1.51 to 0.1.53.
+      </action>
+      <action issue="VFS-542" dev="ggregory" type="update">
+       Update Jsch from 0.1.50 to 0.1.51.
+      </action>
+      <action issue="VFS-578" dev="ggregory" type="update">
+       Update Apache Commons Compress from 1.9 to 1.10.
+      </action>
+      <action issue="VFS-541" dev="ggregory" type="update">
+       Update Apache Commons Compress from 1.6 to 1.9.
+      </action>
+      <action issue="VFS-540" dev="ggregory" type="update">
+       Update Apache Commons Logging from 1.1.3 to 1.2.
+      </action>
+      <action issue="VFS-539" dev="ggregory" type="update">
+       Update Apache Commons Lang from 3.1 to 3.3.2.
+      </action>
+      <action issue="VFS-532" dev="ggregory" type="add" due-to="Gareth Daniel Smith">
+       [FTP] Allow configuring remoteVerificationEnabled on FTPClient instances.
+      </action>
+      <action issue="VFS-338" dev="ecki" type="fix" due-to="Daniel R.">
+       [Local][Tests] Avoid IndexOutOfBoundsException when validating local file URIs.
+      </action>
+      <action issue="VFS-526" dev="ecki" type="update">
+       [HDFS][Tests] Support HDFS testing on Windows (but keep profile "no-hdfs" enabled on Windows VFS-529).
+      </action>
+      <action issue="VFS-453" dev="ecki" type="update" due-to="Jiri Syrovy">
+       [HTTP][WEBDAV] Add file system options for connect and socket timeout.
+      </action>
+      <action issue="VFS-167" dev="ecki" type="update" due-to="Jimmy Praet">
+       [FTP] Allow Proxy support to file system options.
+      </action>
+      <action issue="VFS-520" dev="ecki" type="update">
+       Make Javadoc compatible with Java 8 tool.
+      </action>
+      <action issue="VFS-518" dev="ggregory" type="update" due-to="Roland Illig">
+        Documentation of FileSystemOptions should be more helpful.
+      </action>
+      <action issue="VFS-500" dev="ggregory" type="update" due-to="Bernd Eckenfels">
+        VFSClassLoader.findResources missing.
+      </action>
+      <action issue="VFS-514" dev="ggregory" type="update" due-to="Bernd Eckenfels">
+        [tests] PermissionsTests leaves unclean test directory.
+      </action>
+      <action issue="VFS-501" dev="ggregory" type="update" due-to="Yves Schumann">
+        Hide passwords from log/console output.
+      </action>
+      <action issue="VFS-496" dev="ggregory" type="update" due-to="Bernd Eckenfels">
+        Resource translation issues.
+      </action>
+      <action issue="VFS-494" dev="ggregory" type="update" due-to="Allen Xudong Cheng">
+        [SFTP] No support for SFTP servers with non Latin-1 file name encoding.
+      </action>
+      <action issue="VFS-368" dev="ggregory" type="update" due-to="Brendan Long">
+        [SFTP] Documentation implies that "userDirIsRoot" defaults to true.
+      </action>
+      <action issue="VFS-265" dev="ggregory" type="update" due-to="Scott Bjerstedt">
+        [FTP] Set user dir as root dir by default.
+      </action>
+      <action issue="VFS-489" dev="ggregory" type="fix" due-to="Bernd Eckenfels">
+        [tests] ProviderWriteTests#testListener does not fail cleanly.
+      </action>
+      <action issue="VFS-486" dev="ggregory" type="fix" due-to="Sam Haldane">
+        DefaultFileMonitor sleeps for twice the specified delay when checkPerRun > 0.
+      </action>
+      <action issue="VFS-484" dev="ggregory" type="update">
+        [SFTP] Update Jsch to 0.1.50 from 0.1.49.
+      </action>
+      <action issue="VFS-482" dev="ggregory" type="fix">
+        Wrong assertion messages in RAM provider test case.
+      </action>
+      <action issue="VFS-507" dev="ggregory" type="update">
+        Update to Apache Commons Collection 4.1 from 3.2.1 and use generics.
+      </action>
+      <action issue="VFS-476" dev="ggregory" type="update">
+        Update Apache Commons Logging to 1.1.3 from 1.1.2.
+      </action>
+      <action issue="VFS-475" dev="ggregory" type="update">
+        Update Apache Commons Net to 3.3 from 3.2.
+      </action>
+      <action issue="VFS-506" dev="ggregory" type="update">
+        [Tar][Bzip2] Update Apache Commons Compress to 1.6 from 1.5.
+      </action>
+      <action issue="VFS-471" dev="ggregory" type="update">
+        Update to Apache Commons Compress 1.5.
+      </action>
+      <action issue="VFS-469" dev="joehni" type="remove">
+        Remove unused dependency to javax.jcr:jcr.
+      </action>
+      <action issue="VFS-283" dev="joehni" type="update">
+        [SFTP] SFTP provider did not support passphrase-protected keys nor the exchange of a public key with
+        a requesting SFTP server. To support such triples (private key/passphrase/public key) instead of private
+        keys only, a new structure EntityInfo has been created. SftpFileSystemConfigBuilder has now the new
+        getter and setter methods getIdentityInfo and setIdentity info which replace the now deprecated methods
+        getIdentities and setIdentities.
+      </action>
+      <action issue="VFS-460" dev="joehni" type="fix">
+        Dependency to commons-compress set as optional.
+      </action>
+      <action issue="VFS-468" dev="joehni" type="add">
+        [FTPS] Add option for KeyManager (and TrustManager) to support FTPS servers that ask for the client certificate for authentication.
+      </action>
+      <action issue="VFS-464" dev="joehni" type="fix">
+        StaticUserAuthenticator should return only requested authentication data.
+      </action>
+      <action issue="VFS-463" dev="joehni" type="update">
+        FileSytemConfigBuilder supports system properties for the value of enum-based configuration entries.
+      </action>
+      <action issue="VFS-462" dev="joehni" type="update">
+        [FTPS] Deprecate FtpsFileSystemConfigBuilder.setFtpsType and FtpsFileSystemConfigBuilder.getFtpsType
+        in favor of FtpsFileSystemConfigBuilder.setFtpsMode and FtpsFileSystemConfigBuilder.getFtpsMode which
+        use new enum FtpsMode instead.
+      </action>
+      <action issue="VFS-461" dev="joehni" type="fix">
+        [FTP/FTPS] ConfigBuilder does not consider system properties for the value of SoTimeout and Encoding.
+      </action>
+      <action issue="VFS-412" dev="joehni" type="add" due-to="Jose Juan Montiel">
+        [FTPS] Add support for command to set the DataChannelProtectionLevel.
+      </action>
+      <action issue="VFS-459" dev="joehni" type="update">
+        [FTP/FTPS] Sent commands and the received answer is logged at debug level.
+      </action>
+      <action issue="VFS-458" dev="joehni" type="fix">
+        [FTPS] Provider missed functionality and bug fixes already available for the FTP provider.
+      </action>
+      <action issue="VFS-452" dev="ggregory" type="fix" due-to="Jean-Marc Borer">
+        [HTTP] HttpFileObject read/write attributes should reflect underlying FileSystem capabilities.
+      </action>
+      <action issue="VFS-285" dev="tn" type="fix" due-to="Kirill Safonov">
+        AbstractFileObject.getChildren() may corrupt its internal state if a filename
+        can not be resolved.
+      </action>
+      <action issue="VFS-450" dev="ggregory" type="fix" due-to="Dave Marion">
+        [HDFS] HDFSFileSystem.resolveFile() does not honor CacheStrategy.ON_RESOLVE.
+      </action>
+      <action issue="VFS-442" dev="ggregory" type="add" due-to="Dave Marion">
+        [HDFS] Add an HDFS FileSystem Provider.
+      </action>
+      <action issue="VFS-448" dev="ggregory" type="fix">
+        commons-vfs 2.0 JAR has flawed OSGi MANIFEST.MF.
+      </action>
+      <action issue="VFS-447" dev="ggregory" type="add">
+        [FTP/FTPS] Update Apache Commons Net to 3.2 from 3.1.
+      </action>
+      <action issue="VFS-445" dev="ggregory" type="add">
+        Add FileSystemManager.resolveFile(URI) and resolveFile(URL).
+      </action>
+      <action issue="VFS-440" dev="ggregory" type="add" due-to="bpiwowar">
+        [SFTP] Stream (e.g. netcat) proxy for Sftp file system (aka ProxyCommand).
+      </action>
+      <action issue="VFS-439" dev="ggregory" type="fix" due-to="pensecit">
+        StaticUserAuthenticator usage example wrong.
+      </action>
+      <action issue="VFS-437" dev="ggregory" type="fix" due-to="denniszhu, danttran, jpowang">
+        [FTP] StackOverFlowError getting the type of a directory with a symbolic link to a parent directory with the same name.
+      </action>
+      <action issue="VFS-435" dev="ggregory" type="fix" due-to="george scott">
+        FileSystemConfigBuilder does not use prefix for some system property lookups.
+      </action>
+      <action issue="VFS-434" dev="ggregory" type="fix">
+        FileSystemException should reuse IOException's chained exception.
+      </action>
+      <action issue="VFS-433" dev="ggregory" type="fix">
+        [WebDAV] Message "vfs.provider.webdav/propfind.error" is not defined.
+      </action>
+      <action issue="VFS-430" dev="ggregory" type="fix" due-to="antonin.stefanutti">
+        The SoftRefFilesCache class logs clear text password.
+      </action>
+      <action issue="VFS-432" dev="ggregory" type="add">
+        [HTTP][WebDAV] Allow HTTP follow redirect.
+      </action>
+      <action issue="VFS-431" dev="ggregory" type="add">
+        FileSystemOption does not implement toString().
+      </action>
+      <action issue="VFS-429" dev="ggregory" type="fix">
+        Remove extra FileSystem ivar in AbstractFileObject subclasses with generics.
+      </action>
+      <action issue="VFS-427" dev="ggregory" type="fix" due-to="awelynant">
+        [HTTP] NPE on HttpFileObject.getContent().getContentInfo().
+      </action>
+      <action issue="VFS-405" dev="ggregory" type="add" due-to="dwaszak">
+        Get/set the file permissions.
+      </action>
+      <action issue="VFS-457" dev="joehni" type="update">
+        Update test dependencies: sshd-core version 0.7.0 to 0.8.0; mina-core 2.0.4 to 2.0.7; junit 4.11 to 4.12; slf4j-* 1.5.5 to 1.5.11
+      </action>
+      <action issue="VFS-456" dev="joehni" type="update">
+        Use org.bouncycastel:bcprov-jdk16 instead of org.bouncycastle:bcprof-jdk15on since Java 1.6 is required.
+      </action>
+      <action issue="VFS-415" dev="ggregory" type="update">
+        Update VFS requirement to Java 1.6.
+      </action>
+      <action issue="VFS-426" dev="ggregory" type="add" due-to="daniel.bergholm">
+        HTTP URL query string not part of cache key.
+      </action>
+      <action issue="VFS-425" dev="ggregory" type="add">
+        Add API FileObject.isExecutable().
+      </action>
+      <action issue="VFS-421" dev="ggregory" type="add" due-to="bpiwowar">
+        [SFTP] Configure a custom Identity Repository.
+      </action>
+      <action issue="VFS-418" dev="ggregory" type="update">
+        Update to Apache Commons Compress 1.4.1.
+      </action>
+      <action issue="VFS-417" dev="ggregory" type="add">
+        [RAM][Local] Add and implement new API: RandomAccessContent.setLength(long).
+      </action>
+      <action issue="VFS-406" dev="ggregory" type="fix" due-to="mp1">
+        [RAM] resize throws ArrayOOBE when shrinking in size.
+      </action>
+      <action issue="VFS-321" dev="ggregory" type="update" due-to="sebb">
+        AbstractFileObject sometimes uses getFileSystem() and sometimes references "fs" field directly.
+      </action>
+      <action issue="VFS-327" dev="ggregory" type="update" due-to="sebb">
+        UriParser.canonicalizePath possible NPE for filenameParser.
+      </action>
+      <action issue="VFS-353" dev="ggregory" type="fix" due-to="bergander">
+        [FTP] Client should call logout before disconnecting.
+      </action>
+      <action issue="VFS-408" dev="ggregory" type="fix" due-to="anilm2@yahoo.com">
+        CompressedFileFileObject Exception thrown when container file has no extension.
+      </action>
+      <action issue="VFS-400" dev="ggregory" type="add">
+        Add a FileSelector based on regular expressions.
+      </action>
+      <action issue="VFS-258" dev="ggregory" type="fix" due-to="mzawirski">
+        [SFTP][RAM] Unsafe casting to AbstractFileObject subclasses in doRename().
+      </action>
+      <action issue="VFS-254" dev="ggregory" type="add" due-to="mzawirski">
+        Let FileObject and FileContent extend java.io.Closeable.
+      </action>
+      <action issue="VFS-413" dev="ggregory" type="fix" due-to="polivenok">
+        [FTP] No support for FTP servers with non Latin-1 control encoding.
+      </action>
+      <action issue="VFS-252" dev="ggregory" type="add">
+        [SMB] SmbFileObject does not support setLastModifiedTime while jcifs supports it.
+      </action>
+      <action issue="VFS-200" dev="ggregory" type="fix">
+        [SFTP] Failure when files are very large.
+      </action>
+      <action issue="VFS-416" dev="joehni" type="update">
+        [SFTP] Update Jsch to version 0.1.49 from 0.1.47.
+      </action>
+      <action issue="VFS-296" dev="ggregory" type="fix" due-to="andreasp">
+        [FTP] FTP socket timeout setting doesn't work if connect hangs.
+      </action>
+      <action issue="VFS-313" dev="ggregory" type="add" due-to="bdavis@saintandreas.org">
+        [FTP] Configuration does not include option for setting socket timeout.
+      </action>
+      <action issue="VFS-414" dev="ggregory" type="add">
+        [FTP] Add config API to set the file type.
+      </action>
+      <action issue="VFS-182" dev="ggregory" type="add">
+        [FTP] Usage of FTP with heterogeneous FTP server (possibility of using Ascii file type).
+      </action>
+      <action issue="VFS-395" dev="ggregory" type="update">
+        [POM] Remove maven-scm-* dependencies.
+      </action>
+      <action issue="VFS-411" dev="ggregory" type="update">
+        [SFTP] Update Jsch to version 0.1.47 from 0.1.46.
+      </action>
+      <action issue="VFS-410" dev="ggregory" type="fix" due-to="mstockhammer">
+        [SFTP] SftpFileObject getInputStream(long) reads the whole file into memory.
+      </action>
+      <action issue="VFS-409" dev="ggregory" type="update">
+        Update Apache Commons Compress to 1.4 from 1.3.
+      </action>
+      <action issue="VFS-407" dev="ggregory" type="fix" due-to="mp1">
+        [RAM] Reading a RAM FileSystem file fails because it never returns EOF -1.
+      </action>
+      <action issue="VFS-404" dev="ggregory" type="update">
+        [FTP][FTPS] Update Apache Commons Net to 3.1 from 3.0.1.
+      </action>
+      <action issue="VFS-402" dev="ggregory" type="update">
+        [WebDAV] Update Apache Jackrabbit 1.5.2 to 1.6.5.
+      </action>
+      <action issue="VFS-401" dev="ggregory" type="update">
+        Update JSch to 0.1.46 from 0.1.45 for the SFTP provider.
+      </action>
+      <action issue="VFS-392" dev="ggregory" type="update">
+        Build tests WebDAV file system with an embedded WebDAV server (Apache Jackrabbit).
+      </action>
+      <action issue="VFS-391" dev="ggregory" type="update">
+        Build tests URL HTTP file system with an embedded HTTP server (Apache HttpComponent Core).
+      </action>
+      <action issue="VFS-390" dev="ggregory" type="update">
+        Use variable argument list in org.apache.commons.vfs2.util.Messages instead of Object[].
+      </action>
+      <action issue="VFS-389" dev="ggregory" type="update">
+        Use variable argument lists in FileSystemException instead of Object[]s.
+      </action>
+      <action issue="VFS-388" dev="ggregory" type="update">
+        Build tests SFTP file system with an embedded SFTP server (Apache MINA).
+      </action>
+      <action issue="VFS-387" dev="ggregory" type="update">
+        Build tests FTP file system with an embedded FTP server (Apache MINA).
+      </action>
+      <action issue="VFS-386" dev="ggregory" type="update">
+        Build tests HTTP file system with an embedded HTTP server (Apache HttpComponent Core).
+      </action>
+      <action issue="VFS-385" dev="ggregory" type="update">
+        Add HTTP status code to HTTP file provider exception messages when available.
+      </action>
+      <action issue="VFS-384" dev="ggregory" type="update">
+        Update Apache Commons Net to 3.0.1 from 2.2 for FTP and SFTP providers.
+      </action>
+      <action issue="VFS-383" dev="ggregory" type="update">
+        Update JSch to 0.1.45 from 0.1.42 for the SFTP provider.
+      </action>
+      <action issue="VFS-382" dev="ggregory" type="fix">
+        SFTP getChildren() does not fail when called on a file.
+      </action>
+      <action issue="VFS-381" dev="ggregory" type="add">
+        Iterate over a FileObject using the Java "foreach" statement, to provide all descendents of a FileObject.
+      </action>
+      <action issue="VFS-380" dev="ggregory" type="fix">
+        FTP connect.error message used instead of SFTP connect.error message.
+      </action>
+      <action issue="VFS-379" dev="ggregory" type="update">
+        Replace custom BZIP2 code with Apache Commons Compress 1.3.
+      </action>
+      <action issue="VFS-378" dev="ggregory" type="fix">
+        Tar error message are missing from resource file.
+      </action>
+      <action issue="VFS-377" dev="ggregory" type="update">
+        Replace custom TAR code with Apache Commons Compress 1.3.
+      </action>
+      <action issue="VFS-375" dev="ggregory" type="update">
+        Upgrade to Apache Commons Compress 1.3 from 1.2.
+      </action>
+      <action issue="VFS-374" dev="ggregory" type="fix">
+        Incorrect lazy initialization of static field org.apache.commons.vfs2.util.Messages.resources in org.apache.commons.vfs2.util.Messages.findMessage(String)Add FileContent write APIs.
+      </action>
+      <action issue="VFS-373" dev="ggregory" type="add">
+        Add FileContent write APIs.
+      </action>
+      <action issue="VFS-372" dev="ggregory" type="add">
+        Add constructors FileDepthSelector() and FileDepthSelector(int).
+      </action>
+      <action issue="VFS-371" dev="ggregory" type="add">
+        Add FileObject API deleteAll().
+      </action>
+      <action issue="VFS-370" dev="ggregory" type="add">
+        Add a FileExtensionSelector class.
+      </action>
+      <action issue="VFS-367" dev="ggregory" type="add">
+        Add APIs FileObject isFile(), FileObject isFolder(), and FileName isFile().
+      </action>
+      <action issue="VFS-366" dev="ggregory" type="update">
+        Can't sort a List of FileObject's, FileObject to implement Comparable&lt;FileObject&gt;.
+      </action>
+      <action issue="VFS-341" dev="rgoers" type="update" due-to="Rajika Kumarasiri">
+        Enable logging of JSch using the Commons Logging Log object in SftpClientFactory.
+      </action>
+      <action issue="VFS-355" dev="rgoers" type="fix" due-to="Miroslav Pokorny">
+        The read method of RamFileRandomAccessContent's input stream does not return -1 at eof.
+      </action>
+      <action issue="VFS-356" dev="rgoers" type="fix">
+        Throw an IOException if an attempt is made to seek to a position before the start of the file.
+      </action>
+      <action issue="VFS-359" dev="rgoers" type="fix" due-to="Miroslav Pokorny">
+        Don't delete a RamFileObject if it is open.
+      </action>
+      <action issue="VFS-352" dev="rgoers" type="fix">
+        ZipFileSystem now uses an internal Map as a cache for all the files in the zip archive.
+      </action>
+      <action issue="VFS-351" dev="rgoers" type="fix" due-to="John Backstrand">
+        Chain the SftpException in the FileSystemException.
+      </action>
+      <action issue="VFS-361" dev="rgoers" type="update">
+        Upgrade commons collections version to 3.2.1.
+      </action>
+      <action issue="VFS-325" dev="rgoers" type="fix" due-to="Larry Reeve">
+        Allow # character in file names.
+      </action>
+      <action issue="VFS-335" dev="rgoers" type="fix">
+        Use atomic variables in MonitorInputStream.
+      </action>
+      <action issue="VFS-364" dev="rgoers" type="fix">
+        Check the href in the response for just a path in addition to a full uri.
+      </action>
+    </release>
+    <release version="2.0" date="2011-08-24" description="Backwards incompatible update of Commons VFS to Java 5">
+      <action issue="VFS-348" dev="rgoers" type="fix" due-to="Stefan Bodewig">
+        Update the version of commons-net.
+      </action>
+      <action issue="VFS-230" dev="rgoers" type="fix">
+        Documented FileSystem capabilities on the web site.
+      </action>
+      <action issue="VFS-337" dev="rgoers" type="fix">
+        AbstractFileObject and classes that extend from it use AbstractFileName in the constructor and in
+        the createFile method.
+      </action>
+       <action issue="VFS-245" dev="rgoers" type="fix">
+        AbstractFileName is not immutable as it should be. equals(), hashcode() and compareTo() have been modified
+        to return the same results regardless of whether the FileType is changed.
+      </action>
+      <action issue="VFS-334" dev="sebb" type="fix">
+        DefaultFileSystemConfigBuilder.getConfigClass() returns DefaultFileSystemConfigBuilder.class which is not a FileSystem
+      </action>
+      <action dev="rgoers" type="fix" issue="VFS-305" due-to="Tom">
+        Add encoding option to FTP provider.
+      </action>
+       <action dev="rgoers" type="fix" issue="VFS-315" due-to="David Hausladen">
+        Fix potential NullPointerException if the DavProperty is null or contains null values.
+      </action>
+       <action dev="rgoers" type="fix" issue="VFS-316" due-to="David Hausladen">
+        Add option for preemptive authentication for HTTP based protocols.
+      </action>
+       <action dev="rgoers" type="fix" issue="VFS-322" due-to="Curtis Boyden">
+        Allow tar files that contain files over 2GB in size.
+      </action>
+       <action dev="rgoers" type="fix" issue="VFS-324" due-to="sebb">
+        Clear the cache in RamFileSystem and the children in RamFileData.
+      </action>
+      <action dev="sebb" type="fix" issue="VFS-319">
+        Typo in FtpsFileSystemConfigBuilder.setFtpsType
+      </action>
+      <action dev="rgoers" type="fix" issue="VFS-227" due-to="Sergey Vladimirov">
+        InputStream and RandomAccessContent memory leak in FileContentThreadData
+      </action>
+      <action dev="rgoers" type="update" issue="VFS-263" due-to="Ingo Maas">
+        WebdavFileObject does not implement doSetAttribute()
+      </action>
+      <action dev="rgoers" type="fix" issue="VFS-259" due-to="Marek Zawirski">
+        Http and Webdav FIleContentInfoFactory: undress to AbstractFileObject before casting
+      </action>
+      <action dev="rgoers" type="fix" issue="VFS-261" due-to="Simon Olofsson">
+        WebDAV upload corrupts binary files
+      </action>
+      <action dev="rgoers" type="fix" issue="VFS-276" due-to="Vince Bonfanti">
+        add ProviderTestConfig.getDefaultFileSystemManager() method
+      </action>
+      <action dev="rgoers" type="fix" issue="VFS-282" due-to="Alexey">
+        SftpFileProvider and SftpFileSystemConfigBuilder can't change ssh authentication methods
+      </action>
+      <action dev="rgoers" type="fix" issue="VFS-269" due-to="Marek Zawirski">
+        HttpFileObject: unsupported content over 2GB length
+      </action>
+      <action dev="rgoers" type="fix" issue="VFS-287" due-to="Mircea-Eugen Ionica">
+        LocalFileName objects are not released from AbstractFileSystem.listenerMap when all listeners are removed.
+      </action>
+      <action dev="rgoers" type="fix" issue="VFS-216" due-to="Reetu Mutti">
+        The FTP Configuration includes an option to set a timeout for the data connection, but not for the socket
+        timeout. This is a problem, as idle sockets can cause your download to hang forever and never timeout.
+      </action>
+      <action dev="rgoers" type="fix" issue="VFS-289" due-to="Kirill Safonov">
+        FTP connection is not released If exception is thrown out of FtpFileObject.doGetOutputStream().
+      </action>
+      <action dev="rgoers" type="fix" issue="VFS-286" due-to="Kirill Safonov">
+        SftpFileObject.doListChildrenResolved() changes the working dir before doing ChannelSftp.ls() call.
+        If ls() throws an exception, the current directory is not reset. All the subsequent operations that rely on the
+        current dir will fail trying to change into nonexistent directory.
+      </action>
+      <action dev="jcarman" type="add" issue="VFS-264" due-to="Scott Bjerstedt">
+        Add FTPS provider.
+      </action>
+      <action dev="rgoers" type="add" issue="VFS-244">
+        Rename HttpRandomAccesContent to HttpRandomAccessContent.
+      </action>
+    </release>
+  </body>
+</document>