Apache Commons logo Commons VFS

Changes

Release History

Version Date Description
2.1 TBD New features and bug fix release.
2.0 2011-08-24 Backwards incompatible update of Commons VFS to Java 5

Release 2.1 - TBD

Type Changes By
update VFSClassLoader.findResources missing. Fixes VFS-500. Thanks to Bernd Eckenfels. ggregory
update [tests] PermissionsTests leaves unclean test directory. Fixes VFS-514. Thanks to Bernd Eckenfels. ggregory
update Hide passwords from log/console output. Fixes VFS-501. Thanks to Yves Schumann. ggregory
update Resource translation issues. Fixes VFS-496. Thanks to Bernd Eckenfels. ggregory
update [SFTP] No support for SFTP servers with non Latin-1 file name encoding. Fixes VFS-494. Thanks to Allen Xudong Cheng. ggregory
update [SFTP] Documentation implies that "userDirIsRoot" defaults to true. Fixes VFS-368. Thanks to Brendan Long. ggregory
update [FTP] Set user dir as root dir by default. Fixes VFS-265. Thanks to Scott Bjerstedt. ggregory
fix [tests] ProviderWriteTests#testListener does not fail cleanly. Fixes VFS-489. Thanks to Bernd Eckenfels. ggregory
fix DefaultFileMonitor sleeps for twice the specified delay when checkPerRun > 0. Fixes VFS-486. Thanks to Sam Haldane. ggregory
update [SFTP] Update Jsch to 0.1.50 from 0.1.49. Fixes VFS-484. ggregory
fix Wrong assertion messages in RAM provider test case. Fixes VFS-482. ggregory
update Update to Apache Commons Collection 4.0 from 3.2.1 and use generics. Fixes VFS-507. ggregory
update Update Apache Commons Logging to 1.1.3 from 1.1.2. Fixes VFS-476. ggregory
update Update Apache Commons Net to 3.3 from 3.2. Fixes VFS-475. ggregory
update [Tar][Bzip2] Update Apache Commons Compress to 1.6 from 1.5. Fixes VFS-506. ggregory
update Update to Apache Commons Compress 1.5. Fixes VFS-471. ggregory
remove Remove unused dependency to javax.jcr:jcr. Fixes VFS-469. joehni
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. Fixes VFS-283. joehni
fix Dependency to commons-compress set as optional. Fixes VFS-460. joehni
add [FTPS] Add option for KeyManager (and TrustManager) to support FTPS servers that ask for the client certificate for authentication. Fixes VFS-468. joehni
fix StaticUserAuthenticator should return only requested authentication data. Fixes VFS-464. joehni
update FileSytemConfigBuilder supports system properties for the value of enum-based configuration entries. Fixes VFS-463. joehni
update [FTPS] Deprecate FtpsFileSystemConfigBuilder.setFtpsType and FtpsFileSystemConfigBuilder.getFtpsType in favor of FtpsFileSystemConfigBuilder.setFtpsMode and FtpsFileSystemConfigBuilder.getFtpsMode which use new enum FtpsMode instead. Fixes VFS-462. joehni
fix [FTP/FTPS] ConfigBuilder does not consider system properties for the value of SoTimeout and Encoding. Fixes VFS-461. joehni
add [FTPS] Add support for command to set the DataChannelProtectionLevel. Fixes VFS-412. Thanks to Jose Juan Montiel. joehni
update [FTP/FTPS] Sent commands and the received answer is logged at debug level. Fixes VFS-459. joehni
fix [FTPS] Provider missed functionality and bug fixes already available for the FTP provider. Fixes VFS-458. joehni
fix [HTTP] HttpFileObject read/write attributes should reflect underlying FileSystem capabilities. Fixes VFS-452. Thanks to Jean-Marc Borer. ggregory
fix AbstractFileObject.getChildren() may corrupt its internal state if a filename can not be resolved. Fixes VFS-285. Thanks to Kirill Safonov. tn
fix [HDFS] HDFSFileSystem.resolveFile() does not honor CacheStrategy.ON_RESOLVE. Fixes VFS-450. Thanks to dlmarion. ggregory
add [HDFS] Add an HDFS FileSystem Provider. Fixes VFS-442. Thanks to dlmarion. ggregory
fix commons-vfs 2.0 JAR has flawed OSGi MANIFEST.MF. Fixes VFS-448. ggregory
add [FTP/FTPS] Update Apache Commons Net to 3.2 from 3.1. Fixes VFS-447. Thanks to ggregory. ggregory
add Add FileSystemManager.resolveFile(URI) and resolveFile(URL). Fixes VFS-445. Thanks to ggregory. ggregory
add [SFTP] Stream (e.g. netcat) proxy for Sftp file system (aka ProxyCommand). Fixes VFS-440. Thanks to bpiwowar. ggregory
fix StaticUserAuthenticator usage example wrong. Fixes VFS-439. Thanks to pensecit. ggregory
fix [FTP] StackOverFlowError getting the type of a directory with a symbolic link to a parent directory with the same name. Fixes VFS-437. Thanks to denniszhu, danttran, jpowang. ggregory
fix FileSystemConfigBuilder does not use prefix for some system property lookups. Fixes VFS-435. Thanks to george scott. ggregory
fix FileSystemException should reuse IOException's chained exception. Fixes VFS-434. Thanks to ggregory. ggregory
fix [WebDAV] Message "vfs.provider.webdav/propfind.error" is not defined. Fixes VFS-433. Thanks to ggregory. ggregory
fix The SoftRefFilesCache class logs clear text password. Fixes VFS-430. Thanks to antonin.stefanutti. ggregory
add [HTTP][WebDAV] Allow HTTP follow redirect. Fixes VFS-432. Thanks to ggregory. ggregory
add FileSystemOption does not implement toString(). Fixes VFS-431. Thanks to ggregory. ggregory
fix Remove extra FileSystem ivar in AbstractFileObject subclasses with generics. Fixes VFS-429. Thanks to ggregory. ggregory
fix [HTTP] NPE on HttpFileObject.getContent().getContentInfo(). Fixes VFS-427. Thanks to awelynant. ggregory
add Get/set the file permissions. Fixes VFS-405. Thanks to dwaszak. ggregory
update Update test dependencies: sshd-core to version 0.8.0 from version 0.7.0; mina-core from version 2.0.4 to version 2.0.7. Fixes VFS-457. joehni
update Use org.bouncycastel:bcprov-jdk16 instead of org.bouncycastle:bcprof-jdk15on since Java 1.6 is required. Fixes VFS-456. joehni
update Update VFS requirement to Java 1.6. Fixes VFS-415. Thanks to ggregory. ggregory
add HTTP URL query string not part of cache key. Fixes VFS-426. Thanks to daniel.bergholm. ggregory
add Add API FileObject.isExecutable(). Fixes VFS-425. Thanks to ggregory. ggregory
add [SFTP] Configure a custom Identity Repository. Fixes VFS-421. Thanks to bpiwowar. ggregory
update Update to Apache Commons Compress 1.4.1. Fixes VFS-418. ggregory
add [RAM][Local] Add and implement new API: RandomAccessContent.setLength(long). Fixes VFS-417. ggregory
fix [RAM] resize throws ArrayOOBE when shrinking in size. Fixes VFS-406. Thanks to mp1. ggregory
update AbstractFileObject sometimes uses getFileSystem() and sometimes references "fs" field directly. Fixes VFS-321. Thanks to sebb@apache.org. ggregory
update UriParser.canonicalizePath possible NPE for filenameParser. Fixes VFS-327. Thanks to sebb@apache.org. ggregory
fix [FTP] Client should call logout before disconnecting. Fixes VFS-353. Thanks to bergander. ggregory
fix CompressedFileFileObject Exception thrown when container file has no extension. Fixes VFS-408. Thanks to anilm2@yahoo.com. ggregory
add Add a FileSelector based on regular expressions. Fixes VFS-400. ggregory
fix [SFTP][RAM] Unsafe casting to AbstractFileObject subclasses in doRename(). Fixes VFS-258. Thanks to mzawirski. ggregory
add Let FileObject and FileContent extend java.io.Closeable. Fixes VFS-254. Thanks to mzawirski. ggregory
fix [FTP] No support for FTP servers with non Latin-1 control encoding. Fixes VFS-413. Thanks to polivenok. ggregory
add [SMB] SmbFileObject does not support setLastModifiedTime while jcifs supports it. Fixes VFS-252. ggregory
fix [SFTP] Failure when files are very large. Fixes VFS-200. ggregory
update [SFTP] Update Jsch to version 0.1.49 from 0.1.47. Fixes VFS-416. joehni
fix [FTP] FTP socket timeout setting doesn't work if connect hangs. Fixes VFS-296. Thanks to andreasp. ggregory
add [FTP] Configuration does not include option for setting socket timeout. Fixes VFS-313. Thanks to bdavis@saintandreas.org. ggregory
add [FTP] Add config API to set the file type. Fixes VFS-414. Thanks to ggregory. ggregory
add [FTP] Usage of FTP with heterogeneous FTP server (possibility of using Ascii file type). Fixes VFS-182. Thanks to ggregory. ggregory
update [POM] Remove maven-scm-* dependencies. Fixes VFS-395. Thanks to ggregory. ggregory
update [SFTP] Update Jsch to version 0.1.47 from 0.1.46. Fixes VFS-411. Thanks to ggregory. ggregory
fix [SFTP] SftpFileObject getInputStream(long) reads the whole file into memory. Fixes VFS-410. Thanks to mstockhammer. ggregory
update Update Apache Commons Compress to 1.4 from 1.3. Fixes VFS-409. Thanks to ggregory. ggregory
fix [RAM] Reading a RAM FileSystem file fails because it never returns EOF -1. Fixes VFS-407. Thanks to mp1. ggregory
update [FTP][FTPS] Update Apache Commons Net to 3.1 from 3.0.1. Fixes VFS-404. ggregory
update [WebDAV] Update Apache Jackrabbit 1.5.2 to 1.6.5. Fixes VFS-402. ggregory
update Update JSch to 0.1.46 from 0.1.45 for the SFTP provider. Fixes VFS-401. ggregory
update Build tests WebDAV file system with an embedded WebDAV server (Apache Jackrabbit). Fixes VFS-392. ggregory
update Build tests URL HTTP file system with an embedded HTTP server (Apache HttpComponent Core). Fixes VFS-391. ggregory
update Use variable argument list in org.apache.commons.vfs2.util.Messages instead of Object[]. Fixes VFS-390. ggregory
update Use variable argument lists in FileSystemException instead of Object[]s. Fixes VFS-389. ggregory
update Build tests SFTP file system with an embedded SFTP server (Apache MINA). Fixes VFS-388. ggregory
update Build tests FTP file system with an embedded FTP server (Apache MINA). Fixes VFS-387. ggregory
update Build tests HTTP file system with an embedded HTTP server (Apache HttpComponent Core). Fixes VFS-386. ggregory
update Add HTTP status code to HTTP file provider exception messages when available. Fixes VFS-385. ggregory
update Update Apache Commons Net to 3.0.1 from 2.2 for FTP and SFTP providers. Fixes VFS-384. ggregory
update Update JSch to 0.1.45 from 0.1.42 for the SFTP provider. Fixes VFS-383. ggregory
fix SFTP getChildren() does not fail when called on a file. Fixes VFS-382. ggregory
add Iterate over a FileObject using the Java "foreach" statement, to provide all descendents of a FileObject. Fixes VFS-381. ggregory
fix FTP connect.error message used instead of SFTP connect.error message. Fixes VFS-380. ggregory
update Replace custom BZIP2 code with Apache Commons Compress 1.3. Fixes VFS-379. ggregory
fix Tar error message are missing from resource file. Fixes VFS-378. ggregory
update Replace custom TAR code with Apache Commons Compress 1.3. Fixes VFS-377. ggregory
update Upgrade to Apache Commons Compress 1.3 from 1.2. Fixes VFS-375. ggregory
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. Fixes VFS-374. ggregory
add Add FileContent write APIs. Fixes VFS-373. ggregory
add Add constructors FileDepthSelector() and FileDepthSelector(int). Fixes VFS-372. ggregory
add Add FileObject API deleteAll(). Fixes VFS-371. ggregory
add Add a FileExtensionSelector class. Fixes VFS-370. ggregory
add Add APIs FileObject isFile(), FileObject isFolder(), and FileName isFile(). Fixes VFS-367. ggregory
update Can't sort a List of FileObject's, FileObject to implement Comparable<FileObject>. Fixes VFS-366. ggregory
update Enable logging of JSch using the Commons Logging Log object in SftpClientFactory. Fixes VFS-341. Thanks to Rajika Kumarasiri. rgoers
fix The read method of RamFileRandomAccessContent's input stream does not return -1 at eof. Fixes VFS-355. Thanks to Miroslav Pokorny. rgoers
fix Throw an IOException if an attempt is made to seek to a position before the start of the file. Fixes VFS-356. rgoers
fix Don't delete a RamFileObject if it is open. Fixes VFS-359. Thanks to Miroslav Pokorny. rgoers
fix ZipFileSystem now uses an internal Map as a cache for all the files in the zip archive. Fixes VFS-352. rgoers
fix Chain the SftpException in the FileSystemException. Fixes VFS-351. Thanks to John Backstrand. rgoers
update Upgrade commons collections version to 3.2.1. Fixes VFS-361. rgoers
fix Allow # character in file names. Fixes VFS-325. Thanks to Larry Reeve. rgoers
fix Use atomic variables in MonitorInputStream. Fixes VFS-335. rgoers
fix Check the href in the response for just a path in addition to a full uri. Fixes VFS-364. rgoers

