With the release of Pentaho 6.0 on the horizon, I wanted to let you know that there are some important changes coming, and some may break your plugins, "glue code", etc. This often happens at major release boundaries, so hopefully this won't come as a huge surprise.
Pentaho has upgraded their use of VFS libraries from version 1.x (a custom version forked from the Apache project) to basically Apache VFS 2.1-SNAPSHOT. We are working with the project maintainers to release a proper 2.1 so we don't have snapshot artifacts in our release. In fact we have locked down a particular commit in the 2.1 branch and have built our own release version for Apache VFS 2.1.
The relevant commits are here:
How does this impact you? If you use org.apache.commons.vfs.* or KettleVFS and consume the org.apache.commons.vfs.FileObject or other VFS1 classes, then your code will no longer compile against 6.0 artifacts. If you use VFS 1 by itself and include it as a plugin dependency, this may work ok, unless you try to "trade objects" between your plugin and other Kettle classes.
To upgrade, you should be able to simply change the package name from org.apache.commons.vfs.* to org.apache.commons.vfs2.*. If your code still won't compile, please consult the above pull requests to see where other changes were needed.
In general, a good rule of thumb at major release boundaries is to:
a) before the Pentaho release, compile your code against the latest libraries (6.0-SNAPSHOT at this point is good enough, but I think the "real" ones are 18.104.22.168-353)
b) after the release, test your plugins (original and/or recompiled) by dropping them into the data-integration/plugins folder, make sure they still operate successfully.
c) If you need to re-release for 6.0, please update your entries in the Marketplace.
When 6.0 is released, there will be "What's New?" documentation available, and as usual you can direct questions for the community here in this Google Group.
Lead Software Engineer
Pentaho Corporation, a Hitachi Data Systems company