JanKaul commented on PR #15:
URL: https://github.com/apache/iceberg-rust/pull/15#issuecomment-1659724057

   I'm definitely in favor of small crates compared to using features. From my 
perspective features can get really messy when there is a hierarchy of crates 
depending on each other (Crate A uses feature 1 of `iceberg` and crate B wants 
to use crate A without feature 1 and so on). Plus compile times should be much 
better.
   
   There is one downside. You cannot implement traits for structs defined 
outside of your crate. So if you want to implement Datafusions `TableProvider` 
for example, you have to create a wrapper struct like so:
   
   ```
   struct DatafusionTable(IcebergTable);
   ```
   
   Reagrding the release cadence, I have no preference. We could release the 
small crates all with the same version number or release them separately.


-- 
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]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to