changes.md
cljs.proxy/proxy defaultcljs.proxy/builder, cache-fn parameterizationcljs.proxy doesn't handle for .. of correctly:lite-mode support fnsparents does not walk JavaScript prototype chain:refer-global + :only, :require-globalcljs.proxy, experimental namespace for efficient interop:lite-mode and :elide-to-string, new experimental compiler flags for smaller artifactsgoog.object/containsKey returns any, not booleanunusedPrivateMembers:preloadsjs as an ns(set! a -x false) doesn't workrequire instead of load for cljs.vendor.bridge, addresses issue
reported by Bruce Hauman wrt. Figwheel@firebase/authgoogv202108080.0-20211011-0726fdebdefault-dispatch-val and dispatch-fnsatisfies? produces an inference warning when given an unhinted argument:nodejs-rt to the list of build affecting options:nodejs instead of :nodejs-rtnpm or yarn for their dep toolapply vector with array acts as vecset and vec performance enhancementscat specs should verify value is sequential((not empty?) "foo") when compiled with no optimizations:kind map?cljs.main repl with :modules results in brepl_deps.js being clojure.lang.LazySeqremove-taprequiredcompile-str doesn't handle clojure -> cljs aliasingnode-module-dep? function in analyze-depsmain if aliased in browser fieldexport from correctly"browser" field for Closure if target is :nodejsmain when it doesn't have an extension@cljs-oss/module-deps to be installed to figure out Node.js dep graphset-loaded! on the user's behalfmodule fieldindex-node-modules-dir can't determine :main for package.json files that have . in the stringrequire prints result of loading node deps / global exportsout in the current directory:module-type for provided node_modules:rename for JS modulesnode_modules installation through a new :node-modules compiler flagns-publics and ns-imports:modules with whitespace optimizations:file-min when processing JS modules with advanced optimizations:target :nodejs to the docstrings in cljs.jslein test:npm-deps not specified:provides if file ends in index.js:libs directory is provided.:npm-depsnpm install when :npm-deps in Windows:fn-invoke-direct to public API docstringsstr in munge/demungeclojure.spec.alphaclojure -> cljs aliasing doesn't work when loading macro namespacesdefmacro should return the Varfind-ns-obj broken for namespaces with 'a' as the first segmentrealized? throws on LazyTransformer:npm-deps in upstream deps.cljsfind on an associative collection does not return collection keyindex-node-modules should pass opts to node-inputs:target :nodejs and no optimizations requires a :main option to be presentcljs.compiler/cljs-files-in shouldn't return .cljc files if a .cljs file exists for the namespacecljs.compiler/cljs-files-in shouldn't return .cljc files if a .cljs file exists for the namespacejs interop formcljs.pprint's macros can't be compiledgoog.require calls for foreign libs if optimizations different than :nonecljs.env.macros and cljs.analyzer.macros can't be loaded:closure-warnings compiler optiondata_readers.cljc:cache-analysis true and cache-analysis-format nil:merge hack for REPLsnew and dot forms must be passed a symbolsome? over (not (nil? %)) in analyzer:compiler-stats is trueclojure.core/load:rename to require's docstring:reload and reload-allfalse under simple optimizationsadd-preloads should only touch sources if :preloads option specifiedcljs.repl to their new definitions in cljs.coreintons* callscljs.user.fileXXXXget with nil returns as if get with 0.cljs files with .cljc files if both are presentcljs.core throws a compiler error instead of warningcljs.spec.impl.gen/double*clojure.spec/assert over to ClojureScriptuse special function in REPLsrefer-clojure special function in REPLsspecify! in JS prototypes with static-fns truecljs.reader/read-map now returns array-map/hash-map based on the size of the sequence.list evaluation orderspecifytype and instance? behaviorconstructor needs to munged if used as namespace segmentThis is a breaking change for tooling libraries like lein-cljsbuild, lein-figwheel, and boot-cljs. Refer to the corresponding documentation to determine which version you should use.
newline to match Clojurefind-classpath-lib mistakenly included in generated source:need-prompt prompt instead of :need-prompt need-promptcljs.repl/pstcljs.repl/apropos, cljs.repl/find-doc, cljs.repl/dircljs.analyzer.api/all-ns docstringcljs.analyzer.api/ns-publicsget support to take additional not-found parametercljs.js-deps/goog-resource hackgoog.global when COMPILED is true, this fixes the fundamental issues for ASYNC-110cljs.closure/watch so it correctly watches all subdirectories do not recompile unless changed path is a file with .cljs or .js extensioncljs.closure/watch watcher using java.nio'cljs.core/unquotecljs.util/compiled-by-version needs to always return Stringjs-debugger macro, compiles to "debugger;"partial, copy & pasted from Clojure core.cljcljs.nodejs/enable-util-print!, incorrectly monkey patched cjls.core/string-print instead of setting cljs.core/*print-fn*update from Clojure 1.7sequence when given multiple collections