Fork me on GitHub
#clojurescript
<
2015-09-03
>
tel00:09:46

bhauman: trying now simple_smile

tel00:09:02

bhauman: I can’t land on the overflow in the new version

tel00:09:16

I didn’t have a perfect repro before, so it’s imperfect evidence

tel00:09:20

but still good stuff!

thosmos03:09:32

has anyone built clojurescript with the latest google closure that can handle UMD modules? (https://github.com/google/closure-compiler/commit/aa0a99cf380b05b2185156735d023b6fa78ec4ac) I tried building the latest clojurescript, but the part about bootstrapping with the latest of google closure didn't work. maybe I'm doing it wrong.

ricardo11:09:34

Upgrading to ClojureScript 1.7.122 seems to have broken figwheel 0.3.7/0.3.8. I get a not required: (“/applicationname/core.js”) when the main cljs source is modified. It’s all fine with 1.7.107. Anyone else?

dnolen11:09:27

@ricardo: when reporting errors it’s usually more useful to give complete stack traces and describe whether they are in the browser or happened during compilation. If it’s the case there isn’t a stack trace then say so simple_smile

ricardo11:09:30

@dnolen: Haven’t reported it since I’m not sure if it’s an error or a known incompatibility. It’s also not an exception - just figwheel reporting that it doesn’t need to load a file after rebuild since it doesn’t believe it was required.

ricardo11:09:45

Which is odd, given it’s the main ns.

ricardo11:09:34

Similar to this: https://github.com/bhauman/lein-figwheel/issues/202 Only that in that issue report, it was a case of the namespace not having been required on core.

dnolen11:09:11

@ricardo not talking about reporting, just that more information is a good thing, and I see people consistently just say “it doesn’t work”. when reporting problems report more not less information simple_smile

martinklepsch11:09:34

@dnolen: any schedule for updating closure-library?

martinklepsch11:09:10

@dnolen: ignore , seeing you just bumped it simple_smile

dnolen11:09:10

@ricardo: I looked back at the ClojureScript change log and I don’t see anything obvious. One change that broke some people unintentionally was making clojure.string/replace match Clojure’s version.

dnolen11:09:32

@martinklepsch: bumped the compiler, do you also need a library bump?

ricardo11:09:34

@dnolen: Understood. In this case, that’s all the information so far. figwheel just doesn’t re-load the main namespace if I’m using ClojureScript 1.7.122, reporting it’s “not required”.

martinklepsch11:09:59

@dnolen: uh, yeah. actually library was the more relevant part

martinklepsch11:09:17

They added file upload progress events simple_smile

dnolen11:09:20

@martinklepsch: is there some recent change you want?

dnolen11:09:30

@martinklepsch: cutting a release of GCL now and will release to Maven today.

martinklepsch11:09:40

@dnolen: btw, did you see the @-mentions on github? Is that a valid way to ping you about such stuff?

dnolen11:09:44

you can use that immediately, will bump ClojureScript’s dep too.

dnolen11:09:30

@martinklepsch: I always check my @-mentions, I’m also always logged into IRC on my phone and I get pings there.

martinklepsch11:09:06

ok, wasn’t sure if you got the github ones simple_smile

conan11:09:35

I often have a problem compiling clojurescript on windows. I get

java.lang.IllegalArgumentException: character to be escaped is missing
 at java.util.regex.Matcher.appendReplacement (:-1)
I'm currently experiencing this with the cljs-ajax library, but someone else has found it in chord (https://github.com/jarohen/chord/issues/43). I suspect it's a Windows problem. The problem goes away with :optimizations :whitespace instead of :none, but that's no good for figwheel. Seems to be fixed in current pre-release versions.

dnolen11:09:41

@martinklepsch: GCL releases going out

dnolen11:09:58

I don’t check GitHub mentions as much because I’m on too many rando threads

martinklepsch11:09:02

@dnolen: ok, good to know, thanks!

martinklepsch11:09:11

@dnolen: GCL is going to maven central right?

bhauman13:09:29

@ricardo I'm going to look into your issue in a few minutes

ricardo14:09:22

@bhauman: Sure, I’m around, let me know if I can help.

bhauman14:09:25

@ricardo: in the meantime you might want to annotate your main namespace with ^:figwheel-always and restart the build process

ricardo14:09:40

Will do as soon as I wrap something.

shaun-mahood14:09:33

@conan: Are you trying to compile the cljs-ajax library from source, or is it part of the project you are trying to compile? I can see if I run into any problems on my Windows setup.

conan14:09:04

It's part of the project I'm trying to compile, I've just used it as a dependency in the normal way.

conan14:09:53

I wouldn't worry about it too much, having tried the latest pre-release version of clojurescript I don't experience the problem, so it's presumably been fixed.

shaun-mahood14:09:11

Oh yeah, the newer versions fixed a different Windows problem for me

conan14:09:12

It's also possible to get round it by downgrading to an earlier version of clojurescript.

conan14:09:28

1.7.48 was the problem for me.

conan14:09:27

of course, my figwheel isn't working at all at the moment, which is a much bigger problem! figwheel on windows is pretty much a lost cause at the moment unfortunately.

shaun-mahood14:09:33

@conan: How so? I've been running on figwheel for months without any problems, running on the newest release candidate right now with no issues

bhauman14:09:42

@ricardo: can't seem to reproduce with cljs 1.7.122. Please try 0.3.9-SNAPSHOT and see if you still have the problem.

ricardo14:09:58

Will do, I’ll ping you in a few.

bhauman14:09:54

@ricardo: one thing to check in the dev console is figwheel.client.file_reloading.provided_QMARK_('example.core') (with your ns of course) and see if it returns true

ricardo14:09:11

Let me stash these changes, clean and check.

ricardo15:09:36

@bhauman: Don’t get it with 0.3.9-SNAPSHOT.

bhauman15:09:46

@ricardo: cool, I wasn't able to reproduce it

ricardo15:09:09

I can try and corral it a bit more with 0.3.7 later, but I guess it’s good that it seems to have been something peculiar here.

bhauman15:09:56

@ricardo: yeah just let me know if it comes up again.

conan15:09:59

@shaun-mahood: about once a month i hit a breaking problem in windows. currently it's not printing any compilation output to the console (despite compiling the files), and the browser can't reload changed files so i have to refresh the page. this same configuration works as-is for my colleagues when checked out from git on osx or linux. that's the general story i find: what works for others doesn't work on windows. if i start a project myself on windows then it's fine, but as soon as a user of another OS gets involved, things start breaking for me.

conan15:09:00

sadly there is no useful output ever, so it's very difficult to debug. i generally fire up a VM and run it in linux, because the time taken to constantly fix things on windows is too great.

conan15:09:43

don't get me wrong - it's an extremely powerful tool trying (mainly successfully) to do a lot of awesome stuff - but that complexity makes it difficult to fix when it breaks.

shaun-mahood15:09:35

@conan: Strange. I know for my projects I'm the only developer and it is all Windows, so maybe that's where the problem is. If you ever run into any problems that you can share, let me know and I will be happy to test them on my machine and dig in to them a bit.

conan15:09:51

thanks, i'll probably do that!

martinklepsch18:09:47

Anyone knowing how to write a schema for “a set of strings” with th-ing/validate (https://github.com/thi-ng/validate/blob/master/src/cljx/thi/ng/validate/core.cljx) ?

tel18:09:21

Can macros in Clojure write out cljc? I’d like to write a macro which expands to a match expression that can be used in clojure and clojurescript code

tel18:09:52

so I can write the macro in a clj file… but it needs to expand to cljc syntax or something like that

tel18:09:05

to select the right kind of match to continue expanding

dnolen18:09:18

@tel no reader conditional are read time only

tel18:09:39

yeah, that’s what I thought

tel18:09:52

any way to solve that kind of situation?

tel18:09:25

the macro itself needs to know whether its expanding as a clojure file or a clojurescript one

tel18:09:53

is there a way to detect that dynamically at macroexpand time?

martinklepsch18:09:23

Found it: {:notifications {:* (v/string)}}

dnolen19:09:15

@tel there is no good way to do that, only a variety of work arounds

tel19:09:36

huh, that’s a bit disappointing

tel19:09:19

it feels like it’d be sufficient if there was just a runtime global flag like *destination*

tel19:09:31

available at macroexpand time

dnolen19:09:31

it would be nice to have, but it’s not particularly important in my opinion

dnolen19:09:52

that said something may appear down the line

tel19:09:39

probably not.. it’s likely a relatively rare use case—but a significant detractor from cross platform macro use

dnolen19:09:09

macros are awesome - but less of them is also awesome

tel19:09:43

ha, sure

bhauman19:09:15

@tel: you said that ^:figwheel-no-load wasn't working for you is that still the case?

tel19:09:37

I saw it happen one time but couldn’t reproduce it

bhauman19:09:56

alright that is good enough for me simple_smile

tel19:09:00

this was at the same time I was on 3.7 and facing issues with interaction between weasel and figwheel

tel19:09:08

so shrug

martinklepsch20:09:14

With module support in cljs will we be able to use native :require in node instead of (def fs (js/require "fs”)) ?

tmarble20:09:16

ETOOMANYANDREWS

tmarble20:09:35

do you know if such a ticket has been opened yet?

andrewhr20:09:33

funny because my name is kind of rare here in Brazil... anyway, about the CLJS

andrewhr20:09:27

I though that some issue existed, but after talking a bit with @clojuregeek I believe it was a mistake from my part... so no, no ticket AFAIK

andrewhr20:09:37

and... bom dia! simple_smile

tmarble20:09:02

I will make a ticket then.. obrigado simple_smile

andrewhr20:09:30

de nada, aka, welcome! simple_smile

andrewhr20:09:41

if you need something, just ping me! o/

domkm21:09:15

I'm getting a warning WARNING: Use of undeclared Var domkm.silk.pattern/*assert* but it looks like ClojureScript defines *assert* (https://github.com/clojure/clojurescript/blob/1b7390450243693d0b24e8d3ad085c6da4eef204/src/main/cljs/cljs/core.cljs#L39-L41) What's going on?

domkm21:09:19

Scratch that. Seems to be resolved in 1.7.122

tel22:09:21

can you set protocols on js function types?

tel22:09:46

js/Function?

bhauman22:09:19

I'm wondering what graphing utilities folks are using?

meow22:09:14

@bhauman: What kind of graphing?

meow22:09:17

Like visual graphs and charts, or graph theory?

domkm23:09:28

@tel: Use the lowercase name for adding protocols to native JS types. function instead of js/Function

tel23:09:43

ah, nice!

tel23:09:50

worked like a charm