Building rust mega-libs is difficult.
A non-breaking change in a distant downstream lib breaks a downstream dependency because it added a method to an extension trait and introduced ambiguity ðŸ«
Now all our users need to tweak lock files or they can't build our package 🥲
A non-breaking change in a distant downstream lib breaks a downstream dependency because it added a method to an extension trait and introduced ambiguity ðŸ«
Now all our users need to tweak lock files or they can't build our package 🥲
Comments
A distant downstream lib decides to start requiring a rust compiler released six days ago. Technically a non-breaking change.
Same end result. Our users have to do careful lock file surgery or upgrade the rust compiler to latest.