Fork me on GitHub
#cljs-dev
<
2015-11-04
>
dnolen00:11:58

@anmonteiro: I fixed your permissions in JIRA, you should be able edit tickets now

dnolen01:11:07

@bhauman you’re not still using ns-dependents are you? It’s going away - there’s just too many problems with it in larger projects

bhauman01:11:46

@dnolen I stopped doing it server side, I use the dependency graph on the client side

dnolen01:11:12

@bhauman you mean the Google Closure stuff right?

dnolen01:11:20

I’m talking about the compiler stuff

dnolen01:11:25

ok yeah that stuff isn’t changing

dnolen01:11:30

k killing ns-dependents

dnolen01:11:48

should mean much faster build in complex projects and more sensible behavior all around

bhauman01:11:26

Yeah I'm expecting to see some of the strangeness dissappear

dnolen01:11:35

ok so people should try master on their projects

dnolen01:11:46

if we don’t hear any bad news this thing is going out on Friday

dnolen01:11:33

actually just try the prelease should hit Maven shortly

mikethompson03:11:14

1.7.166 not working here

mikethompson03:11:13

Note: this is on Windows &lt;---

mikethompson03:11:46

This same project compiles fine under 1.7.145 (albeit slowly)

dnolen03:11:33

@mikethompson: thanks for the check, will look into that probably something simple around paths

dnolen03:11:22

@mikepence: actually I don’t think this is a Windows thing

dnolen04:11:54

@mikethompson: I would install from master and verify the issue still exists

dnolen04:11:16

the List & Vectors cases were not being handled and your error looks the type of thing that occurs when you have missing methods

mikethompson04:11:50

@dnolen: I'm stuck on the "install from master" instruction. Haven't done it before. Is it like a clojurescript library .... (1) checkout git repo? (2) lein install ?

dnolen04:11:12

you can of course ignore the bits about patches

dnolen04:11:18

just run script/build

mikethompson04:11:22

