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

Rust


So it can resolve dependencies of different versions? For example if there are three packages that each depend on different versions?

    foo v1.0.1
    foo v2.0
    foo v1.5


cargo follows http://semver.org/, so that will promote the 1.0.1 dependency to the 1.5 one. It's also safe to link multiple versions of a single package into a single process, so the final result of depending on all three of those (transitively) will be an artifact that links to foo v1.5 and foo v2.0.

Of course, the two versions are incompatible, so if one tries to get them to interact (e.g. pass a type from v1.5 into a function from v2.0), there'll be errors. However, these will be static type errors, instead of some strange runtime behaviour.




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

Search: