This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2016-02-20
Channels
- # admin-announcements (1)
- # beginners (17)
- # boot (22)
- # cider (43)
- # cljs-dev (6)
- # cljsjs (2)
- # clojure (29)
- # clojure-austin (7)
- # clojure-estonia (1)
- # clojure-russia (62)
- # clojure-sg (1)
- # clojurebridge (2)
- # clojured (1)
- # clojurescript (89)
- # datomic (8)
- # hoplon (333)
- # jobs (3)
- # ldnclj (2)
- # leiningen (10)
- # luminus (1)
- # off-topic (9)
- # om (46)
- # proton (4)
- # re-frame (13)
- # reagent (29)
- # yada (11)
have you guys had any problem including a specific version of a lib with cljsbuild
?
in my case is tools.reader 1.0.0-alpha3
@richiardiandrea: pasting your lein deps :tree
might help
what's the problem you're having?
it is huge, i posted an issue -> https://github.com/emezeske/lein-cljsbuild/issues/439
because lein deps :tree
looks fine, only one dep (grepping)
weird. I think I had some problems with cljsbuild wrt to dependencies too but I haven't used it in a while
and I don't remember what it was or how I solved it
sorry for not being able to help
Yeah today I tried to build with a script but had hard time with that too, especially for a big dep tree
Oh don't say sorry man, thanks a lot 😉
lein classpath
helps a bit (i saw a neat trick in planck) but i was still missing something, the error is in cljs-dev and I kind of gave up
@jaredly: is there a version of https://jaredforsyth.com/reepl/ that runs through https://github.com/swannodette/lt-cljs-tutorial? i feel like i saw that at some point but can’t find it anywhere. maybe i’m going crazy
Wait. @jaredly that tutorial uses reepl instead of light table? Or something else?
Iiinteresting. I didn't know about reepl
@jaredly: I find that 1280 pixels isn't wide enough to show the whole tutorial and reepl
in fact, when I opened it with my preferred browser width (which is a little less than 1280), I couldn't see the reepl part at all
:// yeah some recent updates to the way flexbox works looks like it’s broken the rendering
ok. also the reepl page itself -- on my phone I could see that it had options for vim and parinfer and something else, but I can't see those on my computer even by scrolling
in chrome os x 10.9 (I know, old OS). in safari it's fine
is it possible to require
an npm module but use it in the browser, like how it’s done in webpack and browserify?
anyone using re-frame? I have the weirdest issue at the moment... I store a map in my global atom that has a vec-field. like this : {:foos ["foo" "moo" "boo"]}
. Now, when I update this field (via assoc
) with a map that has a different value for :foos
, some of the values in the vec suddenly become nil
, even though they have a value in the passed-in map. The update happens in a handler and I can see the nil
s in the output of the debug
middleware
@jbaiter: I'd need to see some code also, what makes you think that this has anything to do with re-frame ?
@val_waeselynck: i think it could be a bug in the debug
middleware. When I inspect the actual data in the atom, there are no nil
s, it's just the logging output
hey I've got the stupidest bug that I just can't see: I'm doseqing over a lazy seq for side-effects, and if I println that seq before the doseq it prints one sequence, but if I println each element within the doseq, the above println prints a different sequence!
(this is in Chrome btw, and I'm printlning the time also, and the messages are sequential, if that's relevant)
@octo221: perhaps statefulness with the way the elements in the lazy sequence are realized?
@mfikes: how so ? how can I test for that ? The sequence is a sorted lazy seq of MapEntries (sort-by val mymap)
oh! I should add, it does not do it if I use a test sequence that's just a vector
@octo221: Just a guess at the root cause. Can you provide a minimal example in a gist?
yep...
- the actual code is longer and contains a lot of canvas drawing but I simplified it, it still does it
@octo221: you could probably get away with run!
which is not lazy?
@octo221: I’d suggest a gist that is actually runnable. Meaning involving forms that can be evaluated in a REPL.
hey but anyway aren't lazy sequences supposed to output the exact same sequence regardless of what forms use their elements ?
@octo221: I’d be suspicious if the lazy sequence elements themselves involve side effects that could affect their own generation
the elements of the sequence are MapEntrys which are keywords and doubles
and the only side-effects are canvas draws (or printlns)
can't see how reading these elements could possibly affect the sequence they come from
and I thought the point of immutable data was that this sort of thing was impossible!
@octo221: Since reasoning about lazy sequences can be difficult, a minimal example that exhibits the issue helps
working on it...
Anyone using duct/component/figwheel/emacs/windows? I'm having a devil of a time either getting hawk to do automatic code reloading using figwheel-component OR getting a separate CLJS repl under cider.
(I can get a cljs repl running within the main cider repl, but it gives an exception at every entry, plus I have to exit it to (reset) the system under the main repl since automatic code reloading is borked)
hi guys, does anyone know why when I use google closure html5 history lib, setToken does set the whole path with params but when I getToken, it doesn't include params
@nxqd: same issue here, a while ago I couldn't get anything out of getToken but a ""
tried a lot of things, but none worked...
@anmonteiro: may be you do know something about this ?
hi guys, does anyone know why when I use google closure html5 history lib, setToken does set the whole path with params but when I getToken, it doesn't include params
@nxqd: I don't
@iwankaramazow: I just debug the lib and found out that it returns the location.pathname by default. In order to return the full path with parameter ( window.location.search
) we need to implement custom transformer
goog.history.Html5History.prototype.getToken = function() {
if (this.useFragment_) {
return goog.asserts.assertString(this.getFragment_());
} else {
return this.transformer_ ?
this.transformer_.retrieveToken(
this.pathPrefix_, this.window_.location) :
this.window_.location.pathname.substr(this.pathPrefix_.length);
}
};
@nxqd: I tried implementing a custom transformer, but I probably screwed that up 😄 😄
@nxqd: If you got it working, could you show me some code?
@iwankaramazow: https://github.com/circleci/frontend/blob/0f21f13ade60d16ce6f030d8448f65b0c2cfddad/src-cljs/frontend/history.cljs#L18-L31
Thanks! 🙏
has anyone else ever run into this problem? when i run lein cljsbuild once a-build
, i just see "Compiling ClojureScript..." and no other output, and nothing is compiled
i think this has happened on every toy project i've ever worked on - maybe an issue with my laptop's leiningen or something?
just throwing this out there in case someone else has seen this behavior and knows the cause off the top of their head
https://github.com/jrheard/mortgage/blob/master/project.clj example project.clj
i can usually work around the issue by doing lein cljsbuild auto a-build
and making a whitespace change, but it feels bad to do i'm sure i must be doing something wrong
@anmonteiro: if you like drama, it looks like my profile.clj
is interfering with lein cljsbuild
and injects a wrong version of tools.reader
is there way to get a backtrace from the closure compiler? I'm currently tryring to uberjar
my project and the google closure compiler complains that it can't create an ISeq from a keyword, but I have no clue where in my code the line that causes it is
I think you can run lein without a profile by specifying -
?
oh yes, this is a solution, but but but...unexpected
@anmonteiro: boot
has pod isolation that is why I am openly switching all my projects to it ...just better for my use case...also, my project.clj
is getting big -> https://github.com/Lambda-X/replumb/blob/tools-reader-bug/project.clj
so does Boot solve your immediate problems?
and makes your configuration smaller?
both 😄