Introduce a "tokio" to allow pulling a trait-only build#644
Conversation
Signed-off-by: Adam Gutglick <adamgsal@gmail.com>
|
Looks clean, thank you. One suggestions: Could you add a small note about the arrow-rs-object-store/src/lib.rs Lines 70 to 98 in 030f29d Based on your |
|
will do, also happy to shave down the |
|
Ok I also have a commit splitting the |
Let's do that as a separate follow-up PR. |
|
Thanks for the crate! For the record, this broke our build. Since this is a pre-1.0 crate, I would appreciate it if you'd bump the minor version (0.MINOR.PATCH) before releasing changes like this in the future. |
|
would it be possible to add semver checker to the CI? object-store is becoming massively important and offers a great abstraction over all providers, so version stability would really help. Thanks again for amazing work! |
in 0.13.2, object_store made tokio optional in a patch release See: apache/arrow-rs-object-store#644 Ideally this would have been in a object_store 0.14.0 release. --------- Co-authored-by: Yuri Astrakhan <yuriastrakhan@gmail.com>
|
Please continue the "semver breaking" discussion in #677. |

Which issue does this PR close?
Closes #.
Rationale for this change
This change allows users to pull a trait-only build that doesn't require tokio, keeping it very lightweight (its one of the top 3 slowest dependencies to build when building without default features, next to
synandfutures-util).I've also considered making the
httpdependency optional, and I think it might be possible to makeurloptional too, but I'm not sure what's the desired balance here and figured its worth getting some feedback first.Running
cargo tree -e normal --no-default-featureson this branch shows:While currently on
mainit prints:What changes are included in this PR?
Introduces a new "tokio" feature, which is enabled by default through both the "fs" feature and "cloud" feature. The feature pulls in both
tokioandtracing, and enables all provided middlewares (retry, throttling, buffered::*, andLimitStore).Are there any user-facing changes?
For users pulling the crate without default features, they won't be able to use all the middlewares mentioned above.