3 ms·
Backwards compatibility is exactly why clojure.set’s JIRA is full of won’t fixes, though. It’s not just a cost for maintainers.
by moomin 9y ago
Backwards compatibility is exactly why clojure.set’s JIRA is full of won’t fixes, though.
It’s not just a cost for maintainers.
- bpicolo 9y agoYeah, for sure. I think the best takeaway for me from that talk was that major versioning is actually a kinda crummy part of dependency managers, because the way we structure them / code tends to allow you to only use one version of some library at a time. I've definitely been bit on many occasions by libraries doing entire restructures of the whole thing and then pushing under the same namespace. A better strategy for namespacing would go a long way. The clojure.set thing is crummy but a hard call. That's a super fundamental piece of the library puzzle, and write once, run forever is a really very expected thing there. Those are something that a wrapper can overcome pretty simply though. In a lot of those cases the approach they take does seem reasonable though, namely that e.g. clojure.set/union perform exactly as is documented on the documented inputs.