Clojurians
#cljs-dev
<
2017-05-06
>

This page is not created by, affiliated with, or supported by Slack Technologies, Inc.

vikeri09:05:22

dnolen: In my macro I call a function say my.ns/myfn and then I use that macro in my.ns2 on which my.ns depends without noticing it. First the compiler will complain that my.ns does not exist in my.ns2. I then require it at the top. Then I've created a circular dependency but I never call a function in my.ns explicitly in my.ns2 but only through the macro. This circular dependency was not picked up by the compiler when compiling in parallel. Instead the compilation just deadlocks and I have to kill the process. Not sure if it's clearer now? Would like to create a minimal reproduceable version of it but I'm quite swamped with work so atm I don't have time unfortunately.

dnolen17:05:21

right but this isn’t supported anyway

dnolen17:05:32

remove the circular dependency

rauh17:05:08

I'd like to propose to add the following compiler option:

(when-let [rewrite-polyfills (:rewrite-polyfills opts)]
    (.setRewritePolyfills compiler-options rewrite-polyfills))

rauh17:05:45

With :language-in :es6 that'd make GCC generate polyfills.

rauh17:05:05

It's also the default for the command line version, though not for us when using the API.

rauh17:05:22

Allows me to use native Promises etc...

anmonteiro18:05:05

sounds good to me

rauh18:05:24

The option is silently ignored when not :es6 so a warning might be a good idea.

rauh18:05:29

Another proposal:

(:ecmascript-2017)                CompilerOptions$LanguageMode/ECMASCRIPT_2017
    (:ecmascript-next)                CompilerOptions$LanguageMode/ECMASCRIPT_NEXT

richiardiandrea19:05:39

Would this allow generating es6 jvascript from Google closure compiler? That is what I am after as well

anmonteiro19:05:31

I don’t think that’s the case

richiardiandrea19:05:37

Es6 is a non-goal