This page logs work being done under Clojurists Together Q2 2018 Funding Round towards the ClojureScript project. High level progress reports will be published formally with Clojurists Together, but you can follow here if you are interested in low-level details, progress notes, etc.
The concrete themes identified include:
- Fixing CLJS-2702, which prevents us from upgrading to newer versions of Closure Library.
- Work on highly voted ClojureScript tickets. Please take some time and vote in this list of tickets in need of patches.
- Work on issues related to NPM dependency management. (In particular NPM issues in the list above will be given extra emphasis).
Candidate patch attached to CLJS-2702.
Developed patch in CLJS-2724, allowing use of native Node modules in scripts run via
Developed patch in CLJS-2739, which improves
node_modules indexing performance 6×.
Sorted out a follow-on issue with CLJS-2702 (testing with latest Closure Library), and attached a patch in CLJS-2751.
Started looking into CLJS-1871.
Started looking into CLJS-2369.
Submitted a patch in CLJS-2298, which causes REPLs to load an user-defined
Rebaselined patch in CLJS-2651, and it was subsequently applied. This means that Git Deps works in the Shared AOT Cache feature.
Resolved CLJS-2369. (It turned out to be a valid problem with ClojureScript 1.9.946, but no longer reproducible with 1.10.238.)
Further investigated CLJS-1871 and found that we are already getting what is desired in that ticket owing to the double analysis of
cljs.core that occurs when building the compiler, along with CLJS-1992. Also sorted out alternate var meta that achieves the desired effect. Now an open question as to how we proceed given this info.
Found that CLJS-2440 is not reproducible.
Added a patch to CLJS-1677, which lets us explicitly require
ns forms and have things work under
Supplied a patch that makes it possible to generate values satisfying
Began looking into
:npm-deps issue CLJS-2757.
Landed patch in CLJS-1871, which allows static dispatch to declared functions when hinted with
:arglists meta. A bonus side effect is that it helps catch arity errors for calls to declared functions.
Submitted patch in CLJS-2766, which is a self-host regression surrounding revisions to the
Looked into CLJS-2770, an odd issue reported with Rhino in
Submitted CLJS-2769 (which has been landed on master). This makes it possible to run the self-hosts tests with the very latest Google Closure Library code.
Did some work on CLJS-2748.
Developed a patch in CLJS-2775, a corner case with
Developed a fix for an issue that prevented async test result reporting from properly occuring with the Node REPL (CLJS-2780).
Added a patch in CLJS-2442, which speeds things up when applying
set to a set and
vec to a vector.
Added a patch in CLJS-2790 which fixes spurious inference warnings when using
defrecord with fields.
Took a look into CLJS-2341, an issue with using CraftyJS—a library targeting the browser—directly as an NPM dependency.
Submitted patch in CLJS-2693 (chunked-seq for range).
Investigated CLJS-2796, tracing it to a potential Closure Compiler regression.
CLJS-2802, which lets
empty? work on transient collections.
CLJS-1702 warning when using private vars
CLJS-1997 Outward function type hint propagation
CLJS-2811 cljs-1537-circular-deps fail on Windows
IPrintWithWriter for native types
CLJS-2813 Java serializability of
CLJS-2817 private var warnings when
fdef on private vars
CLJS-2819 warn non-dynamic earmuffed vars
CLJS-2806 update to latest
CLJS-2821 update docstring for
doto to use
Looked into CLJS-2793, an issue with specing variadic fns.
CLJS-2822 port an upstream change in
Did some work on a
graaljs REPL env.
CLJS-2382 bad code gen surrounding application of
not in operator position
CLJS-2833 Update to Closure Compiler v20180716
binding not made in parallel
CLJS-2825 Eliminate unnecessary
cat specs should verify value is sequential
s/& does not check preds if regex matches empty collection
(and many other spec-related tickets to bring things up-to-date)
CLJS-2725 Doc on spec keywords
CLJS-2852 Clojure imparity: ns-publics returns different arglists for macros