feat(rust/core): add async traits#4014
Conversation
16075fe to
aa72764
Compare
|
I suppose you want to mean apache/arrow-rs#9166. |
|
Is it possible in Cargo.toml to only enforce the higher minimum version when the That said, I don't think I object in general to requiring a newer Arrow, but I'm not sure if users would find that inconvenient. I would think people try to use the newest versions where possible, so maybe it's not a big issue? |
As far as I know, it is not possible. |
Signed-off-by: if0ne <pavel.agafonov.al@gmail.com>
|
Strictly speaking, cancellation in Rust is as straightforward as just dropping the Though to be fair, cancellation is not very well explained in the official documentation. The chapter on cancellation in the async book is just a stub: https://rust-lang.github.io/async-book/part-reference/cancellation.html |
|
The problem is what to do about FFI - dropping the Future seems quite a bit more complicated from that layer and having some way to explicitly request a cancellation (causing the outstanding futures to resolve to an error) seems easier to implement. My proposal so far has been to have something akin to a cancellation token (as Go and other ecosystems effectively do), which that page very briefly acknowledges. |
It’s not a duplicate of #3714. It’s actually part of #3714 and adds async traits for
Driver,Database,Connection, andStatement.For now, I’ve excluded the DataFusion driver. We need a new version of DataFusion that supports arrow crates version 58.
UPD: I'm waiting for the DataFusion release with these changes: apache/datafusion#19728