NFS4J v0.22.0 Release Notes

Release Date: 2020-10-22 // about 1 year ago
  • ๐Ÿ†• New major version with highlights:

    • ๐Ÿ‘‰ use of oncrpc4j-3.1.0, which drops dependency on license incompatible dcache-auth
    • nfs-over-tls
    • ๐Ÿ”ง configurable IO buffer size for flexfile layout
    • ๐Ÿ‘Œ support for 'secure/insecure' export option

    ๐Ÿ’ฅ Breaking change:

    ๐Ÿ“ฆ the dependency on package org.dcache.auth is removed. The Pricipals and methods provided by
    the module should be migrated to use org.dcache.nfs.util.UnixSubjects.

    ๐Ÿ”„ Changelog for nfs4j-0.21.0..HEAD
    ๐Ÿš€ * [8ce08c5] [maven-release-plugin] prepare for next development iteration
    * [8f886a8] pom: require java11
    * [fd1561c] README: describe dependency on java11
    ๐Ÿšš * [40ef150] core: remove deprecated method CompoundContextBuilder#withExportFile
    ๐Ÿšš * [0659601] docs: describe remove methods in 0.22
    * [680e2fc] dlm: fix object to key calculation mismatch
    * [483a418] dlm: use java's own Base64 encoder instead of Guava.
    * [d80f41a] vfs: use List#copyOf instead of Guava's ImmutableList
    โœ… * [7525e8e] vfs-test: hard link should return the same inode
    โœ… * [5f2e0cd] vfs: improve VfsCache test coverage
    โœ… * [0c9de0a] vfs: fix javadoc of VfsCache#invalidateStatCache
    * [1bdae07] lockmanager: use JDK's Base64 to generate String form key from bytes
    * [93881f1] nfs4: improve spec compliance of LOCKT operation
    * [417048f] nfs4: fix client id validation of LOCKT operation
    ๐Ÿ”€ * [5f38d46] nfs4: minor version used by callback must by in sync with client
    * [c131ddd] nfsv41: fix race condition during multiple callbacks
    * [20a9159] nfs4: add javadoc to NFSv41Session constructor
    * [63bfae2] nfs4-client: bump readdir request size
    * [cd7aa48] nfs4: process file handle in attribute map
    * [e977e57] nfs4: pull-out client session slot handling into a dedicated class
    * [e3be4fb] nfs-client: add sendCompoundInSession
    * [c6ffcd9] nfs-client: make client is pseudo-unique
    ๐Ÿ‘ * [311f34f] exports: add support for secure/insecure export options
    * [cf8ea4a] nfs-client: add a simple retry loop for transient errors
    * [aeccd6f] nfs41: simplify try-catch-return logic
    * [a456ce2] exports: fix FsExport#toString output
    ๐Ÿ— * [ead915d] build(deps): bump junit from 4.12 to 4.13.1
    ๐Ÿ”ง * [89b09ab] flexfiles: make rsize/wsize configurable
    * [c9aedca] nfs4: use java8 stream to filter first Principal on exchange_id
    * [e84212e] nfs: remote utility class to extract current user
    ๐Ÿšš * [b1320d9] nfs4: remove NfsLoginService interface
    โšก๏ธ * [ed9a578] pol: update to oncrpc4j-3.1.0


Previous changes from v0.21.0

  • โšก๏ธ Major version update with highlights:

    • minimal nfsv4.2 implementation
    • ๐Ÿ”ง BerkeleyDBClientStore can be configure through properties
    • ๐Ÿ‘Œ improved performance of ACCESS call
    • ๐Ÿ‘Œ improved throughput of parallel file opens

    ๐Ÿ”„ Changelog for nfs4j-0.20.0...nfs4j-0.21.0
    ๐Ÿš€ * [36d3e3e] [maven-release-plugin] prepare for next development iteration
    ๐Ÿš€ * [1679476] [maven-release-plugin] prepare release nfs4j-0.20.0
    โœ… * [b2fd4a1] test: use StandardCharsets#US_ASCII instead of instantiating one
    * [0b38172] vfs: add xattr access modes to the mask
    * [67f6c89] nfs4: fix en/decode of SETXATTR4res
    ๐Ÿšš * [2e58ea5] nfs4: fix en/decode of REMOVEXATTR4res
    * [95db0e5] libs: use jline3
    * [a8c0ec1] vfs: add missing xattr related methods to ForwardingFileSystem
    * [ad9c203] nfsv4-client: convert if-else chain into switch statement
    * [6017e81] nfsv4-client: single point to exit command loop
    * [b044362] nfs4: don't expose NFSv4.2 attributes to earlier versions of the clients
    * [05f5179] nfs42: add auto-generated code of NFSv4.2 data types
    * [5a36149] nfs42: implement minimal nfs v4.2 server
    * [5adb2b6] nfs4: add constructor that accepts db properties to BerkeleyDBClientStore
    * [3b8d58d] nfs: make spring dependency scope provided
    * [59550a9] nfs4: simplify stateid4 class
    * [ae9e3d4] Expose case sensitivity settings
    * [15d38f2] Reduce number of callbacks when checking access flags. (#89)
    ๐Ÿ‘€ * [90b82cb] Extract interface for client cache to allow custom implementations. See #37 for reasons of possible other lax implementations with non expiring client leases.
    * [872be90] libs: bump guava from 20.0 to 24.1.1-jre
    * [397b95b] file-tracker: fix typo in comments
    โœ… * [d3b3cd7] nfs4: stop using deprecated guava API in tests
    * [c798bc1] nfs4: use ConcurrentHashMap for open file tracking
    * [cdc1071] nfs4: don't use InetAddresses.forString with catch block to validate IP address
    ๐Ÿ“„ * [e1146bd] docs: fix typo in README
    * [1de61da] vfs: add IO read/write methods that accept ByteBuffer
    ๐Ÿ“„ * [c37d8df] docs: describe recent API changes
    ๐Ÿ“„ * [53e8c14] docs: describe API changes
    ๐Ÿšš * [34156a6] src: move nfs4 client code into basic-client module
    * [fe51855] nfsv4: make NO_TAG strng constant static
    ๐Ÿš€ * [f7c14eb] [maven-release-plugin] prepare branch 0.21
    ๐Ÿš€ * [d72de14] [maven-release-plugin] prepare release nfs4j-0.21.0