tools.namespace: Parse ns declarations from source files and
reload files in the correct order.
https://github.com/clojure/tools.namespaceThis is an ALPHA release with some significant changes,
including ClojureScript support (see below). It should be
fully backwards-compatible with the 0.2.x series, except for
the new dependency on Clojure 1.7, but I would like to
encourage anyone working on development tools or libraries
that use tools.namespace to try out this release and report
any bugs you find. Thanks!
Leiningen dependency information:
[org.clojure/tools.namespace "0.3.0-alpha1"]
Changes in this release:
* Minimum Clojure version is 1.7.0
* Enhancement [TNS-36]: Use java.classpath for better JVM
classpath resolution
* Partial ClojureScript Support [TNS-35]
* Platform-neutral namespaces were converted to
conditional-read (`.cljc`) files: c.t.n.dependency,
c.t.n.track, and c.t.n.parse. These namespaces can
be used in ClojureScript programs.
* Added support for finding, parsing, and analyzing
ClojureScript source files (`.cljs` and `.cljc`) in
c.t.n.file, c.t.n.parse, c.t.n.dir, and c.t.n.find
with optional "platform" arguments. These namespaces
still only **run** on the Clojure(JVM) platform.
* Reloading and interactive features remain
Clojure(JVM) only for now: c.t.n.move, c.t.n.reload,
and c.t.n.repl
* Uses [tools.reader] for platform-independent parsing
and conditional-reader support.
* Breaking change: `c.t.n.parse/read-ns-decl` no longer
returns `nil` on syntax errors. Instead, exceptions are
allowed to propagate up from tools.reader. This change
only affects code which calls `read-ns-decl` directly.
c.t.n.file and c.t.n.find will catch and ignore reader
exeptions when trying to read namespace declarations.
* Some definitions deprecated; see source code or Var
metadata for details.
This is a Clojure Contrib project.
http://dev.clojure.org/display/doc/Clojure+Contrib[TNS-35]:
http://dev.clojure.org/jira/browse/TNS-35[TNS-36]:
http://dev.clojure.org/jira/browse/TNS-36[tools.reader]:
https://github.com/clojure/tools.reader