Releases: TritonDataCenter/java-manta
Releases · TritonDataCenter/java-manta
java-manta-3.5.0
Added
- Java 11 compatibility improvements.
- MANTA-5153 Updates for MantaCLI commands.
- Supporting documentation for MantaCLI.
Changed
- MANTA-5040 Refactored default config for manta.content_type_detection.
- Dependency upgrade for java-client.
- HTTP Signatures dependency: 4.0.10 → 4.1.2
- BouncyCastle: 1.61 → 1.65
- Apache HttpClient: 4.5.7 → 4.5.12
- Jackson 2.9.9 → 2.10.3
- Jnagmp 2.1.0 → 3.0.0
- FasterXml-UUID 3.1.5 → 4.0.1
- Checkstyle 8.18 → 8.31
- Slfj 1.7.25 → 1.7.29
- Wiremock 2.21.0 → 2.24.1
- Commons-Collections 4.3 → 4.4
- Commons-Lang 3.8.1 → 3.10
- Commons-Codec 1.12 → 1.14
- Commons-Text 1.6 → 1.8
- Objenesis 2.6 → 3.0.1
- Cloning 1.9.6 → 1.9.12
- Picocli 3.9.5 → 4.2.0
- Dropwizard-Metrics 4.0.5 → 4.1.2
- Upgraded supporting maven plugins.
- maven-site-plugin for the build phase in SDK.
Fixed
java-manta-3.4.3
Added
- Skipping job dependent tests for MantaV2.
- existsAndIsAccessible rethrows detailed and severe exceptions.
Changed
Fixed
- MANTA-5143 Data integrity issue caused due to range- downloads decryption improvement introduced in 3.4.2.
- MANTA-5191 BadRequest Error caused by a valid Range Request.
- existsAndIsAccessible returns false for ANY thrown exception.
java-manta-3.4.2
Added
- Instructions on improving encryption performance with Java 11
for SunPKCS11 with NSS support. - java-manta-test-harness, a community-maintained Java testing maven application initially developed to verify Java 11 support for java-manta. It will be used henceforth to
validate Manta's behavior on server-side comprehensively from a SDK standpoint.
Changed
- Dependent test modifications to validate Mantav2 Server Response.
- Deleted irrelevant/deprecated classes in the SDK codebase.
- Verify java-manta-client supports use of Java 11 projects.
Fixed
java-manta-3.4.1
[3.4.1] - 2019-10-29
Added
- Updated where
ChainedConfigContext
would "forget" thatmantaKeyPath
was set by aDefaultConfigContext
. - Introduced new test group Definitions error, seekable, etc and subsequently eliminated redundant test runs. Added test-configuration parameter
it.dryRun
for integration-test run simulations within the SDK test-suite. - Updated
AuthAwareConfigContext
with missing configuration parameters and exposed client configuration parameters likeMANTA_DOWNLOAD_CONTINUATIONS_KEY
andMANTA_CONTENT_TYPE_DETECTION_ENABLED_KEY
usingMetricReporterSupplier
. - Added
MANTA_TLS_INSECURE
to allow disabling TLS certificate verification in certain test environments. Not intended to be used in production. - Updated
MantaErrorCode
Enum Values, mapping more errors from Manta components including muskie, mahi, moray, electric-moray, piranha and marlin. Deprecated errors with invalid rest codes and removed undefined Manta Errors in the SDK. - Developer's Guide added for professionals within Joyent, Inc and the community interested in making open-source contributions.
- Integration-Test
MantaClientSnapLinksIT
to verify behaviour of the SDK for user accounts that havesnaplinks
disabled. - More documentation in
MetricReporterSupplier
to provide information regarding how the SDK exposes client metrics to manta-monitor.
Changed
- Copyright Header updates for files that have been modified recently within the Client Java SDK.
Fixed
- Specifying key content will conflict with the default key path
- Directory-maven-plugin and maven-assembly-plugin not marked as thread-safe
- MantaClientDirectoriesIT.pruneParentDirectoriesFull fails at certain use-cases
- Configuration Params Missing in AuthAwareConfigContext
- MantaClientSigningIT presumes HTTP header case
- Testng encryptionCipher seems innocuous
- Standardize .equals() and .hashCode() behaviour
- References to org.apache.http.* in integration tests are causing test failures
- TLS Cert import documentation is missing steps
- MantaVersion.DATE has become hard coded
- Review correctness of integer division in floating point context
- Integration tests structured better to support accounts having SnapLinks disabled
- NoApiServersAvailable is not present in MantaErrorCode enums
- Formatting Mbean attribute 999thPercentile for the metric object requests
java-manta-3.4.0
[3.4.0] - 2019-03-19
Added
- Configuration parameter
manta.content_type_detection
is now added to allow for the user to explicitly disable
automatic content type detection dependent on the data type being uploaded to Manta using the SDK.
It is updated to a default value of true (which aligns with the default behaviour of the SDK). - Updated Prune-Depth Documentation. Add Unit Tests for more limit values
Changed
- Upgraded dependencies to latest stable versions:
- HTTP Signatures dependency: 4.0.9 → 4.0.10
- BouncyCastle: 1.60 → 1.61
- Apache HttpClient: 4.5.6 → 4.5.7
- Extra-Enforcer-Rules 1.0-beta-6 → 1.1
- Javac-ErrorProne 2.8.2 → 2.8.5
- Error-Prone-Core 2.1.1 → 2.3.3
- FasterXml-UUID 3.1.4 → 3.1.5
- Jackson 2.9.4 → 2.9.8
- Checkstyle 8.2 → 8.18
- Mockito 2.16.0 → 2.24.5
- TestNG 6.11 → 6.14.3
- Commons-Collections 4.1 → 4.3
- Commons-Lang 3.6 → 3.8.1
- Commons-IO 2.5 → 2.6
- Commons-Codec 1.10 → 1.12
- Commons-Text 1.1 → 1.6
- Kryo 4.0.1 → 4.0.2
- Objenesis 2.6 → 3.0.1
- Cloning 1.9.6 → 1.9.12
- Picocli 1.0.1 → 3.9.5
- Dropwizard-Metrics 4.0.2 → 4.0.5
- JMH 1.19 → 1.21
- Wiremock 2.18.0 → 2.21.0
Fixed
java-manta-3.3.1
[3.3.1] -
Added
- Allow for authentication to be disabled in CSE
Client side encryption HMAC authentication of ciphertext for CTR/CBC ciphers
can now be in VerificationDisabled mode. The default authentication mode continues to be
Mandatory.
Changed
- Deprecate Jobs Multipart implementation and disable integration tests
- Upgraded Bouncy Castle, Apache HTTP Client, Jackson and Java HTTP Signatures dependencies
Fixed
- Client-side encryption does not use libnss when doing simple PUT
- Server-side MPU is hardcoded to create a directory prefix of only a single character
- Server-side MPU returns a committed result but it is parsed as COMMITTING
- InterruptedException could be thrown warnings have been resolved
- Prune empty directory depth configuration validation is incorrect
[java-manta-3.3.0] - 2018-12-02
Changed
- Configuration parameter
manta.timeout
is now being used to specify
connection timeouts and is updated to a default value of 4s. This parameter now accepts negative values (indicates
the OS default setting). - Configuration parameter
manta.tcp_socket_timeout
is now being
used to specify timeouts when waiting for a tcp socket and is updated to a default value of 20s. This parameter now
accepts negative values (indicates the OS default setting). - Configuration parameter
manta.connection_request_timeout
now accepts
negative values (indicates the OS default setting).
Fixed
java-manta-3.2.5
[3.2.5] - 2018-10-04
Fixed
Changed
- Improved documentation, code comments and code path for delete prune operations.
java-manta-3.2.3
Fixed
- UnsupportedOperationException when getting a 0 byte file using
MantaClient.getAsInputStream
- AutoContinuingInputStream fails to handle fatal exceptions correctly and triggers a self-suppression error.
Added
- Client metrics can now be enabled by selecting a reporting mode with the
manta.metric_reporter.mode
/MANTA_METRIC_REPORTER_MODE
setting. JMX and SLF4J are
available, though others may be added in the future. - New metrics exposed:
MantaClient#delete(String, MantaHttpHeaders)
- Download auto-resume has been added in the form of
manta.download_continuations
/MANTA_DOWNLOAD_CONTINUATIONS
configuration
setting.
Changed
- MBeans registered in JMX no longer use an incrementing integer and instead are created under
unique IDs for each client. - JMX is no longer used to expose configuration and pool stats by default. To reenable JMX,
setmanta.metric_reporter.mode
/MANTA_METRIC_REPORTER_MODE
toJMX
. - Upgraded upstream dependencies to latest stable versions:
- HTTP Signatures dependency: 4.0.6 → 4.0.8
- jna-gmp: 2.0.0 → 2.1.0
- BouncyCastle: 1.58 → 1.59
- Apache HttpClient: 4.5.3 → 4.5.5
java-manta-3.2.2
FIxed
- Misleading log message is shown for retrying requests that are unretryable
MantaClientHttpResponseException
does not provide a way to get the response headers- Underlying stream is not closed when we throw a
MantaClientEncryptionException
- Underlying stream is not closed by
MantaEncryptedObjectInputStream
for range requests with certain ciphers (ported from 3.1.8) - Exceptions relating to object type expectations are too generic
- Upgraded upstream dependencies to latest stable versions:
- HTTP Signatures dependency: 4.0.6 → 4.0.8
- jna-gmp: 2.0.0 → 2.1.0
- BouncyCastle: 1.58 → 1.59
- Apache HttpClient: 4.5.3 → 4.5.5
- Improved error messages for missing or invalid private keys.
- Integration test regression