This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2017-03-06
Channels
- # architecture (25)
- # bangalore-clj (1)
- # beginners (21)
- # boot (45)
- # cljs-dev (38)
- # clojure (272)
- # clojure-austin (7)
- # clojure-finland (7)
- # clojure-france (3)
- # clojure-italy (7)
- # clojure-japan (1)
- # clojure-russia (13)
- # clojure-spec (36)
- # clojure-uk (31)
- # clojurescript (96)
- # core-async (15)
- # cursive (16)
- # datascript (3)
- # datomic (97)
- # emacs (107)
- # hoplon (16)
- # jobs (9)
- # keechma (1)
- # luminus (1)
- # off-topic (19)
- # om (39)
- # onyx (15)
- # pedestal (3)
- # planck (22)
- # protorepl (4)
- # re-frame (20)
- # reagent (3)
- # ring-swagger (25)
- # specter (26)
- # test-check (19)
- # testing (1)
- # untangled (381)
Could what Gradle does here be useful for ClojureScript? https://blog.gradle.org/incremental-compiler-avoidance
Compile avoidance avoids recompiling consuming namespaces if the public API of a function hasn't changed
@danielcompton to summarize the approach there: the compiler analyzes the exposed API (e.g. top level defs) and only recompiles dependents if the exposed (top-level) API has changed?
Yeah that's my understanding
And similarly for incremental recompiles, it only recompiles namespaces that a) depend on the changed namespace, and b) used part of the public API that changed
Seems like https://clojurescript.org/guides/javascript-modules does not works with deps.cljs
, is that expected?
I'm not clearly understand that you saying. I'm asking for use of :foreign-libs (with module transformations) from deps.cljs. I found that it works if I pass :foreign-libs
to the compiler, but raises an exception (like "src" is a directory) if I use the same options but from deps.cljs
@danielcompton that’s interesting but we might want to see what happens to spec first
I noticed a bug in cljs.test where we assume the output path for files to be in something /out/
, when this is not the case it fails to get the file name for the test report. https://github.com/clojure/clojurescript/blob/master/src/main/cljs/cljs/test.cljs#L379
I can put a ticket together and patch but thought I would post it here first.
I ran across this with a client that pushed their code to js/compiled
@ckirkendall patch welcome
cool I was thinking just pull the last two directories above the file if they exist.
since the full path seems problematic given we don’t know the starting point
I can also detect ‘/out/’ and leave the current behavior as is if it is detected.
@ckirkendall I don’t think that approach is desirable
you mean get the out location directly from compiler options?
yeah I have all ready noticed a few other issues with it also
I noticed that for most tests I never get any file other than cljs/test.js
async tests I get the actual file
all good I may get a chance this week to sit down and look at it.
will do