Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

The Rust community also takes semver quite seriously. 0.1.0 can break API compatibility when it moves to 0.2.0, so prototypes that want to iterate on API stay pre-1.0 until they feel confident in their API. The Cargo ecosystem has shockingly few 2.x or 3.x versions.


When you say this, what experience are you comparing to? Any particular package ecosystems, or a general rule? Thanks


By comparison to the long tail of the C library ecosystem (SONAME handling), and the package ecosystems of many other languages, most of which do not use sufficiently well-defined versioning schemes to allow expressing dependencies like "1.4 or any compatible version". In other languages, I've done the equivalent of "cargo update && cargo build" and encountered build errors due to API changes. In Cargo, I've found that exceptionally rare.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: