Releases: apache/opendal
v0.24.1
v0.24.0
Upgrade to v0.24
In v0.24, we made a big refactor on our internal IO-related traits. In this version, we split our IO traits into input
and output
versions:
Take Reader
as an example:
input::Reader
is the user input reader, which only requires futures::AsyncRead + Send
.
output::Reader
is the reader returned by OpenDAL
, which implements futures::AsyncRead
, futures::AsyncSeek
, and futures::Stream<Item=io::Result<Bytes>>
. Besides, output::Reader
also implements Send + Sync
, which makes it useful for users.
Due to this change, all code that depends on BytesReader
should be refactored.
BytesReader
=>input::Reader
OutputBytesReader
=>output::Reader
Thanks to the change of IO trait split, we make ObjectReader
implements all needed traits:
futures::AsyncRead
futures::AsyncSeek
futures::Stream<Item=io::Result<Bytes>>
Thus, we removed the seekable_reader
API. They can be replaced by range_reader
:
o.seekable_reader
=>o.range_reader
Most changes only happen inside. Users not using opendal::raw::*
will not be affected.
Sorry for the inconvenience. I think those changes are required and make OpenDAL better! Welcome any comments at Discussion.
What's Changed
- ci: Fix build for oay and oli by @Xuanwo in #1097
- fix: Fix rustls support for suppaftp by @Xuanwo in #1102
- chore(deps): update quick-xml requirement from 0.26 to 0.27 by @dependabot in #1101
- feat: Split bytes reader into input and output by @Xuanwo in #1106
- ci: Enable rust cache for CI by @Xuanwo in #1107
- deps(oay,oli): Update dependences of oay and oli by @Xuanwo in #1122
- refactor: Only add content length hint if we already know length by @Xuanwo in #1123
- Add support for SAS tokens in Azure blob storage by @agocke in #1124
- feat: Add github action cache service support by @Xuanwo in #1111
- fix(services/ghac): Fix pkg version not used correctly by @Xuanwo in #1125
- docs: Add docs for ghac service by @Xuanwo in #1126
- refactor: Redesign outpu bytes reader trait by @Xuanwo in #1127
- refactor: Remove open related APIs by @Xuanwo in #1129
- feat: Implement offset seekable reader for zero cost read by @Xuanwo in #1133
- refactor: Merge and cleanup io & io_util modules by @Xuanwo in #1136
- feat: Implement fuzz test on ObjectReader by @Xuanwo in #1140
- Bump to version 0.24 by @Xuanwo in #1142
New Contributors
Full Changelog: v0.23.0...v0.24.0
v0.23.0
What's Changed
- feat: Implement object handler so that we can do seek on file by @Xuanwo in #1091
- feat: Implement blocking for hdfs by @Xuanwo in #1092
- feat(services/hdfs): Implement open and blocking open by @Xuanwo in #1093
- docs: Add mozilla/sccache into projects by @Xuanwo in #1094
- Bump to version 0.23 by @Xuanwo in #1095
Full Changelog: v0.22.6...v0.23.0
v0.22.6
What's Changed
- feat(io): make BlockingBytesRead Send + Sync by @sundy-li in #1083
- feat(fs): skip seek if offset is 0 by @yang-han in #1082
- RFC-1085: Object Handler by @Xuanwo in #1085
- feat(services/s3,gcs): Allow accepting signer directly by @Xuanwo in #1087
- Bump to version 0.22.6 by @Xuanwo in #1089
New Contributors
Full Changelog: v0.22.5...v0.22.6
v0.22.5
v0.22.4
What's Changed
- chore(deps): update base64 requirement from 0.13 to 0.20 by @dependabot in #1067
- fix: read a large range without error and add test by @Ranxy in #1068
- fix(services/oss): Enable standard behavior for oss range by @Xuanwo in #1070
- improve blocking read use read_to_end by @sundy-li in #1072
- feat(services/gcs): Fully implement default credential support by @Xuanwo in #1073
- Bump to version 0.22.4 by @Xuanwo in #1074
New Contributors
Full Changelog: v0.22.3...v0.22.4
v0.22.3
What's Changed
- fix(services/moka): Don't print all content in cache by @Xuanwo in #1057
- feat(layers/metrics): Merge error and failure counters together by @Xuanwo in #1058
- feat: Set MSRV to 1.60 by @Xuanwo in #1060
- feat: Add unwind safe flag for operator by @Xuanwo in #1061
- feat(azblob): Add build from connection string support by @Xuanwo in #1064
- Bump to version 0.22.3 by @Xuanwo in #1065
Full Changelog: v0.22.2...v0.22.3
v0.22.2
v0.22.1
v0.22.0
What's Changed
- chore(deps): update env_logger requirement from 0.9 to 0.10 by @dependabot in #1015
- docs: Fix broken links in docs by @Xuanwo in #1016
- feat: improve temp file organization when enable atomic write in fs by @killme2008 in #1017
- refactor: Polish error handling of different services by @Xuanwo in #1018
- refactor: Merge metadata and content cache together by @Xuanwo in #1020
- feat: Allow configure LoggingLayer's level by @Xuanwo in #1021
- feat: Enable users to specify the cache policy by @Xuanwo in #1024
- feat: Implement presign for oss by @Xuanwo in #1035
- fix(services/fs): Make sure writing file is truncated by @Xuanwo in #1036
- refactor(layer/cache): Allow users implement cache by themselves by @Xuanwo in #1040
- Bump to version 0.22 by @Xuanwo in #1041
Full Changelog: v0.21.2...v0.22.0