| Apache Commons VFS Project 2.7.0 |
| RELEASE NOTES |
| 2020-10-19 |
| |
| The Apache Commons VFS Project team is pleased to announce the release of Apache Commons VFS Project 2.7.0. |
| |
| Apache Commons VFS is a Virtual File System library. |
| |
| Maintenance release. Requires Java 8. |
| |
| Changes in this version include: |
| |
| New features: |
| o VFS-757: [SFTP] Configure whether exec detection is enabled #80. Thanks to ddg-igh. |
| o Add proxy config for some HTTP/HTTPS test #108. Thanks to PeterAlfredLee. |
| o Fix some test error when JVM's default language is not US en #107. Thanks to PeterAlfredLee. |
| o VFS-787: Allow users to set proxy schemes like http/https #122. Thanks to satish bhor. |
| o VFS-786: Allow users to set custom keystore types like JCEKS, PKCS12 #121. Thanks to satish bhor. |
| o VFS-570: Add HDFS write support #114. Thanks to garpinc, Gary Gregory. |
| o Add FileObject.getURI(). Thanks to Gary Gregory. |
| o Add FileObject.getPath(). Thanks to Gary Gregory. |
| o VFS-768: Update Apache httpclient 4.5.11 to 4.5.13 and httpclient5 5.0-beta7 to 5.0.3. Thanks to ddg-igh, Gary Gregory. |
| o Add org.apache.commons.vfs2.provider.sftp.SftpFileSystemConfigBuilder.isDisableDetectExecChannel(FileSystemOptions) and setDisableDetectExecChannel(FileSystemOptions, boolean). Thanks to Gary Gregory. |
| o Add org.apache.commons.vfs2.FileSystemConfigBuilder.toBooleanObject(boolean). Thanks to Gary Gregory. |
| o org.apache.commons.vfs2.provider.VfsComponent now implements java.io.Closeable. Thanks to Gary Gregory. |
| o Modify some code use try-with-resources #138. Thanks to PeterAlfredLee. |
| |
| Fixed Bugs: |
| o VFS-753: NumberFormatException in SftpFileSystem::getUId. Thanks to John Webb, Gary Gregory. |
| o VFS-779: Possible null pointer dereference in org.apache.commons.vfs2.impl.DefaultFileReplicator.close() due to return value of called method. Thanks to Gary Gregory. |
| o Modify some loop using stream API #96. Thanks to PeterAlfredLee. |
| o VFS-780: SftpFileSystem returns null channel and produce NPE - fix get… #110. Thanks to Wuchte. |
| o VFS-788: [webdav/webdav4] Jackrabbit1 and jackrabbit2 modules getting same OSGi symbolic name. Thanks to satish bhor. |
| o VFS-624: Fix for read() in constructors of LocalFileRandomAccessContent and RamFileRandomAccessContent #93. Thanks to PeterAlfredLee. |
| o VFS-769: Fix .tgz and .tbz2 createFileSystem fails #94 Thanks to PeterAlfredLee. |
| o VFS-664: Fix for file names with exclamation mark can not be read #95. Thanks to PeterAlfredLee. |
| o VFS-777: NoSuchMethodError due to multiple versions of commons-codec:commons-codec:jar. Thanks to Bing-ok, Gary Gregory. |
| o Remove workaround for JDK BUG: 6192331 which was fixed way back in Java 6: https://bugs.java.com/bugdatabase/view_bug.do?bug_id=6192331 Thanks to Gary Gregory. |
| o FileObject.getURL() returns an illegal URL when a it should escape a space. Thanks to Gary Gregory. |
| o Fix test fail caused by lack proxy configuration for machines behind a proxy #139. Thanks to PeterAlfredLee. |
| |
| Changes: |
| o Update some file from CRLF to LF #141. Thanks to PeterAlfredLee. |
| o VFS-755: Update org.apache.httpcomponents:httpclient from 4.5.10 to 4.5.11. Thanks to Gary Gregory. |
| o VFS-756: Update org.apache.jackrabbit:jackrabbit-standalone-components from 2.19.6 to 2.21.3. Thanks to Gary Gregory. |
| o VFS-754: Update Apache Commons Compress from 1.19 to 1.20. Thanks to Gary Gregory. |
| o Update tests from Apache Commons Lang 3.9 to 3.11. Thanks to Gary Gregory. |
| o Update tests from Log4j 2.13.0 to 2.13.3. Thanks to Gary Gregory. |
| o Update tests from org.mockito:mockito-core from 3.2.4 to 3.5.13, #131. Thanks to Gary Gregory, Dependabot. |
| o Update Apache Commons IO from 2.6 to 2.8.0. Thanks to Gary Gregory. |
| o Update site reports from org.apache.bcel:bcel 6.4.1 to 6.5.0. Thanks to Gary Gregory. |
| o Update actions/checkout from v1 to v2.3.3 #100, #109, #130. Thanks to Dependabot. |
| o Update actions/setup-java from v1.4.0 to v1.4.3 #111, #113, #133. Thanks to Dependabot. |
| o Update commons-parent from 50 to 52. Thanks to Gary Gregory. |
| o Update checkstyle from 8.27 to 8.36.2 #123, #132. Thanks to Dependabot. |
| o Update maven-pmd-plugin from 3.12.0 to 3.13.0 #125. Thanks to Dependabot. |
| o Update exec-maven-plugin from 1.6.0 to 3.0.0 #127. Thanks to Dependabot. |
| o Update com.puppycrawl.tools:checkstyle 8.36 -> 8.36.1. Thanks to Gary Gregory. |
| o Update Apache Commons Net from 3.6 to 3.7.2. Thanks to Gary Gregory. |
| o Update JUnit from 4.13 to 4.13.1. Thanks to Gary Gregory. |
| |
| |
| Historical list of changes: http://commons.apache.org/proper/commons-vfs/changes-report.html |
| |
| For complete information on Apache Commons VFS Project, including instructions on how to submit bug reports, |
| patches, or suggestions for improvement, see the Apache Apache Commons VFS Project website: |
| |
| http://commons.apache.org/proper/commons-vfs/ |
| |
| Download page: http://commons.apache.org/proper/commons-vfs/download_vfs.cgi |
| |
| ----------------------------------------------------------------------------- |
| |
| Apache Commons VFS Project 2.6.0 |
| RELEASE NOTES |
| 2020-01-06 |
| |
| The Apache Commons VFS Project team is pleased to announce the release of Apache Commons VFS Project 2.6.0. |
| |
| Apache Commons VFS is a Virtual File System library. |
| |
| New features and bug fix release. |
| |
| Changes in this version include: |
| |
| Fixed Bugs: |
| o Clean up tests and simplify assertions #76. Thanks to Eitan Adler. |
| o VFS-750: Fix backwards incompatibility in AbstractFileObject.getInputStream(). Thanks to Boris Petrov, Gary Gregory. |
| o VFS-751: Deprecate org.apache.commons.vfs2.FileUtil for org.apache.commons.vfs2.util.FileObjectUtils. Thanks to Gary Gregory. |
| |
| Changes: |
| o Update JUnit from 4.12 to 4.13. Thanks to Gary Gregory. |
| |
| |
| Historical list of changes: http://commons.apache.org/proper/commons-vfs/changes-report.html |
| |
| For complete information on Apache Commons VFS Project, including instructions on how to submit bug reports, |
| patches, or suggestions for improvement, see the Apache Apache Commons VFS Project website: |
| |
| http://commons.apache.org/proper/commons-vfs/ |
| |
| Download page: http://commons.apache.org/proper/commons-vfs/download_vfs.cgi |
| |
| ----------------------------------------------------------------------------- |
| |
| Apache Commons VFS 2.5.0 |
| RELEASE NOTES |
| 2019-12-24 |
| |
| The Apache Commons VFS team is pleased to announce the release of Apache Commons VFS 2.5.0. |
| |
| Apache Commons VFS is a Virtual File System library. |
| |
| New features and bug fix release. |
| |
| Changes in this version include: |
| |
| New features: |
| o VFS-734: Add functional interface org.apache.commons.vfs2.function.VfsConsumer. Thanks to Gary Gregory. |
| o VFS-735: Add org.apache.commons.vfs2.FileSystemManager.close() via AutoCloseable. Thanks to Gary Gregory. |
| o VFS-736: Add org.apache.commons.vfs2.VFS.reset(). Thanks to Gary Gregory. |
| o VFS-742: Add org.apache.commons.vfs2.FileContent.isEmpty(). Thanks to Gary Gregory. |
| o VFS-743: Add org.apache.commons.vfs2.provider.compressed.CompressedFileFileObject.SIZE_UNDEFINED. Thanks to Gary Gregory. |
| o VFS-687: Add http5 and http5s providers (#74) Thanks to Woonsan Ko, Gary Gregory. |
| o VFS-686: Add webdav4 provider based on the latest Jackrabbit 2.x #52. Thanks to Woonsan Ko, Gary Gregory. |
| o VFS-738: Deprecate org.apache.commons.vfs2.FileChangeEvent.getFile() in favor of getFileObject(). Thanks to Gary Gregory. |
| |
| Fixed Bugs: |
| o VFS-741: FileObject#getChildren allows listing of files with known scheme prefix (generalizes VFS-398). |
| o VFS-726: getInputStream(int bufferSize) on SftpFileObject effectively ignores buffer size. Thanks to Cornelius Höfig, Gary Gregory. |
| o VFS-704: Some providers wrap their input/output streams twice in a BufferedInputStream. Thanks to Boris Petrov, Gary Gregory. |
| o VFS-727: Prevented creation of singleton file system manager from providers. Thanks to Michiel Hendriks, Gary Gregory. |
| o VFS-733: Parent layer of ZipFileSystem set to null through OnCallRefreshFileObject and DecoratedFileObject.refresh(). Thanks to Falco, Gary Gregory, Bruno P. Kinoshita. |
| o VFS-739: Changes to parseUri breaks backward compatibility by throwing NullPointerException in some cases. Thanks to xia0c, Gary Gregory. |
| o VFS-744: org.apache.commons.vfs2.FileContent.getByteArray() can throw NegativeArraySizeException for BZip2 files. Thanks to Gary Gregory. |
| o VFS-590: SFTP moveTo operation might fail on permission checks even if the operation itself might succeed. #75. Thanks to L, Alex Pearce, Gary Gregory. |
| o VFS-617: SFTP isReadable fails if unable to determine group identity. #75. Thanks to Tim Nickels, Joshua Woods, David Johansson, Bernd Eckenfels, Len, Nim Lhûg, Vineet Tyagi, Gopal Warawate, Alex Pearce, Gary Gregory. |
| o VFS-444: ResourceFileProvider "res://" failed to obtain FileObject from resolved FileName. Thanks to Walter Eaves, Xavier Dury, Michiel Hendriks, Gary Gregory. |
| |
| Changes: |
| o VFS-737: Update Hadoop from 3.2.0 to 3.2.1. Thanks to Gary Gregory. |
| o VFS-728: Update Apache Commons Compress from 1.18 to 1.19. Thanks to Gary Gregory. |
| o VFS-729: Upgrade Hadoop to 2.7.4 or later; will use current 3.2.0. Thanks to Michiel Hendriks, Gary Gregory. |
| o VFS-731: Update org.apache.httpcomponents:httpclient from 4.5.9 to 4.5.10. Thanks to Gary Gregory. |
| o VFS-732: Update org.apache.httpcomponents:httpcore-nio from 4.4.11 to 4.4.12. Thanks to Gary Gregory. |
| o Update tests using org.mockito:mockito-core from 3.0.0 to 3.1.0. Thanks to Gary Gregory. |
| o VFS-749: Update Apache Commons Parent from 48 to 50. Thanks to Gary Gregory. |
| |
| |
| Historical list of changes: http://commons.apache.org/proper/commons-vfs/changes-report.html |
| |
| For complete information on Apache Commons VFS, including instructions on how to submit bug reports, |
| patches, or suggestions for improvement, see the Apache Apache Commons VFS website: |
| |
| http://commons.apache.org/proper/commons-vfs/ |
| |
| Download it from http://commons.apache.org/proper/commons-vfs/download_vfs.cgi |
| |
| ----------------------------------------------------------------------------- |
| |
| Apache Commons VFS 2.4.1 |
| RELEASE NOTES |
| 2019-08-10 |
| |
| The Apache Commons VFS team is pleased to announce the release of Apache Commons VFS 2.4.1 |
| |
| Apache Commons VFS is a Virtual File System library. |
| |
| New features and bug fix release. |
| |
| Changes in this version include: |
| |
| Fixed Bugs: |
| o VFS-725: [Local] org.apache.commons.vfs2.FileContent.getLastModifiedTime() is losing milliseconds (always ends in 000). Thanks to Gary Gregory. |
| o VFS-724: FileContent#getByteArray() throws IllegalArgumentException: Buffer size <= 0 when file size is 0. Thanks to William R, Gary Gregory. |
| o Javadoc fixes. Thanks to Gary Gregory. |
| |
| |
| Historical list of changes: http://commons.apache.org/proper/commons-vfs/changes-report.html |
| |
| For complete information on Apache Commons VFS, including instructions on how to submit bug reports, |
| patches, or suggestions for improvement, see the Apache Apache Commons VFS website: |
| |
| Visit http://commons.apache.org/proper/commons-vfs/ |
| |
| Download it from http://commons.apache.org/proper/commons-vfs/download_vfs.cgi |
| |
| ----------------------------------------------------------------------------- |
| |
| Apache Commons VFS 2.4 |
| RELEASE NOTES |
| |
| The Apache Commons VFS team is pleased to announce the release of Apache Commons VFS 2.4. |
| |
| Apache Commons VFS is a Virtual File System library. |
| |
| New features and bug fix release. |
| |
| Changes in this version include: |
| |
| New features: |
| o VFS-690: Allow to set key exchange algorithm explicitly. GitHub #32. |
| o VFS-497: Ported filters from Commons IO #9. Thanks to Michael Schnell. |
| o VFS-696: More efficient comparison in FileExtensionSelector #44. Thanks to Robert DeRose. |
| o VFS-660: Expose workaround for connecting to FTP server from different subnets in PASV mode #35. Thanks to Liu Yubao. |
| o VFS-699: Add setting for FTP encoding auto-detection #58. Thanks to Boris Petrov. |
| o VFS-706: Add ability to specify buffer sizes #59. Thanks to Boris Petrov. |
| o VFS-609: SFTP provider doesn't support a private key as byte array #60. Thanks to stevezhuang, Rostislav, Gary Gregory. |
| o VFS-707: Update Apache HttpClient from 4.5.7 to 4.5.8. Thanks to Gary Gregory. |
| o VFS-712: Add null-safe org.apache.commons.vfs2.util.FileObjectUtils.exists(FileObject). Thanks to Gary Gregory. |
| o VFS-713: Add FileObjectUtils.readProperties(FileObject) method to read a .properties file. Thanks to Gary Gregory. |
| o VFS-715: Add org.apache.commons.vfs2.FileContent.getByteArray(). Thanks to Gary Gregory. |
| o VFS-719: Add methods to get the contents of file objects as strings. Thanks to Gary Gregory. |
| o VFS-720: Implement Closeable for RandomAccessContent #66. Thanks to Boris Petrov. |
| o VFS-721: Add support for symbolic links for the local file system and add FileObject#isSymbolicLink(). Thanks to Gary Gregory. |
| |
| Fixed Bugs: |
| o VFS-694: Fix inability to start the DefaultFileMonitor after it has been stopped. GitHub PR #55. Thanks to Boris Petrov. |
| o VFS-696: SFTP HTTP and SOCKS proxy authentication. GitHub PR #49. Thanks to rayzzed. |
| o VFS-707: [SFTP] SftpFileSystem.executeCommand(String, StringBuilder) can leak ChannelExec objects. Thanks to Gary Gregory. |
| o VFS-709: [SFTP] SftpFileSystem.getGroupsIds() can initialize underlying data more than once while multithreading. Thanks to Gary Gregory. |
| o VFS-710: [SFTP] SftpFileSystem.getUid() can initialize underlying data more than once while multithreading. Thanks to Gary Gregory. |
| o VFS-711: [SFTP] SftpFileSystem can initialize underlying Session more than once while multithreading. Thanks to Gary Gregory. |
| o VFS-662: [SFTP] SftpFileSystem has Thread-safe issue about idleChannel (#36). Thanks to qxo, Alexey Abashev, Gary Gregory. |
| o VFS-700: Some tests fail on Java 11 and above. Thanks to Gary Gregory, Matthias Krueger. |
| o VFS-716: Fix AbstractFileName.getURI returning unencoded #-sign #64. Thanks to Boris Petrov. |
| o VFS-698: SFTP file attributes are fetched multiple times leading to very slow directory listing; #65. Thanks to David Septimus, Bernd. |
| o VFS-717: Update org.apache.httpcomponents:httpclient from 4.5.8 to 4.5.9. Thanks to Gary Gregory. |
| o VFS-718: MonitorInputStream should not close the stream in "read" #67. Thanks to Boris Petrov. |
| |
| Changes: |
| o VFS-692: Update Apache Commons Collections from 4.2 to 4.3. Thanks to Gary Gregory. |
| o VFS-693: Add support for customizing FTP transfer aborted status codes. GitHub PR #51. Thanks to Boris Petrov, Gary Gregory. |
| o VFS-702: Simplify adding files to DefaultFileMonitor #57. Thanks to Boris Petrov. |
| o VFS-703: Update Apache Commons Lang from 3.8.1 to 3.9. Thanks to Gary Gregory. |
| o VFS-722: Update Apache Commons Collections from 4.3 to 4.4. Thanks to Gary Gregory. |
| o Source incompatibility: org.apache.commons.vfs2.FileFilter.accept(FileSelectInfo) now throws checked exception FileSystemException. |
| o Public API note: The overridden methods getURI() and getFriendlyURI() in org.apache.commons.vfs2.provider.local.LocalFileName where removed but are implemented in a superclass. |
| o Public API note: The overridden method org.apache.commons.vfs2.provider.sftp.SftpFileObject#refresh() was removed but is implemented in a superclass. |
| o Public API note: The overridden method org.apache.commons.vfs2.provider.sftp.SftpFileProvider#init() was removed but is implemented in a superclass. |
| |
| |
| Historical list of changes: http://commons.apache.org/proper/commons-vfs/changes-report.html |
| |
| For complete information on Apache Commons VFS, including instructions on how to submit bug reports, |
| patches, or suggestions for improvement, see the Apache Apache Commons VFS website: |
| |
| Visit http://commons.apache.org/proper/commons-vfs/ |
| |
| Download it from http://commons.apache.org/proper/commons-vfs/download_vfs.cgi |
| |
| ----------------------------------------------------------------------------- |
| |
| Apache Commons VFS 2.3 |
| RELEASE NOTES |
| |
| The Apache Commons VFS team is pleased to announce the release of Apache Commons VFS 2.3. |
| |
| Apache Commons VFS is a Virtual File System library. |
| |
| New features and bug fix release. |
| |
| Changes in this version include: |
| |
| New features: |
| o VFS-677: [SFTP] Add support for append mode. Thanks to dingxbcn. |
| o VFS-673: [SFTP] Support com.jcraft.jsch.ConfigRepository (~/.ssh/config) with SftpFileSystemConfigBuilder and flag to load OpenSSHConfig. Thanks to Oleksandr Lykhonosov. |
| o VFS-673: DefaultFileSystemManager should implement AutoCloseable. Thanks to Daniel Banks. |
| o VFS-637: Zip files with legacy encoding and special characters let VFS crash. Thanks to Gary Gregory. |
| o VFS-360: Add HTTP provider based on HttpComponents HttpClient 4. Thanks to Woonsan Ko. |
| o VFS-689: org.apache.commons.vfs2.provider.http.HttpFileObject.getHeadMethod() does not release connection when an exception is thrown. Thanks to Gary Gregory. |
| |
| Fixed Bugs: |
| o VFS-645: VfsClassLoaderTests and JarProviderTestCase fails on Java 9 and up. |
| o VFS-678: Fix various LGTM.com code review warnings. |
| o VFS-652: PatternFileSelector documentation to describe actual matching against getPath(). |
| o VFS-589: SFTP moveTo operation hangs if the server does not support SSH channelExec. Thanks to L, Gary Gregory. |
| o VFS-655: OSGI MANIFEST.MF "Import-Package" should be ";resolution:=optional" for Maven "optional" dependencies. Thanks to Arnaud MERGEY. |
| o VFS-657: FileSelector implementations like FileDepthSelector should throw Exception. Thanks to Elias Putz. |
| o VFS-614: MonitorInputStream should not close the stream in read(). Thanks to Boris Petrov, Otto Fowler. |
| o VFS-667: 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. |
| o VFS-669: org.apache.commons.vfs2.util.CombinedResources.loadResources(String) should not throw an NPE for the system class loader is null. |
| o VFS-675: NullPointerException at AbstractFileObject.java:221. |
| o VFS-674: Cannot close an FTP input stream without an exception. Thanks to Boris Petrov, Gary Gregory. |
| o VFS-294: NullPointerException in FtpFileObject.getChildFile(). Thanks to Johannes Scharf. |
| o VFS-679: NullPointerException in FtpFileObject.doGetLastModifiedTime(). Thanks to Boris Petrov, Gary Gregory. |
| o VFS-398: FtpFileObject.getChildren() fails when a folder contains a file with a colon in the name. Thanks to Otto Fowler. |
| |
| Changes: |
| o VFS-650: Update Apache Commons Compress from 1.15 to 1.16.1. |
| o VFS-646: Update Apache Commons Compress from 1.14 to 1.15. |
| o VFS-653: Replace use of deprecated APIs in HDFS provider. |
| o VFS-666: Update Apache Commons Collections from 4.1 to 4.2. |
| o VFS-668: Throw a NPE with a better message when a class loader is null. |
| o VFS-671: Update Apache Commons Compress from 1.16.1 to 1.18. |
| o VFS-680: Update from Java 7 to Java 8. |
| o VFS-681: VFS.setManager should be synchronized; #43. Thanks to Robert DeRose. |
| o VFS-682: Throw a org.apache.commons.vfs2.FileSystemException instead of a NullPointerException in org.apache.commons.vfs2.impl.DefaultFileSystemManager.resolveName(FileName, String, NameScope). |
| o VFS-688: [SFTP] Update jsch from 0.1.54 to 0.1.55. |
| |
| |
| Historical list of changes: http://commons.apache.org/proper/commons-vfs/changes-report.html |
| |
| For complete information on Apache Commons VFS, including instructions on how to submit bug reports, |
| patches, or suggestions for improvement, see the Apache Apache Commons VFS website: |
| |
| Visit http://commons.apache.org/proper/commons-vfs/ |
| |
| Download it from http://commons.apache.org/proper/commons-vfs/download_vfs.cgi |
| |
| ----------------------------------------------------------------------------- |
| |
| Apache Commons VFS 2.2 |
| RELEASE NOTES |
| |
| The Apache Commons VFS team is pleased to announce the release of Apache Commons VFS 2.2. |
| |
| Apache Commons VFS is a Virtual File System library. |
| |
| New features and bug fix release. |
| |
| Changes in this version include: |
| |
| New features: |
| o VFS-628: Add a file inverter FileSelector: InvertIncludeFileSelector. |
| |
| Fixed Bugs: |
| o VFS-189: Possible NPE in DefaultFileSystemManager. |
| o VFS-620: FileObject.moveTo(FileObject) API doesn't work well for a Linux FTP. Thanks to stevezhuang. |
| o VFS-291: ZIP archives are not properly closed after unzipping and cannot be deleted until the JVM exists. |
| o VFS-644: AbstractFileSystem.streamClosed() always sets openStream count to zero. |
| |
| Changes: |
| o VFS-642: Upgrade to jcifs 1.3.17 Thanks to ilangoldfeld. |
| o VFS-612: Update the platform requirement from Java 6 to Java 7. |
| o VFS-615: Update Apache Commons Compress from 1.11 to 1.12. |
| o VFS-629: Update Apache Commons Compress from 1.12 to 1.13. |
| o VFS-639: Update Apache Commons Compress from 1.13 to 1.14. |
| o VFS-631: Update from Apache Commons Net 3.5 to 3.6. |
| o VFS-632: Update from JCraft jsch for SFTP/SSH from 0.1.53 to 0.1.54. |
| o VFS-621: Add API VFS.setManager(FileSystemManager). |
| o VFS-643: VFS should not log at the INFO level. |
| |
| Known Problems: |
| o VFS-645: VfsClassLoaderTests fails on Java 9. |
| |
| |
| Historical list of changes: http://commons.apache.org/proper/commons-vfs/changes-report.html |
| |
| For complete information on Apache Commons VFS, including instructions on how to submit bug reports, |
| patches, or suggestions for improvement, see the Apache Apache Commons VFS website: |
| |
| Visit http://commons.apache.org/proper/commons-vfs/ |
| |
| Download it from http://commons.apache.org/proper/commons-vfs/download_vfs.cgi |
| |
| ----------------------------------------------------------------------------- |
| |
| Apache Commons VFS 2.1 |
| RELEASE NOTES |
| |
| The Apache Commons VFS team is pleased to announce the release of Apache Commons VFS 2.1. |
| |
| Apache Commons VFS is a Virtual File System library. |
| |
| 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. |
| |
| Changes in this version include: |
| |
| New features: |
| o VFS-198: [http] Make user agent configurable. Thanks to Andrew Franklin, Simon Legner. |
| o VFS-555: [hdfs] Add the ability to specify an HDFS configuration file with HdfsFileSystemConfigBuilder. |
| o [example] make VFS Shell print version and implement new 'info' command. |
| o VFS-532: [FTP] Allow configuring remoteVerificationEnabled on FTPClient instances. Thanks to Gareth Daniel Smith. |
| o VFS-468: [FTPS] Add option for KeyManager (and TrustManager) to support FTPS servers that ask for the client certificate for authentication. |
| o VFS-412: [FTPS] Add support for command to set the DataChannelProtectionLevel. Thanks to Jose Juan Montiel. |
| o VFS-442: [HDFS] Add an HDFS FileSystem Provider. Thanks to Dave Marion. |
| o VFS-447: [FTP/FTPS] Update Apache Commons Net to 3.2 from 3.1. |
| o VFS-445: Add FileSystemManager.resolveFile(URI) and resolveFile(URL). |
| o VFS-440: [SFTP] Stream (e.g. netcat) proxy for Sftp file system (aka ProxyCommand). Thanks to bpiwowar. |
| o VFS-432: [HTTP][WebDAV] Allow HTTP follow redirect. |
| o VFS-431: FileSystemOption does not implement toString(). |
| o VFS-405: Get/set the file permissions. Thanks to dwaszak. |
| o VFS-426: HTTP URL query string not part of cache key. Thanks to daniel.bergholm. |
| o VFS-425: Add API FileObject.isExecutable(). |
| o VFS-421: [SFTP] Configure a custom Identity Repository. Thanks to bpiwowar. |
| o VFS-417: [RAM][Local] Add and implement new API: RandomAccessContent.setLength(long). |
| o VFS-400: Add a FileSelector based on regular expressions. |
| o VFS-254: Let FileObject and FileContent extend java.io.Closeable. Thanks to mzawirski. |
| o VFS-252: [SMB] SmbFileObject does not support setLastModifiedTime while jcifs supports it. |
| o VFS-313: [FTP] Configuration does not include option for setting socket timeout. Thanks to bdavis@saintandreas.org. |
| o VFS-414: [FTP] Add config API to set the file type. |
| o VFS-182: [FTP] Usage of FTP with heterogeneous FTP server (possibility of using Ascii file type). |
| o VFS-381: Iterate over a FileObject using the Java "foreach" statement, to provide all descendents of a FileObject. |
| o VFS-373: Add FileContent write APIs. |
| o VFS-372: Add constructors FileDepthSelector() and FileDepthSelector(int). |
| o VFS-371: Add FileObject API deleteAll(). |
| o VFS-370: Add a FileExtensionSelector class. |
| o VFS-367: Add APIs FileObject isFile(), FileObject isFolder(), and FileName isFile(). |
| |
| Fixed Bugs: |
| o VFS-424: Fix StandardFileSystemManager class loading so it works in a OSGi environment. |
| o VFS-490: [vfsclassloader] Do not open folders with .jar extension. Adds tests. |
| o VFS-582: [tests] revert rename of getTestDirectoryFile to make test classes more compatible for external providers. |
| o VFS-480: Make startup of SoftRefsFileCache cleaner thread work and less racy to avoid leaks. |
| o VFS-549: Use File.seperator instead of getProperty("file.separator"). |
| o VFS-567: [ftp] Ignore exceptions while QUIT/disconnect. Thanks to Antonio Petrelli. |
| o VFS-572: [sftp] better documentation for knownhosts file option. Thanks to Sandra Parsick. |
| o VFS-574: Ensure FileOpertionProviders are closed. Adds some testcases. |
| The error code for missing operations exceptions corrected: vfs.operation/operation-not-supported.error |
| o VFS-279: [local] Avoid ClassCastException when replicating local files while OnCall caching is active. Thanks to Didier Earith, Simon Legner. |
| o VFS-297: [sftp] VSF fails to reuse FileSystem instances if FileSystemOptions contain |
| an array as value. Reported for SFTP using identities. Thanks to Kirill Safonov, Jimmy Praet. |
| o VFS-202: [http] Allow URLs responding with 405 to HEAD requests. Thanks to Sergey Vladimirov, Simon Legner. |
| o VFS-490: [hdfs] Make OSGi package imports for hdfs resolution=optional. |
| Removed all scopes from dependency management. |
| o VFS-560: [http] avoid initial HEAD request to root of HttpFileSystem as it might be wrong context. |
| o VFS-236: [smb] Allow SMB to be used with no authentication. Thanks to Matt Casters. |
| o VFS-564: Make some loggers static. Thanks to Dmitry Konstantinov. |
| o VFS-557: [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. |
| o VFS-558: Make moveTo() and getParent() work with CacheStrategy.ON_CALL. |
| In case of FTP Provider it would lead otherwise to an UnsupportedOperationException. |
| o [sandbox] RACRandomAccessFile is now in org.apache.commons.vfs2.util package (so sandbox has only one overlapping package). |
| o VFS-552: [sandbox] include vfs-providers.xml in JAR for dynamic registration of mime and smb providers. |
| o VFS-551: Javadoc: make it clear that DefaultCryptor is only an obfuscation function. Thanks to David Camilo Espitia Manrique. |
| o VFS-309: DefaultFileContent will remove thread data whenever possible to avoid leaks. |
| o VFS-487: DefaultFileMonitor detects recreated files. Thanks to Dave Marion. |
| o VFS-523: [HDFS] Make HdfsFileObject.equal use system hashcode/equals instead of |
| wrongly comparing file path only. Thanks to Roger Whitcomb. |
| o VFS-544: [Virtual] Allow virtual file systems and virtual file system provider |
| to be closed, to avoid memory leak. |
| o VFS-142: Use ThreadLocal.remove() to clean out FileContentThreadData objects. Thanks to Ryan Boettcher. |
| o VFS-545: Make DefaultFilesCache remove reference to filesystem when it is cleared (closed). |
| o VFS-521: [Ram][Tests] Make RAM provider test pass on Java 8 |
| (JDK-8042377, self-suppression not permitted, MonitorOutputStream#close()). |
| o VFS-338: [Local][Tests] Avoid IndexOutOfBoundsException when validating local file URIs. Thanks to Daniel R.. |
| o VFS-489: [tests] ProviderWriteTests#testListener does not fail cleanly. Thanks to Bernd Eckenfels. |
| o VFS-486: DefaultFileMonitor sleeps for twice the specified delay when checkPerRun > 0. Thanks to Sam Haldane. |
| o VFS-482: Wrong assertion messages in RAM provider test case. |
| o VFS-460: Dependency to commons-compress set as optional. |
| o VFS-464: StaticUserAuthenticator should return only requested authentication data. |
| o VFS-461: [FTP/FTPS] ConfigBuilder does not consider system properties for the value of SoTimeout and Encoding. |
| o VFS-458: [FTPS] Provider missed functionality and bug fixes already available for the FTP provider. |
| o VFS-452: [HTTP] HttpFileObject read/write attributes should reflect underlying FileSystem capabilities. Thanks to Jean-Marc Borer. |
| o VFS-285: AbstractFileObject.getChildren() may corrupt its internal state if a filename |
| can not be resolved. Thanks to Kirill Safonov. |
| o VFS-450: [HDFS] HDFSFileSystem.resolveFile() does not honor CacheStrategy.ON_RESOLVE. Thanks to Dave Marion. |
| o VFS-448: commons-vfs 2.0 JAR has flawed OSGi MANIFEST.MF. |
| o VFS-439: StaticUserAuthenticator usage example wrong. Thanks to pensecit. |
| o VFS-437: [FTP] StackOverFlowError getting the type of a directory with a symbolic link to a parent directory with the same name. Thanks to denniszhu, danttran, jpowang. |
| o VFS-435: FileSystemConfigBuilder does not use prefix for some system property lookups. Thanks to george scott. |
| o VFS-434: FileSystemException should reuse IOException's chained exception. |
| o VFS-433: [WebDAV] Message "vfs.provider.webdav/propfind.error" is not defined. |
| o VFS-430: The SoftRefFilesCache class logs clear text password. Thanks to antonin.stefanutti. |
| o VFS-429: Remove extra FileSystem ivar in AbstractFileObject subclasses with generics. |
| o VFS-427: [HTTP] NPE on HttpFileObject.getContent().getContentInfo(). Thanks to awelynant. |
| o VFS-406: [RAM] resize throws ArrayOOBE when shrinking in size. Thanks to mp1. |
| o VFS-353: [FTP] Client should call logout before disconnecting. Thanks to bergander. |
| o VFS-408: CompressedFileFileObject Exception thrown when container file has no extension. Thanks to anilm2@yahoo.com. |
| o VFS-258: [SFTP][RAM] Unsafe casting to AbstractFileObject subclasses in doRename(). Thanks to mzawirski. |
| o VFS-413: [FTP] No support for FTP servers with non Latin-1 control encoding. Thanks to polivenok. |
| o VFS-200: [SFTP] Failure when files are very large. |
| o VFS-296: [FTP] FTP socket timeout setting doesn't work if connect hangs. Thanks to andreasp. |
| o VFS-410: [SFTP] SftpFileObject getInputStream(long) reads the whole file into memory. Thanks to mstockhammer. |
| o VFS-407: [RAM] Reading a RAM FileSystem file fails because it never returns EOF -1. Thanks to mp1. |
| o VFS-382: SFTP getChildren() does not fail when called on a file. |
| o VFS-380: FTP connect.error message used instead of SFTP connect.error message. |
| o VFS-378: Tar error message are missing from resource file. |
| o VFS-374: 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. |
| o VFS-355: The read method of RamFileRandomAccessContent's input stream does not return -1 at eof. Thanks to Miroslav Pokorny. |
| o VFS-356: Throw an IOException if an attempt is made to seek to a position before the start of the file. |
| o VFS-359: Don't delete a RamFileObject if it is open. Thanks to Miroslav Pokorny. |
| o VFS-352: ZipFileSystem now uses an internal Map as a cache for all the files in the zip archive. |
| o VFS-351: Chain the SftpException in the FileSystemException. Thanks to John Backstrand. |
| o VFS-325: Allow # character in file names. Thanks to Larry Reeve. |
| o VFS-335: Use atomic variables in MonitorInputStream. |
| o VFS-364: Check the href in the response for just a path in addition to a full uri. |
| |
| Changes: |
| o VFS-607: Update Apache Commons Compress from 1.10 to 1.11. |
| o VFS-608: Update Apache Commons Net from 3.4 to 3.5. |
| o VFS-530: [hdfs] Use stable Apache Hadoop 2.6 dependencies. Thanks to Dave Marion. |
| o VFS-601: Update Apache Commons Net from 3.3 to 3.4. |
| o VFS-602: Update Apache Commons IO from 2.4 to 2.5. |
| o VFS-579: Update Jsch from 0.1.51 to 0.1.53. |
| o VFS-542: Update Jsch from 0.1.50 to 0.1.51. |
| o VFS-578: Update Apache Commons Compress from 1.9 to 1.10. |
| o VFS-541: Update Apache Commons Compress from 1.6 to 1.9. |
| o VFS-540: Update Apache Commons Logging from 1.1.3 to 1.2. |
| o VFS-539: Update Apache Commons Lang from 3.1 to 3.3.2. |
| o VFS-526: [HDFS][Tests] Support HDFS testing on Windows (but keep profile "no-hdfs" enabled on Windows VFS-529). |
| o VFS-453: [HTTP][WEBDAV] Add file system options for connect and socket timeout. Thanks to Jiri Syrovy. |
| o VFS-167: [FTP] Allow Proxy support to file system options. Thanks to Jimmy Praet. |
| o VFS-520: Make Javadoc compatible with Java 8 tool. |
| o VFS-518: Documentation of FileSystemOptions should be more helpful. Thanks to Roland Illig. |
| o VFS-500: VFSClassLoader.findResources missing. Thanks to Bernd Eckenfels. |
| o VFS-514: [tests] PermissionsTests leaves unclean test directory. Thanks to Bernd Eckenfels. |
| o VFS-501: Hide passwords from log/console output. Thanks to Yves Schumann. |
| o VFS-496: Resource translation issues. Thanks to Bernd Eckenfels. |
| o VFS-494: [SFTP] No support for SFTP servers with non Latin-1 file name encoding. Thanks to Allen Xudong Cheng. |
| o VFS-368: [SFTP] Documentation implies that "userDirIsRoot" defaults to true. Thanks to Brendan Long. |
| o VFS-265: [FTP] Set user dir as root dir by default. Thanks to Scott Bjerstedt. |
| o VFS-484: [SFTP] Update Jsch to 0.1.50 from 0.1.49. |
| o VFS-507: Update to Apache Commons Collection 4.1 from 3.2.1 and use generics. |
| o VFS-476: Update Apache Commons Logging to 1.1.3 from 1.1.2. |
| o VFS-475: Update Apache Commons Net to 3.3 from 3.2. |
| o VFS-506: [Tar][Bzip2] Update Apache Commons Compress to 1.6 from 1.5. |
| o VFS-471: Update to Apache Commons Compress 1.5. |
| o VFS-283: [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. |
| o VFS-463: FileSytemConfigBuilder supports system properties for the value of enum-based configuration entries. |
| o VFS-462: [FTPS] Deprecate FtpsFileSystemConfigBuilder.setFtpsType and FtpsFileSystemConfigBuilder.getFtpsType |
| in favor of FtpsFileSystemConfigBuilder.setFtpsMode and FtpsFileSystemConfigBuilder.getFtpsMode which |
| use new enum FtpsMode instead. |
| o VFS-459: [FTP/FTPS] Sent commands and the received answer is logged at debug level. |
| o VFS-457: 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 |
| o VFS-456: Use org.bouncycastel:bcprov-jdk16 instead of org.bouncycastle:bcprof-jdk15on since Java 1.6 is required. |
| o VFS-415: Update VFS requirement to Java 1.6. |
| o VFS-418: Update to Apache Commons Compress 1.4.1. |
| o VFS-321: AbstractFileObject sometimes uses getFileSystem() and sometimes references "fs" field directly. Thanks to sebb. |
| o VFS-327: UriParser.canonicalizePath possible NPE for filenameParser. Thanks to sebb. |
| o VFS-416: [SFTP] Update Jsch to version 0.1.49 from 0.1.47. |
| o VFS-395: [POM] Remove maven-scm-* dependencies. |
| o VFS-411: [SFTP] Update Jsch to version 0.1.47 from 0.1.46. |
| o VFS-409: Update Apache Commons Compress to 1.4 from 1.3. |
| o VFS-404: [FTP][FTPS] Update Apache Commons Net to 3.1 from 3.0.1. |
| o VFS-402: [WebDAV] Update Apache Jackrabbit 1.5.2 to 1.6.5. |
| o VFS-401: Update JSch to 0.1.46 from 0.1.45 for the SFTP provider. |
| o VFS-392: Build tests WebDAV file system with an embedded WebDAV server (Apache Jackrabbit). |
| o VFS-391: Build tests URL HTTP file system with an embedded HTTP server (Apache HttpComponent Core). |
| o VFS-390: Use variable argument list in org.apache.commons.vfs2.util.Messages instead of Object[]. |
| o VFS-389: Use variable argument lists in FileSystemException instead of Object[]s. |
| o VFS-388: Build tests SFTP file system with an embedded SFTP server (Apache MINA). |
| o VFS-387: Build tests FTP file system with an embedded FTP server (Apache MINA). |
| o VFS-386: Build tests HTTP file system with an embedded HTTP server (Apache HttpComponent Core). |
| o VFS-385: Add HTTP status code to HTTP file provider exception messages when available. |
| o VFS-384: Update Apache Commons Net to 3.0.1 from 2.2 for FTP and SFTP providers. |
| o VFS-383: Update JSch to 0.1.45 from 0.1.42 for the SFTP provider. |
| o VFS-379: Replace custom BZIP2 code with Apache Commons Compress 1.3. |
| o VFS-377: Replace custom TAR code with Apache Commons Compress 1.3. |
| o VFS-375: Upgrade to Apache Commons Compress 1.3 from 1.2. |
| o VFS-366: Can't sort a List of FileObject's, FileObject to implement Comparable<FileObject>. |
| o VFS-341: Enable logging of JSch using the Commons Logging Log object in SftpClientFactory. Thanks to Rajika Kumarasiri. |
| o VFS-361: Upgrade commons collections version to 3.2.1. |
| |
| Removed: |
| o VFS-469: Remove unused dependency to javax.jcr:jcr. |
| |
| Historical list of changes: http://commons.apache.org/proper/commons-vfs/changes-report.html |
| |
| For complete information on Apache Commons VFS, including instructions on how to submit bug reports, |
| patches, or suggestions for improvement, see the Apache Apache Commons VFS website: |
| |
| Visit http://commons.apache.org/proper/commons-vfs/ |
| |
| Download it from http://commons.apache.org/proper/commons-vfs/download_vfs.cgi |
| |
| ----------------------------------------------------------------------------- |