3 ms·
And this is the kind of convoluted situation that happens when you have software that can never, ever break backwards compatibility. It is probably entirely ne
by lamontcg 3y ago
And this is the kind of convoluted situation that happens when you have software that can never, ever break backwards compatibility.
It is probably entirely necessary to do it in this particular situation, but when people argue for no software ever breaking backward compatibility, they're arguing for more and more convoluted solutions like this. There's always a cost.
- ajross 3y ago> And this is the kind of convoluted situation that happens when you have software that can never, ever break backwards compatibility. Toolchains are poster children for that genre, yeah. The ecosystems are too large and too interconnected to evolve in parallel. I mean, any one of LLVM, Rust and Clang are too large as a single project to implement a breaking change like this as a single event, trying to get them to do it in tandem just isn't going to happen. And even then there are uncounted other LLVM downstreams to worry about, all of whom need a story for how to migrate.
- marcosdumay 3y agoWhat is the exact kind of thing semantic versioning was meant to solve.
- remexre 3y agoLLVM breaks backwards compatibility all the time, though...
- lamontcg 3y agoNot really my point though. I just want to get the people who scream on HN about how software should never ever break backcompat under any circumstance, in a room with the people on this issue who are stunned by how convoluted this situation is, and get them to fight it out. Bonus points for when those people are the same person on different days.