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.

Reply via email to