On Mon, Oct 2, 2017 at 7:55 AM, Stuart Halloway <stuart.hallo...@gmail.com> wrote:
> Hi David, > > Spec will be in alpha for a while. That is part of the point of it being a > separate library. Can you say more about what problems this is causing? > > Stu > > As a library maintainer, I am forced to upgrade and release my library any time something I depend upon makes a breaking change. I don't get paid for maintaining open source libraries, it's something I do in my spare time, so I prefer to do it on my own schedule. When an underlying library makes a breaking change, I get dozens of urgent requests from people who need me to cut a new release ASAP, and by Murphy's Law, that often happens when I have very little time to do it. It's a nuisance. Clojure is pretty good about not making breaking changes, but it happens from time to time. Clojurescript is less good about not making breaking changes, and therefore, maintaining Clojurescript libraries is more of a headache. On the plus side, Clojurescript users seem to care very little about backwards compatibility (most keep up with the latest version), so sometimes it is easier to make a change to keep up with a change in Clojurescript than one in Clojure, where I am expected to not only support the latest breaking change, but also the last several releases. Anything that is labeled as "alpha" is waving a big red flag that there could be breaking changes at any time with little warning. For my libraries which depend on spec, there's no way I'm going to bring them out of alpha status until spec comes out of alpha status. If I make an official release of something that depends on spec, then I'm going to be on the hook to rapidly cut a new release every time spec changes, which could be at any time. I don't want that hassle. I don't want to make a promise to the community to maintain a stable product if the thing I depend upon has not made a similar promise. When spec reaches a point where the API will not be changing, or rather, when we know that new changes will only be additive, I can begin to trust that it won't be a huge maintenance headache to release something based on spec. -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.