I’ve mentioned this on Slack and IRC and I’ll just highlight it again here…
If you’re doing programmatic decoding of explain-data to produce “friendly” messages and you currently do anything with the :pred value in the returned map, then this change will affect you: · CLJ-2059 - explain-data should return resolved preds In particular, a :pred for an anonymous function, such as used by s/keys for required keys, used to return: (contains? % :the-key) but now it returns: (clojure.core/fn [%] (contains? % :the-key)) (I think the way it tested for the data being a map? has changed in a similar way – I was expecting clojure.core/map? but no) The change is important – previously you couldn’t tell which actual predicate was used whenever you had the same name in multiple namespaces – but it is a bit weird that not all symbols are fully resolved: it depends on how the predicate is written. 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 5/26/17, 9:21 AM, "Alex Miller" <clojure@googlegroups.com on behalf of a...@puredanger.com> wrote: There was a build snafu with the version number so we have re-released this as [org.clojure/spec.alpha "0.1.123"]. No code changes, so effectively the same content. On Friday, May 26, 2017 at 10:16:57 AM UTC-5, Alex Miller wrote: spec.alpha 0.1.109 is now available. Try it via: [org.clojure/spec.alpha "0.1.109"] 0.1.109 includes the following changes: · CLJ-2153 - Docstring for int-in-range? and int-in now mention fixed precision constraint · CLJ-2085 - Add the top level spec and value to explain-data · CLJ-2076 - coll-of and map-of should unform their elements · CLJ-2063 - report explain errors in order from longest to shortest path · CLJ-2061 - Better error message when exercise-fn called on fn without :args spec · CLJ-2059 - explain-data should return resolved preds · CLJ-2057 - If :ret spec is not supplied, use any? -- 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.