Skip to end of metadata
Comment: Monger 3.1.0 fixes bad :or
Go to start of metadata

As of 1.9.0-alpha11 some Clojure core macros have specs defined (currently let, if-let, when-let, defn, defn-, fn, and ns). These specs are checked during macroexpansion and thus previously silent invalid code may now fail at compile time. Because this has caused some churn in community libraries, this page is collecting info about known problems and when they are fixed so you can update your libs.

Common problems:

  • Using (ns (require ...) (import ...)) instead of (ns (:require ...) (:import ...))
  • Qualified symbol in fn or defn name (should be simple symbol) - this is nearly always the result of a macro that generates fn or defn
  • Bad :or map keys in destructuring - :or map keys should always be simple symbols (the symbols being let-bound)

All info below has been manually entered and the "Fixed in" column is likely to be lagging reality - feel free to update.

LibraryVersion found
(earlier likely also broken)
NamespaceProblemStatusFixed as of
Clojure1.9.0-alpha10clojure.test-clojure.data (test ns)bad ns declarationFixed1.9.0-alpha11
ClojureScript1.9.93cljs.source-map.base64-vlqbad ns declarationFixed1.9.198
Spyscope0.1.5spyscope.core, spyscope.replbad ns declarationPR merged
http.async.client1.1.0clj.http.async.client.utilbad :or mapFixed1.2.0
claypoole1.1.3com.climate.claypoolequalified symbol in fn namePR merged
core.unify0.5.6clojure.core.unifyqualified symbol in fn nameFixed

0.5.7

tesser.core1.0.1tesser.corequalified symbol in fn namePR merged
aleph0.4.2-alpha6aleph.http.multipartbad :or mapPR merged0.4.2-alpha7
pretty0.1.29io.aviso.exception-test (test ns)bad ns declarationFixed0.1.30
ring-core1.3.0ring.util.mime-typebad ns declarationfixed long ago1.3.1
tools.namespace0.2.3clojure.tools.namespacebad ns declarationfixed long ago0.2.4
clj-tuple0.1.7clj-tuplequalified symbol in fn namefixed long ago0.1.8
system0.3.1system.reload, system.replbad ns delcarationPR merged
monger3.0.2monger.corebad :orFixed3.1.0
suchwow5.2.1suchthat.sequencesbad ns declarationFixed5.2.3
midje1.9.0-alpha4midje.checkersbad ns declarationFixed1.9.0-alpha5
lein-cljsbuild1.1.3cljsbuild.crossoverbad ns declarationFixed1.1.4
algo.monads0.1.5clojure.algo.monadsqualified symbol in defn nameFixed

0.1.6

prone1.1.1prone.middlewarebad :or mapFixed1.1.2

And some other projects that don't have direct problems but having issues due to dependencies:

LibraryVersionBroken depsCommentFixed as of
liberator0.14.1core.unify, clojurescript, ring-core
datascript0.15.2clojurescript
schema1.1.3clojurescript
riemann5.6.3tools.namespace, http.async.client
plumbing0.5.3clojurescript
lamina0.5.6clj-tuple
trapperkeeper1.4.1spyscope
core.contracts0.0.5core.unify0.0.6
system0.3.1monger
midje1.9.0-alpha4core.unify1.9.0-alpha5
Labels:

AltStyle によって変換されたページ (->オリジナル) /