> It seems impossible to solve this by just everyone adopting a manifesto that one GitHub guy wrote many years ago
Well by "semver" I mostly mean "change the major number to indicate a change of ABI", I don't mind so much about the other numbers in this case. But that's a good question: I don't know when it started being a thing. I would guess much, much earlier than GitHub, though.
> human judgement about what is breaking and not
Hmmm... ABI compatibility for the public interface is not really subjective, or is it?
> weird implicit social taboos about doing major releases “too often”
Yes I don't get that one and I fight hard against it.
> But also doing static linking a bit more seems like it would help a lot with the same problem.
Well I am not fundamentally against static linking; to me it makes sense to do a mix, with the caveat that if you link something statically, then you are the maintainer of that code. Whereas if you link a system library dynamically, you merely depend on it.
My problem is about moving to "static linking only" (or "by default", but I don't even know if Rust allows dynamic linking at all?).
> It seems impossible to solve this by just everyone adopting a manifesto that one GitHub guy wrote many years ago
Well by "semver" I mostly mean "change the major number to indicate a change of ABI", I don't mind so much about the other numbers in this case. But that's a good question: I don't know when it started being a thing. I would guess much, much earlier than GitHub, though.
> human judgement about what is breaking and not
Hmmm... ABI compatibility for the public interface is not really subjective, or is it?
> weird implicit social taboos about doing major releases “too often”
Yes I don't get that one and I fight hard against it.
> But also doing static linking a bit more seems like it would help a lot with the same problem.
Well I am not fundamentally against static linking; to me it makes sense to do a mix, with the caveat that if you link something statically, then you are the maintainer of that code. Whereas if you link a system library dynamically, you merely depend on it.
My problem is about moving to "static linking only" (or "by default", but I don't even know if Rust allows dynamic linking at all?).