crepererum commented on PR #514: URL: https://github.com/apache/arrow-rs-object-store/pull/514#issuecomment-3501727028
> Personally, I wish there was some standardized way to abstract over the common parts of the runtime. Tokio is great and there are many good reasons to use it but it can be quite limiting when dependencies effectively force everything around them to use it. For the record: I fully agree with you on that front. I was mostly wondering if that ideal world is practical feasible at the moment given the state of the ecosystem. As a maintainer, I would like to avoid code complexity and potential performance hits if they don't come with any benefits. And if only one of our dependencies requires `tokio` and there's no realistic perspective of fixing that, then avoiding `tokio` in `object_store` itself has exactly zero payoff. > I haven't read through every use of Tokio in `object_store`, but I can imagine it being controlled by some feature flag, allowing to opt into a runtime-agnostic version The problem is not primarily in `object_store` itself. I think here we could get rid of tokio. The issue is more in the crates that we need to make `object_store` work in the first place. If you check out the repo locally and generate `Cargo.lock` (e.g. but running `cargo check`), then you see that basically everything depends on `tokio`. Now there might be feature flags for `requests` and Co as well, but we should probably check this before continuing with this effort. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
