On Saturday, February 21, 2015 at 1:01:39 PM UTC-5, David Nolen wrote: > ClojureScript, the Clojure compiler that emits JavaScript source code. > > > README and source code: https://github.com/clojure/clojurescript > > > New release version: 0.0-2913 > > > Leiningen dependency information: > > > [org.clojure/clojurescript "0.0-2913"] > > > This release comes with two very big enhancements. > > > The first is support for Google Closure Modules via the :modules build > option. Google Closure Modules permits splitting advanced compiled > builds into optimal smaller pieces for faster page > loads. ClojureScript's Google Closure Module support is fully > :foreign-libs aware. Source mapping for modules is also fully > supported. > > > The feature is described in more detail here: > https://github.com/clojure/clojurescript/wiki/Compiler-Options#modules > > > The second big change is a fundamental rearchitecting of ClojureScript > REPLs. ClojureScript REPLs now support a set of options similar to > those taken by `clojure.main/repl` with small changes to account for > different JavaScript evaluation environments. Many third party REPLs > like Figwheel, Weasel, and Ambly are either unaffected or have already > accounted for these changes. However current tooling leveraging > Piggieback will likely present an inferior experience as Piggieback was > designed to work around the previous limitations of ClojureScript > REPLs. Now that ClojureScript REPLs are more like the standard Clojure > REPL it should be far simpler to add proper interruptible-eval and > load-file nREPL middleware so that existing tooling around nREPL can > more easily integrate ClojureScript REPLs as first class citizens. > > > Feedback on both of these enhancements is very welcome! > > > > There are also many smaller fixes around REPL command line behavior, > the Nashorn REPL, :foreign-libs resource finding issues, the full > list follows: > > > ## 0.0-2913 > * Support custom :output-to for :cljs-base module > > > ## 0.0-2911 > > > ### Enhancements > * CLJS-1042: Google Closure Modules :source-map support > * CLJS-1041: Google Closure Modules :foreign-libs support > * Google Closure Modules support via :modules > * CLJS-1040: Source-mapped script stack frames for the Nashorn repl > > > ### Changes > * CLJS-960: On carriage return REPLs should always show new REPL prompt > * CLJS-941: Warn when a symbol is defined multiple times in a file > * REPLs now support parameterization a la clojure.main/repl > * all REPLs analyze cljs.core before entering loop > * can emit :closure-source-map option for preserving JS->JS map > * REPLs can now merge new REPL/compiler options via -setup > > > ### Fixes > * CLJS-998: Nashorn REPL does not support require special fn > * CLJS-1052: Cannot require ns from within the ns at the REPL for reloading > purposes > * CLJS-975: preserve :reload & :reload-all in ns macro sugar > * CLJS-1039: Under Emacs source directory watching triggers spurious > recompilation > * CLJS-1046: static vars do not respect user compile time metadata > * CLJS-989: ClojureScript REPL loops on EOF signal > * fix DCE regression for trivial programs > * CLJS-1036: use getResources not findResources in get-upstream-deps*
Closure Module support is an amazing addition, thank you for implementing it. It is something that has always been nagging at me when building multi page/multi ui applications with CLJS. -- 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.