GitHub user Xuanwo edited a discussion: OpenDAL Compat

Hi, OpenDAL occasionally releases breaking changes. Each time this happens, our 
users need to update their versions. It's straightforward if users only depend 
on `opendal` itself. 

However, since `opendal` is widely used, it's possible that users also depend 
on crates like `iceberg`, `parquet`, and `delta`, which depend on `opendal` as 
well. Those projects might have different release schedules that can't align 
with opendal's release.

Releasing `opendal 1.0` might help, but it still needs time. Even `opendal 1.0` 
can't fully address this, as not every crate can update to the new version 
promptly.

So I propose a new crate called `opendal_compat`. In which, we provide API like:

```rust
#[feature("v50_to_v49")]
fn v50_to_v49(v: opendal_v50::Operator) -> opendal_v49::Operator { ... }
```

This way, users can always convert the newer opendal versions to the old ones 
for compatibility.

---

The conversation isn't endless: we might only provide the two most recent major 
versions.

GitHub link: https://github.com/apache/opendal/discussions/5180

----
This is an automatically sent email for [email protected].
To unsubscribe, please send an email to: [email protected]

Reply via email to