script/build is a shellscript (I'm on Windows)

dnolen04:11:27

and note the version number

dnolen04:11:41

ah right yeah can’t help further here

dnolen04:11:04

either need to setup a bash env - or someone needs to port the build script to Windows

dnolen05:11:55

hrm I thought this was reasonable https://git-for-windows.github.io

dnolen05:11:01

been a while a since I tried it though

mikethompson05:11:11

I'll try but it will be quite a bit later tonight.

juhoteperi07:11:53

@dnolen: Great job with killing topo-sort and implementing find-sources for list&vector!

juhoteperi07:11:09

@dnolen: However, I am seeing a problem with require-compilation?: cljs.core is marked recompiled in each build and everything requires that, so everything is recompiled always

juhoteperi07:11:21

Simplest fix would be to never add cljs.core to *recompiled*

anmonteiro11:11:04

@dnolen: not sure if i'm doing something wrong, but still not seeing any edit button

dnolen12:11:48

@juhoteperi: hrm I tested this yesterday and I didn’t see that behavior

dnolen12:11:03

@anmonteiro: should be fixed now

dnolen12:11:43

@juhoteperi: what optimization setting?

dnolen12:11:12

@juhoteperi: yeah I specifically tested that one

dnolen12:11:38

when using both watch and build I saw the correct incremental compilation

dnolen12:11:01

this was with the cljs.jar uberjar

juhoteperi12:11:19

@dnolen: Sorry for noise, seems to be boot-cljs specific

dnolen12:11:15

@juhoteperi: let me know if it’s not or if something about the changes makes fixing it for boot-cljs challenging

juhoteperi13:11:36

For some reason cljs/core.js.map doesn't get written by boot-cljs and requires-compilation will recompile ns if source-map doesn't exist

martinklepsch13:11:48

@juhoteperi: how are you seeing that it doesn’t get written?

juhoteperi13:11:30

By lookin at the output dir

martinklepsch13:11:46

I currently use boot-cljs 1.7.48-6 and 1.7.166 and there is a target/app.out/cljs/core.js.map

martinklepsch13:11:47

@juhoteperi: also in the tmp-dir passed as output-dir

juhoteperi13:11:00

@martinklepsch: Check latest boot-cljs master, I removed the old workaround

martinklepsch13:11:09

@juhoteperi: hm. I just pulled, build-jard and updated my build.boot and the js.map file is still being created in target as well as output-dir — I’m not sure if any of this is helpful, let me know if it isnt simple_smile

juhoteperi13:11:43

@martinklepsch: Are re compilations also fast for you?

martinklepsch13:11:57

~650ms for 20lines of cljs with om.next dependency

juhoteperi13:11:49

@martinklepsch: I think I would the problem. Boot-cljs sets :source-map to true with :optimization :none, as it should. But if :optimization is not set boot-cljs sets :source-map to source map file name which is only correct for advanced builds.

juhoteperi13:11:57

If you have set optimization none, it works fine.

martinklepsch13:11:24

let me try without any settings

mikethompson13:11:17

@dnolen: I just tried, but failed, to run script/build (under Windows) via git bash. Some failure to do with moving files about. I think I'm going to have to wait for the next release before I can test again.

martinklepsch13:11:02

@juhoteperi: hm. I just tried running bare boot watch cljs and the .js.map file is still being created, no task options specified

dnolen13:11:03

@mikethompson: ok, the right solution in the long term is for people submit Windows build scripts

dnolen13:11:31

most of the build scripts are ridiculously simple and this would be a big improvement for a growing number of users

dnolen13:11:26

this said, your issue looked like a protocol problem, not a Windows specific thing

mikethompson13:11:01

I can see what you mean about the build script being simple

dnolen13:11:08

yes somebody already submitted the hard one - the bootstrap PowerShell one

mikethompson13:11:33

Okay, in the meantime, I'll get one of my linux guys to try and replicate our issue on 1.7.166 and then try master. Will report back but not now until tomorrow (midnight here now)

dnolen13:11:03

cool, no rush, still shooting for Friday release & announcement

rohit13:11:46

@dnolen, I am also experiencing the same issue as @mikethompson with 1.7.166 release on OS X. creating a minimal case for it.

dnolen13:11:11

@rohit: we don’t need another report of the same issue

dnolen13:11:25

@rohit: install master and test that instead

rohit13:11:46

@dnolen: I’ll do that. Thanks!

dnolen13:11:07

as I said above, the error showed it didn’t really have anything to do with Windows

dnolen13:11:37

and I’m pretty sure I addressed it when wrapping up another issue

rohit13:11:14

I did the build from master. It installed cljs v1.7.169 and I am still experiencing the same error.

juhoteperi13:11:41

@martinklepsch: Try enabling source-maps without explicitly setting optmizations

martinklepsch13:11:43

@juhoteperi: that’s it! super slow compilation, no js.map file

dnolen13:11:06

@rohit: then make a minimal case. That means nothing involving 3rd party stuff - only the cljs.jar uberjar

dnolen13:11:21

if you can’t reproduce in this way then you will need to determine what interaction with the 3rd party thing is causing your problem and likely report it elsewhere.

rohit13:11:05

@dnolen, sure. i suspect the issue maybe in lein-cljsbuild by looking at the stacktrace

dnolen13:11:57

@rohit yes I think cljsbuild supplies a custom Compilable and this has changed

juhoteperi13:11:35

@rohit: Try cljsbuild 1.1.1-SNAPSHOT

rohit14:11:24

@juhoteperi, that fixed it. Thanks! 👍 🙏:skin-tone-4:

rohit14:11:45

for anyone else following the issue, you also need to use figwheel v0.5.0-SNAPSHOT

dnolen14:11:47

yes you’ll definitely need to upgrade your tooling for this release

rohit14:11:12

@dnolen, thanks a lot for your patience!

mikethompson22:11:17

@dnolen: confirming that our project compiles with 1.7.166 (on Windows), now we have switched to the latest versions of tooling. Compile times:

17.145:  829 secs       (old)
1.7.166: 69 secs        (new)
There is much rejoicing here. Compile times were really starting to be a problem.