Fork me on GitHub
#cljs-dev
<
2017-09-20
>
richiardiandrea00:09:17

I have a problem with (cljs.spec.test.alpha/check 'my-ns) in self-host (`lumo`) and I was wondering if there is any known issue/not ported feature there

anmonteiro00:09:01

@richiardiandrea do you have test.check on your classpath

richiardiandrea00:09:41

yep org/clojure/test.check/0.10.0-alpha2/test.check-0.10.0-alpha2.jar

richiardiandrea00:09:11

but I tried with the 0.9.0 as well, I get a weird arity error

richiardiandrea00:09:47

Cannot read property 'cljs$core$IFn$_invoke$arity$1' of undefined
	 Function.cljs.spec.test.alpha$macros.check.cljs$core$IFn$_invoke$arity$4 (evalmachine.<anonymous>:733:94)
	 Function.cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$6 (NO_SOURCE_FILE <embedded>:774:131)
	 Function.cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$5 (NO_SOURCE_FILE <embedded>:773:205)
	 Function.cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$4 (NO_SOURCE_FILE <embedded>:772:199)
	 Function.cljs.core.apply.cljs$core$IFn$_invoke$arity$4 (NO_SOURCE_FILE <embedded>:785:297)
	 Object.cljs.analyzer.macroexpand_1_STAR_ (NO_SOURCE_FILE <embedded>:3136:105)
	 Object.cljs.analyzer.macroexpand_1 (NO_SOURCE_FILE <embedded>:3139:211)
	 Function.cljs.analyzer.analyze_seq.cljs$core$IFn$_invoke$arity$4 (NO_SOURCE_FILE <embedded>:3146:35)
	 Object.cljs.analyzer.analyze_form (NO_SOURCE_FILE <embedded>:3183:213)
	 Object.cljs.analyzer.analyze_STAR_ (NO_SOURCE_FILE <embedded>:3186:337)

anmonteiro00:09:08

0.9.0 is not self-host compat

richiardiandrea00:09:48

oh, so which version is it compatible?

richiardiandrea01:09:21

I mean 0.10.0-alpha2 should

richiardiandrea01:09:01

yeah exactly that problem going on, I need to dig

richiardiandrea04:09:11

so for the error above, I have a repro repo (@anmonteiro already knows it 馃槃). https://github.com/arichiardi/lumo-repros

richiardiandrea04:09:34

the customary scripts folder contains the launchers, and what fails is ./scripts/test basically, with the error above.

richiardiandrea04:09:15

I will try to dig as well, but it seems quite a feat for me in there, I will try my best

anmonteiro04:09:11

is this with 1.8 beta?

mfikes12:09:50

@darwin Having "nightly" Canary runs is awesome! By the way, the Planck Canary build failures coincide with a bona fide unresolved issue https://dev.clojure.org/jira/browse/CLJS-2365

dnolen14:09:57

@anmonteiro will check it out

mfikes15:09:20

I鈥檓 thinking about looking into whether it is possible to cleanly dissoc :def-emits-var in cljs.js when it is loading namespaces, which might lead to consistency between self-hosted and JVM, and essentially address the underlying issue behind CLJS-2365

anmonteiro15:09:11

^ would eliminate the hacks in Planck

mfikes15:09:20

Yes, I agree

anmonteiro15:09:34

I don鈥檛 see any downside

anmonteiro15:09:20

From what I understand, def-emits-var is only about getting #鈥檉oo to appear in the REPL

mfikes16:09:44

Indeed. There exists some mechanism in JVM ClojureScript where :def-emits-var doesn鈥檛 leak into the processing of required namespaces (my guess being fresh dynamic vars when compiling), and I suspect we are simply lacking that for self-hosted.