Finally got around to make the third 1.0 pre-release of Groovy VFS
available.
Beta 3, in addition to Beta 1,2 includes:
- Ant-style patterns. When copying files it is possible to do something like
vfs {
cp 'sftp://user:pass@server/folder', 'ftp://other.server/pub',
recursive: true, overwrite: true,
filter : antPattern {
include 'file.txt'
include '**/*.jpg'
exclude '**/foo*.jpg'
}
}
- This means that the newly-added VfsCopy task for the associated Gradle
plugin will be able to do the same and thereby mimic existing Copy task
behaviour
- Website (Yes, it has one now, all built with Asciidoctor):
http://ysb33r.github.io/groovy-vfs
- Codebase: https://github.com/ysb33r/groovy-vfs/tree/RELEASE_1_0_BETA3
Beta 3, already included:
- Use of 'uri' keyword to disambiguate URIs on certain circumstances
- resolveURI is now public method, making it available to the DSL and
for people who need an easy way of getting hold of the underlying Apache
VFS FileObject instance.
- Ability to send arbitrary text to a remote file (from feedback at
Gro0vy-Grails Exchange 2014).
vfs {
overwrite 'sftp://user:pass@server/file' with 'this text'
append 'sftp://user:pass@server/file' with 'this text'
overwrite 'sftp://user:pass@server/file' with 'this text', {
// Closure takes an OutputStream
it << 'text'
}
}
- cmdline vfs: mkdir now supports GNU options -p, --parents
- cmdline vfs: mv now supports non-GNU option --parents
- Codebase: https://github.com/ysb33r/groovy-vfs/tree/RELEASE_1_0_BETA_2
- Those who would like to try out the command-line version, get it at
https://bintray.com/ysb33r/nanook/vfs/1.0-beta2/view/files.
Beta 1 already included:
- Ability to load additional providers via an 'extend' keyword in the DSL
extend { provider className:
'org.ysb33r.groovy.vfsplugin.cloud.s3.S3FileProvider', schemes:
['s3'] }
- SMB provider based upon jCIFS. (Thanks to Maarten Boekhold for trying
out the initial codebase some time ago)
- S3 provider based on jClouds. This will give the ability to provide
VFS support to other cloud offerings too.
- Command-line utility mimicking GNU 'cp'. 'mv', 'mkdir', 'ls' and 'cat'
commands.
- Gradle plugin built against v2.0 utilising Groovy 2.3.x and as such
now using @CompileStatic etc.
- Ability to turn off intermediates creation when creating a directory
I expect for some bugs to appear especially in SMB & S3 support, so
please feel free to log them at
https://github.com/ysb33r/groovy-vfs/issues
--
Schalk W. Cronjé
Twitter / Ello / Toeter : @ysb33r