Upgrade to v0.38
There are no public API changes.
Raw API
OpenDAL add the Write::sink
API to enable streaming writing. This is a breaking change for users who depend on the raw API.
For a quick fix, users who have implemented opendal::raw::oio::Write
can return an Unsupported
error for Write::sink()
.
More detailes could be found at RFC: Writer sink
API.
What's Changed
Added
- feat(raw/http_util): Implement mixed multipart parser by @Xuanwo in #2430
- feat(services/gcs): Add batch delete support by @wcy-fdu in #2142
- feat(core): Add Write::sink API by @Xuanwo in #2440
- feat(services/s3): Allow retry for unexpected 499 error by @Xuanwo in #2453
- feat(layer): add throttle layer by @morristai in #2444
- feat(bindings/haskell): init haskell binding by @silver-ymz in #2463
- feat(core): add capability check by @unixzii in #2461
- feat(bindings/haskell): add CONTRIBUTING.md by @silver-ymz in #2466
- feat(bindings/haskell): add CI test for haskell binding by @silver-ymz in #2468
- feat(binding/lua): introduce opendal lua binding by @oowl in #2469
- feat(bindings/swift): add Swift binding by @unixzii in #2470
- feat(bindings/haskell): support
is_exist
create_dir
copy
rename
delete
by @silver-ymz in #2475 - feat(bindings/haskell): add
Monad
wrapper by @silver-ymz in #2482 - feat(bindings/dotnet): basic structure by @tisonkun in #2485
- feat(services/dropbox): Support create/read/delete for Dropbox by @Zheaoli in #2264
- feat(bindings/java): support load system lib by @tisonkun in #2502
- feat(blocking operator): add remove_all api by @infdahai in #2449
- feat(core): adopt WebHDFS LISTSTATUS_BATCH for better performance by @morristai in #2499
- feat(bindings/haskell): support stat by @silver-ymz in #2504
- feat(adapters-kv): add rename and copy support to kv adapters by @oowl in #2513
- feat: Implement sink for services s3 by @Xuanwo in #2508
- feat(adapters-kv): add rename and copy support to non typed kv adapters by @oowl in #2515
- feat: Implement test harness via libtest-mimic instead by @Xuanwo in #2517
- feat(service/sled): introduce tree support by @oowl in #2516
- feat(bindings/haskell): support list and scan by @silver-ymz in #2527
- feat(services/redb): support redb service by @oowl in #2526
- feat(core): implement service for Mini Moka by @morristai in #2537
- feat(core): add Mini Moka GitHub Action workflow job by @morristai in #2539
- feat(services): add cacache backend by @PsiACE in #2548
- feat: Implement Writer::copy so user can copy from AsyncRead by @Xuanwo in #2552
Changed
- refactor(bindings/C): refactor c bindings to call all APIs using pointer by @Ji-Xinyou in #2489
Fixed
- fix(services/azblob): Fix azblob batch max operations by @A-Stupid-Sun in #2434
- fix(services/sftp): change default root config to remote server setting by @silver-ymz in #2431
- fix: Enable
std
feature for futures to allowfutures::AsyncRead
by @Xuanwo in #2450 - fix(services/gcs): GCS should support create dir by @Xuanwo in #2467
- fix(bindings/C): use copy_from_slice instead of from_static in opendal_bytes by @Ji-Xinyou in #2473
- fix(bindings/swift): reorg the package to correct its name by @unixzii in #2479
- fix: Fix the build for zig binding by @Xuanwo in #2493
- fix(service/webhdfs): fix webhdfs config builder for disable_list_batch by @morristai in #2509
- fix(core/types): add missing
vercel artifacts
forFromStr
by @cijiugechu in #2519 - fix(types/operator): fix operation limit error default size by @oowl in #2536
Docs
- docs: Replace
create
withnew
by @NiwakaDev in #2427 - docs(services/redis): fix redis via config example by @A-Stupid-Sun in #2443
- docs: add rust usage example by @Young-Flash in #2447
- docs: Polish rust examples by @Xuanwo in #2456
- docs: polish docs and fix typos by @suyanhanx in #2458
- docs: fix a typo on the landing page by @unixzii in #2460
- docs(examples/rust): Add 01-init-operator by @Xuanwo in #2464
- docs: update readme.md to match the output by @rrain7 in #2486
- docs: Update components for Libraries and Services by @Xuanwo in #2487
- docs: Add OctoBase into our users list by @Xuanwo in #2506
- docs: Fix scan not checked for sled services by @Xuanwo in #2507
- doc(binding/lua): Improve readme doc for contribute and usage by @oowl in #2511
- doc(services/redb): add doc for redb service backend by @oowl in #2538
- doc(bindings/swift): add CONTRIBUTING.md by @unixzii in #2540
- docs: Add new rust example 02-async-io by @Xuanwo in #2541
- docs: Fix link for CONTRIBUTING.md by @HuSharp in #2544
- doc: polish release doc by @suyanhanx in #2531
- docs: Move verify to upper folder by @Xuanwo in #2546
- doc(binding/lua): add ldoc generactor for lua binding by @oowl in #2549
- docs: Add new architectural image for OpenDAL by @Xuanwo in #2553
- docs: Polish README for core and bindings by @Xuanwo in #2554
CI
- ci: Fix append test should use copy_buf to avoid call times by @Xuanwo in #2436
- build(bindings/ruby): fix compile rb-sys on Apple M1 by @tisonkun in #2451
- ci: Use summary for zig test to fix build by @Xuanwo in #2480
- ci(workflow): add lua binding test workflow by @oowl in #2478
- build(deps): bump actions/setup-python from 3 to 4 by @dependabot in #2481
- ci(bindings/swift): add CI for Swift binding by @unixzii in #2492
- ci: Try to make webhdfs tests more stable by @Xuanwo in #2503
- ci(bindings/java): auto release snapshot by @tisonkun in #2521
- ci: Disable the stage snapshot CI by @Xuanwo in #2528
- ci: fix opendal-java snapshot releases by @tisonkun in #2532
- ci: Fix typo in binding java CI by @Xuanwo in #2534
- ci(bindings/swift): optimize time consumption of CI pipeline by @unixzii in #2545
- ci: Fix PR label not updated while edited by @Xuanwo in #2547
- ci: automatic java binding release by @tisonkun in #2557
Chore
- chore: Add redis bench support by @Xuanwo in #2438
- chore(bindings/nodejs): update index.d.ts by @suyanhanx in #2459
- chore: Add release 0.37.0 to download by @suyanhanx in #2472
- chore: Fix Cargo.lock not updated by @Xuanwo in #2490
- chore: Polish some code details by @Xuanwo in #2505
- chore(bindings/nodejs): provide more precise type for scheme by @cijiugechu in #2520
- chore: add tests path to make publish workflow work by @PsiACE in #2556
New Contributors
- @NiwakaDev made their first contribution in #2427
- @unixzii made their first contribution in #2460
- @oowl made their first contribution in #2469
- @rrain7 made their first contribution in #2486
- @cijiugechu made their first contribution in #2519
- @HuSharp made their first contribution in #2544
Full Changelog: v0.37.0...v0.38.0