This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2023-02-10
Channels
- # announcements (6)
- # babashka (38)
- # beginners (85)
- # biff (3)
- # calva (2)
- # cider (11)
- # clerk (14)
- # clj-kondo (6)
- # clj-on-windows (27)
- # clj-together (2)
- # cljsrn (18)
- # clojure (106)
- # clojure-austin (1)
- # clojure-belgium (1)
- # clojure-europe (19)
- # clojure-nl (1)
- # clojure-norway (9)
- # clojure-uk (2)
- # clr (2)
- # cryogen (1)
- # cursive (10)
- # datahike (3)
- # datavis (2)
- # datomic (15)
- # emacs (7)
- # graalvm (10)
- # graphql (20)
- # gratitude (1)
- # hyperfiddle (1)
- # improve-getting-started (23)
- # joyride (24)
- # london-clojurians (1)
- # lsp (22)
- # malli (4)
- # matcher-combinators (3)
- # membrane (13)
- # off-topic (1)
- # pathom (24)
- # polylith (9)
- # react (31)
- # reagent (9)
- # releases (1)
- # remote-jobs (1)
- # reveal (3)
- # shadow-cljs (50)
- # spacemacs (3)
- # specter (5)
- # xtdb (5)
hi, I'm working with shadow-css and re-frame. I started adding some clj
files to my project so I added a deps.edn
and I am now using that to connect to a REPL. When I was still using shadow-cljs.edn
I followed the recommended steps for developing with shadow-css at the REPL. Now that I'm using deps.edn
, though, I'm having issues. When I connect with npx shadow-cljs clj repl
and try to load the repl
ns, it either cannot find shadow.css.build
or the symbol update-vals
from build.cljc
is unresolved.
the shadow-css dependency needs to be available and it requires clojure 1.11.1, you maybe have 1.10?
ah, yeah it is the version... :face_palm::skin-tone-2: thanks @U05224H0W!
Currently #C03DPCLCV9N uses this setting and we want to make some libraries available lazily using modules. cc @U0ETXRFEW
I don't quite understand these things. I know there is also :npm-module
, but I think that might be a rather unsupported target, and I have no clue if it supports code splitting anyway.
I think it does yes. Also we can't use es6: https://github.com/electron/electron/issues/21457
@U0ETXRFEW Well, maybe we should add rewrite-clj and just hope for the best then
I am working on a PR, let's continue the conversation elsewhere to not bug the people here
it's not clear to me how to declare the modules in npm-module. I tried :modules
but that seems to be ignored
Hello all, is that possible to do in Clojurescript something like plug-in that it can be load after, as a selectable module into frontend?
you mean code splitting in general? https://code.thheller.com/blog/shadow-cljs/2019/03/03/code-splitting-clojurescript.html
Hello @U05224H0W, thank you for your time. Plugin system I mean if I want to provide some new feature as dynamic module, like new option in system.
then it will have its own re-frame/reagent/react/etc version that will likely conflict and not be compatible with your own
if you don't care for :advanced
optimization and :simple
is good enough then this is doable, but still tricky and not supported out of the box
I'm getting
[:app] Compiling ...
Closure compilation failed with 1 errors
--- metabase/domain_entities/queries/util.cljc:13
and it's not clear from that line what the issue is. is there a flag to set or a hidden folder where I see the intermediate JS? (or the macroexpanded CLJS code?) there's a new, complex macro in play here, but it seems to be correct from playing around with macroexpand
.not the way I was running it. running npx shadow-cljs release app
directly showed me the error. but it was just "missing semicolon" which didn't help much.
I fixed the issue eventually by binary-searching the contents of my macro.
the trouble seems to have been generating (let [defn# (defn ...)] (other things) defn#)
you can find the generated JS in the .shadow-cljs/builds/release/<the-build-id>
folders
I'm trying to run the build report hook in joyride but it fails with:
NoSuchFileException: out/js/main.js
When I change :output-to
to "out/js/main.js"
it does work. Perhaps it's hardcoded?@U05224H0W I did manage to get it work though with very useful output:
What would be the best way to use a web library that performs https://github.com/WalletConnect/web3modal/blob/V2/packages/html/src/client.ts#L25? Right now, when instantiating this lib, I'm getting Uncaught (in promise) Module not provided: @web3modal/ui
Thanks for your help 🙏
use webpack as described here https://code.thheller.com/blog/shadow-cljs/2020/05/08/how-about-webpack-now.html#option-2-js-provider-external
Thanks a lot @U05224H0W. I'll give it a try 😉