Release 2.0 - 2011-08-24

Type Changes By
fix Update the version of commons-net. Fixes VFS-348. Thanks to Stefan Bodewig. rgoers
fix Documented FileSystem capabilities on the web site. Fixes VFS-230. rgoers
fix AbstractFileObject and classes that extend from it use AbstractFileName in the constructor and in the createFile method. Fixes VFS-337. rgoers
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. Fixes VFS-245. rgoers
fix DefaultFileSystemConfigBuilder.getConfigClass() returns DefaultFileSystemConfigBuilder.class which is not a FileSystem Fixes VFS-334. Thanks to sebb. sebb
fix Add encoding option to FTP provider. Fixes VFS-305. Thanks to Tom. rgoers
fix Fix potential NullPointerException if the DavProperty is null or contains null values. Fixes VFS-315. Thanks to David Hausladen. rgoers
fix Add option for preemptive authentication for HTTP based protocols. Fixes VFS-316. Thanks to David Hausladen. rgoers
fix Allow tar files that contain files over 2GB in size. Fixes VFS-322. Thanks to Curtis Boyden. rgoers
fix Clear the cache in RamFileSystem and the children in RamFileData. Fixes VFS-324. Thanks to sebb. rgoers
fix Typo in FtpsFileSystemConfigBuilder.setFtpsType Fixes VFS-319. Thanks to sebb. sebb
fix InputStream and RandomAccessContent memory leak in FileContentThreadData Fixes VFS-227. Thanks to Sergey Vladimirov. rgoers
update WebdavFileObject does not implement doSetAttribute() Fixes VFS-263. Thanks to Ingo Maas. rgoers
fix Http and Webdav FIleContentInfoFactory: undress to AbstractFileObject before casting Fixes VFS-259. Thanks to Marek Zawirski. rgoers
fix WebDAV upload corrupts binary files Fixes VFS-261. Thanks to Simon Olofsson. rgoers
fix add ProviderTestConfig.getDefaultFileSystemManager() method Fixes VFS-276. Thanks to Vince Bonfanti. rgoers
fix SftpFileProvider and SftpFileSystemConfigBuilder can't change ssh authentication methods Fixes VFS-282. Thanks to Alexey. rgoers
fix HttpFileObject: unsupported content over 2GB length Fixes VFS-269. Thanks to Marek Zawirski. rgoers
fix LocalFileName objects are not released from AbstractFileSystem.listenerMap when all listeners are removed. Fixes VFS-287. Thanks to Mircea-Eugen Ionica. rgoers
fix 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. Fixes VFS-216. Thanks to Reetu Mutti. rgoers
fix FTP connection is not released If exception is thrown out of FtpFileObject.doGetOutputStream(). Fixes VFS-289. Thanks to Kirill Safonov. rgoers
fix 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. Fixes VFS-286. Thanks to Kirill Safonov. rgoers
add Add FTPS provider. Fixes VFS-264. Thanks to Scott Bjerstedt. jcarman
add Rename HttpRandomAccesContent to HttpRandomAccessContent. Fixes VFS-244. rgoers