This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2020-05-04
Channels
- # announcements (25)
- # babashka (7)
- # beginners (52)
- # calva (29)
- # clara (1)
- # clj-kondo (4)
- # cljs-dev (55)
- # clojure (86)
- # clojure-europe (5)
- # clojure-finland (1)
- # clojure-france (1)
- # clojure-italy (1)
- # clojure-nl (1)
- # clojure-uk (57)
- # clojurescript (33)
- # conjure (107)
- # cursive (20)
- # datomic (37)
- # emacs (23)
- # events (13)
- # fulcro (67)
- # helix (73)
- # jobs-discuss (22)
- # lambdaisland (1)
- # leiningen (32)
- # malli (2)
- # meander (9)
- # mid-cities-meetup (1)
- # observability (1)
- # off-topic (14)
- # overtone (3)
- # pathom (39)
- # re-frame (22)
- # reagent (13)
- # reitit (13)
- # shadow-cljs (52)
- # sql (15)
- # tools-deps (29)
- # vim (11)
Ended up doing: (merge (read-string (shadow.resource/inline "dev.edn")) (process-env-map))
behind a DEV closure-define. Release just uses (process-env-map)
.
This means the actual configuration mapping doesn’t change between dev and release, which should help with “Works on my machine” issues 😉
I keep getting this warning (doesn't seem to break anything but is rather annoying). First line below is the warning, then my file directory, and my source paths
Invalid Filename, got cljs/foo/bar.cljs but expected foo/bar.cljs (or .cljc)
src
- cljc
- cljs
-- foo
--- bar.cljs (ns foo.bar)
:source-paths ["src/cljc" "src/cljs"]
Am I missing something? If not, is there a way to hide these particular warnings? They seem to just be warnings, hot reload works fine.Wondering if it’s supposed to be paths and not source-paths. And it’s defaulting to “src” which would explain the error
I depend on a package that depends on a specific version of react.js (stable). I would like to use experimental version of react.js which is a different version. Can I use :resolve for this?
Right, so I have 2 dependencies that use 2 different versions of react, I have 3 different versions of react installed, how can I tell which dependency to resolve which react version?
the problem for me is that helix expects react under the name react, and I would like to use a react version installed under a different name (alias), so that for other react libraries in the same build I could still provide react under a different name. in #helix I am told it's shadow-cljs's job, but I don't like to make tooling complicated. It's also a bit of an edge case, since it might be easier to just do a different build for different versions of react, I am not sure. Ideally I could share react component code without actually share React rendering contexts (so different apps using different react versions could use some share of application code)
then I don't understand your question. "Ideally I could share react component code" so you just have two different builds?
whats the problem though? usually react has been pretty decent with backwards compatibility so using a newer version with something that expects the old one just work?
https://claudiopro.github.io/react-fiber-vs-stack-demo/ would like to build this
but not the way it was done originally, because that's pointless, I figured I do it from cljs, it's a good exercise project.
well, originally I didn't want two builds, I figured I just alias and use it, but since I gave up for many reasons, some of which you pointed out now I would be fine with a single build to be honest, if it would work, I installed only the experimental react version and it's breaking, I am guessing it's because "experimental" but haven't had the time to actually debug this too. Maybe first I do it in javascript just to be sure it actually works before I start experimenting here too?
no clue what issue you are actually trying to solve here. nothing in the build config will allow you two include two different react versions for one build UNLESS you actually require a differently named version directly in your code
so (:require ["react-foobar" :as react])
or whatever will of course work but overriding :resolve
for react
will effect everything in the build
@jjttjj just released shadow-cljs version 2.8.110
that includes the updated CLJS release 1.10.758
that should fix the self-host issue you ran into
When I start a cljs repl with shadow.cljs.devtools.api/repl
and I enter any input I'm getting
ExceptionInfo: missing cljs.user, repl not properly configured (must have analyzed cljs.user by now)
Does that look familar at all?Seems to come from here: https://github.com/thheller/shadow-cljs/blob/022e1edab5908271992cda0d42300b4226c492ce/src/main/shadow/cljs/repl.clj#L500
Ok it seems things work when I remove the :repl-init-ns
option from my :devtools
map in shadow-cljs.edn
that question is weird. the externs are for the script you are including in your page. wouldn't make sense for them to provide externs for you and then minifiy to use different names
the "false" positive behavior of detecting properties that aren't actually from CLJS is a known problem