True, I take that back. Any incompatible (public API) changes warrants a new library, not just "substantial" as it's too subjective.
Compare this with Clojure where you can almost guarantee that you can move between any stable version without having to change your code, even if you jump 4-5 versions.