aljazerzen commented on issue #5368:
URL: https://github.com/apache/arrow-rs/issues/5368#issuecomment-2009611110

   I like this proposal. In essence, it means decoupling versions of Arrow the 
project and arrow-rs the crate.
   
   Even more robust way of versioning would be to only release a major version 
every X amount of months, but only if there were any breaking changes. 
Otherwise, only a minor version can be published.
   
   ---
   
   Regarding MSAV approach: I don't think this is sound advice to users of 
arrow-rs - it would lead to occasional breaking builds.
   
   That's because if, for example, library `sun` uses `parquet >= 47` and then 
Arrow releases a new version, builds of exising `sun` could start failing, 
since semver requirement of `>= 48` would also match 48. At this point, `sun` 
could release a new version that would state it depends on `>=48`, but the old 
version would be broken. Which means that all dependents of `sun` would also 
break.
   
   MSRV works only because all new versions of Rust are guaranteed to be 
backward compatible - they never introduce breaking changes. This is noted with 
the fact that Rust itself is on major version 1.x for a long time now.


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