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]

Reply via email to