The following services have been removed:
PR-5393 removes the batch concept from OpenDAL. All batch-related operations and capabilities have been removed.
New options classes have been introduced for structured operation configuration:
ReadOptions
- for read operationsWriteOptions
- for write operationsListOptions
- for list operationsStatOptions
- for stat operationsExample usage:
// Read with options ReadOptions options = ReadOptions.builder() .range(0, 1024) .ifMatch("etag") .build(); byte[] data = operator.read("path/to/file", options); // Write with options WriteOptions options = WriteOptions.builder() .contentType("text/plain") .cacheControl("max-age=3600") .build(); operator.write("path/to/file", data, options);
PR-6169 The append
method in AsyncOperator
has been deprecated. Please use the write
method with WriteOptions.builder().append(true).build()
instead.
artifactId of the opendal-java
has changed from to opendal
to align with the convention of entire OpenDAL project.
<dependencies> <dependency> <groupId>org.apache.opendal</groupId> - <artifactId>opendal-java</artifactId> + <artifactId>opendal</artifactId> <version>${opendal.version}</version> </dependency> <dependency> <groupId>org.apache.opendal</groupId> - <artifactId>opendal-java</artifactId> + <artifactId>opendal</artifactId> <version>${opendal.version}</version> <classifier>${os.detected.classifier}</classifier> </dependency> </dependencies>
PR-4641 renames async Operator
to AsyncOperator
and BlockingOperator
to Operator
.
Because of a TLS lib issue, we temporarily disable the services-ftp
feature.
PR-3166 changes the API for constructing operators:
Previous:
new BlockingOperator(scheme, config); new Operator(scheme, config);
Current:
BlockingOperator.of(scheme, config); Operator.of(scheme, config);
Now, there is no public constructor for operators, but only factory methods. In this way, the APIs are free to do arbitrary verifications and preparations before constructing operators.