this post was submitted on 07 Sep 2023
33 points (100.0% liked)
Rust
6955 readers
35 users here now
Welcome to the Rust community! This is a place to discuss about the Rust programming language.
Wormhole
Credits
- The icon is a modified version of the official rust logo (changing the colors to a gradient and black background)
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
There are also plenty of purposeful semver violations. For example,
serde
makes basically no attempt to follow semver, and any pleas to do otherwise fall on deaf ears.With the justification being "I can't be bothered to decide what is breaking/feature/patch", so hey, here's a tool to tell you.
Not quite. Suppose instead of a single version of
serde
there's now 46 versions like in https://crates.io/crates/parquet to be able to use instances derived in some other crateX
you have to use the same version ofserde
. Now, how should a crate decide which versions ofserde
to support?All 46 and all optional? Supporting that would be painful. Just the last one? crates.io is a cemetery full of dead crates, with this support strategy any handful of crates picked at random are not going to be serde-compatible with each other.
A better solution would be a better support for compile time reflection so serde doesn't have to exist in its current state, but that's got delayed (by big macro conspiracy :)