Doesn't this mean that Clojure and spec will be mutually dependent, i.e. a dependency cycle? Is that likely to cause problems for any tooling?
On 27 April 2017 at 06:27, Sean Corfield <s...@corfield.org> wrote: > Whilst this is rather disruptive for current users of clojure.spec, I > understand and appreciate the goal. > > > > I hope that the new org.clojure/spec.alpha will be made available for a > few days ahead of actually removing it from Clojure 1.9 so that those of us > already using it and doing multi-version against master-SNAPSHOT will have > a few days to update our code rather than just see our dev builds break and > get blocked while we’re forced to make this code change? > > > > Sean Corfield -- (970) FOR-SEAN -- (904) 302-SEAN > An Architect's View -- http://corfield.org/ > > "If you're not annoying somebody, you're not really alive." > -- Margaret Atwood > > > > On 4/26/17, 8:30 AM, "Alex Miller" <clojure@googlegroups.com on behalf of > a...@puredanger.com> wrote: > > > > We are moving spec out of the Clojure repo/artifact and into a library to > make it easier to evolve spec independently from Clojure. While we consider > spec to be an essential part of Clojure 1.9, there are a number of design > concerns to resolve before it can be finalized. This allows us to move > towards a production Clojure release (1.9) that depends on an alpha version > of spec. Users can also pick up newer versions of the spec alpha library as > desired. Additionally, this is a first step towards increased support for > leveraging dependencies within Clojure. > > > > We will be creating two new contrib libraries that will contain the > following (renamed) namespaces: > > > > *org.clojure/spec.alpha* > clojure.spec.alpha (previously clojure.spec) > clojure.spec.gen.alpha (previously clojure.spec.gen) > clojure.spec.test.alpha (previously clojure.spec.test) > > > > *org.clojure/core.specs.alpha* > clojure.core.specs.alpha (previously clojure.core.specs) > > > > In most cases, we expect that users have aliased their reference to the > spec namespaces and updating to the changed namespaces will only require a > single change at the point of the require. > > > > *How will ClojureScript's spec implementation change?* > > > > ClojureScript will also change namespace names to match Clojure. > Eventually, the ClojureScript implementation may move out of ClojureScript > and into the spec.alpha library - this is still under discussion. > > > > *Why do the libraries and namespaces end in alpha?* > > > > The "alpha" indicates that the spec API and implementation is still > subject to change. > > > > *What will happen when the spec api is no longer considered alpha?* > > > > At that point we expect to release a non-alpha version of the spec library > (with non-alpha namespaces). Users may immediately begin to use that > version of spec along with whatever version of Clojure it depends on. > Clojure itself will depend on it at some later point. Timing of all these > actions is TBD. > > > > *Will the library support Clojure 1.8 or older versions?* > > > > No. spec uses new functions in Clojure 1.9 and it has never been a goal to > provide spec for older versions. Rather, we are trying to accelerate the > release of a stable Clojure 1.9 so that users can migrate forward to a > stable production release with access to an alpha version of spec, and > access to ongoing updated versions as they become available. > > > > -- > 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. > > -- > 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. > -- 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.