This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2020-06-02
Channels
- # announcements (37)
- # babashka (9)
- # beginners (172)
- # calva (7)
- # cestmeetup (28)
- # chlorine-clover (27)
- # clj-kondo (2)
- # cljs-dev (45)
- # cljsrn (8)
- # clojure (185)
- # clojure-dev (27)
- # clojure-europe (6)
- # clojure-finland (3)
- # clojure-nl (5)
- # clojure-uk (13)
- # clojuredesign-podcast (4)
- # clojurescript (54)
- # conjure (19)
- # core-typed (1)
- # cursive (40)
- # datomic (9)
- # emacs (5)
- # figwheel-main (34)
- # fulcro (238)
- # graphql (14)
- # hugsql (3)
- # leiningen (4)
- # malli (6)
- # off-topic (12)
- # pedestal (5)
- # portkey (19)
- # protorepl (8)
- # rdf (2)
- # re-frame (23)
- # reagent (3)
- # reitit (16)
- # shadow-cljs (29)
- # spacemacs (12)
- # sql (1)
- # xtdb (15)
Has anyone come across this kind of issue when trying to require an npm package ? The file is valid JS, but I guess it could be using some features that Google Closure doesn't support ?
Build failure:
Failed to inspect file
...\node_modules\prettier\index.js
it was required from
...\codemirror.cljs
Errors encountered while trying to parse file
...\node_modules\prettier\index.js
{:line 1, :column 1, :message "The file could not be parsed as JavaScript."}
RuntimeException: Exception parsing ".../node_modules/prettier/index.js"
com.google.javascript.jscomp.parsing.ParserRunner.parse (ParserRunner.java:155)
Did you install prettier?
Maybe reinstall it?
Or maybe it is not valid JavaScript.
@superstructor please always post the full errors. I can reproduce this and I get a closure compiler error. seems to be something in the file it doesn't like. not sure what.
IllegalArgumentException: Must call rewindTo before calling getSourcePosition for an earlier line (1298797 < 1300077)
com.google.common.base.Preconditions.checkArgument (Preconditions.java:300)
com.google.javascript.jscomp.parsing.parser.LineNumberScanner.getSourcePosition (LineNumberScanner.java:46)
com.google.javascript.jscomp.parsing.parser.LineNumberScanner.getSourceRange (LineNumberScanner.java:58)
com.google.javascript.jscomp.parsing.parser.Scanner.getTokenRange (Scanner.java:100)
Thanks for following it up @thheller :thumbsup: 🙂 and apologies for cutting the error output short.
no biggy. I know that those kind of errors mean internal closure compiler problems, just easier to guess which one with the full trace 🙂
are you including this in a browser build? the prettier package is pretty node focused so I wouldn't have much faith in it working in the browser
Yeah I was trying it in a browser build but I ended up trying js-beautify
for now which appears to work OK. Not a critical feature.
hello, doe's anyone here has an experience with devcards? I've finally made devcards "work" but I get no components rendered on the screen, all I see is the `devcards` title and clojurescript logo.. how do I tell devcards to render those cards I have?
@eliraz.kedmi if you setup a reproducible example I can take a look and see if its a setup issue. otherwise no clue about devcards.
I'm trying to add some custom reader tags to my cljs project. It works as expected by when recompilation is triggered by editing some file, I get the following error:
#copy :inclusion.home/inclusion-card-title
----------------^---------------------------------------------------------------
my_app/core.cljs [line 26, col 10] No reader function for tag copy.
Does any one have faced this problem.I added the require to my main-ns to gurantee that the tag is registered
I register the tag like this
(cljs.reader/register-tag-parser! 'copy (fn [kw] (copy kw)))
shadow-cljs does not support custom reader tags in source files and never will, unless someone can give me a really convincing reason. so far noone has.
there is literally no reason to ever use it in source code. absolutely fine and useful for data.
just call (copy :inclusion.home/inclusion-card-title)
directly instead of #copy :inclusion.home/inclusion-card-title
.
cljs.reader
is for reader tags in data parsed by cljs.reader
is is not for source code.
eg. (cljs.reader/read-string "#copy :foo")
is totally fine and you have total control over that
humm, I understand. It was a more stylistic choice than regarding any functionality. I'll use the function directly.