This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2018-06-25
Channels
- # beginners (33)
- # cider (40)
- # clara (28)
- # cljs-dev (38)
- # cljsrn (5)
- # clojure (197)
- # clojure-greece (1)
- # clojure-italy (7)
- # clojure-losangeles (1)
- # clojure-nl (10)
- # clojure-spec (32)
- # clojure-uk (154)
- # clojurescript (48)
- # core-async (33)
- # cursive (32)
- # datomic (19)
- # duct (1)
- # fulcro (10)
- # graphql (6)
- # jobs (1)
- # lumo (1)
- # mount (6)
- # off-topic (48)
- # onyx (12)
- # other-languages (2)
- # re-frame (77)
- # reagent (19)
- # reitit (4)
- # ring (5)
- # ring-swagger (18)
- # rum (4)
- # shadow-cljs (52)
- # specter (12)
- # tools-deps (47)
@smnplk turns out there was a bug in shadow-cljs
resolve rules that prevented firebase/app
from working properly. fixed in 2.4.9
.
Hey @thheller, just wanted to follow up and let you know that RMWC works perfectly. I did a quick update to the shadow-reagent example with the buttons replaced with react components from that project: https://gitlab.com/randall.mason/shadow-rmwc-reagent-example/
Weโll see if Google gets their act together and compiles the JSX in their version of the react wrapper.
hmm, any ideas about an error like this:
FileNotFoundException: .../stest/node_modules/apollo-upload-client/lib/main (Is a directory)
java.io.FileInputStream.open0 (FileInputStream.java:-2)
java.io.FileInputStream.open (FileInputStream.java:195)
java.io.FileInputStream.<init> (FileInputStream.java:138)
I tried adding this option:
:js-options {:resolve {"apollo-upload-client" {:target :npm
:require "apollo-upload-client/lib/main/index.js"}}}
where apollo-upload-client/lib/main/index.js
is definitely a file, and then I still get:
ExceptionInfo: :resolve override for "apollo-upload-client" to "apollo-upload-client/lib/main/index.js" which does not exist
the file I am trying to compile:
(ns example.core
(:require ["apollo-upload-client"]))
@mhuebert should be fixed in [email protected]
atm we are running in jenkins. running npx shadow-cljs release build1 build2
is taking about ~360s
no idea how to do it in jenkins but you just need to "keep" .shadow-cljs/builds
directory
I'm kind of dumb at the CI stuff. we're using docker in a runner, so I know we can leverage some caching with the docker containers
you can try running the builds after each other instead of concurrently but that probably won't help much since the threadpool should ensure that all cores are properly ulitilzed
ie. write a (defn build-all [] (shadow/release :build1) (shadow/release :build2))
then shadow-cljs run that.ns/build-all
I'll fiddle with it for a bit and see if I can figure out how to persist the cache between builds. thanks @thheller ๐
cache should be the best option. beyond that you can try messing with :jvm-opts ["-Xmx2G"]
or so in shadow-cljs.edn
whatever makes sense for the machine the build is running on. this can sometimes help a bit but nothing like caching would
hey guys, does shadow-cljs support git shas as dependencies, or should i move my whole dep tree to deps.edn and deal with it there?
is there some incantation to see the dependency tree of my project using just shadow-cljs (not lein or deps.edn)?
because this is currently failing:
:dependencies
[[cider/cider-nrepl "0.16.0-SNAPSHOT"]
[binaryage/devtools "0.9.7"]
[devcards "0.2.5"]
[re-frame "0.10.5"
:exclusions
[reagent "0.7.0"]]]
shadow-cljs - dependency update failed - java.lang.Character cannot be cast to clojure.lang.Named
Hello folks! I am doing:
(ns my-ns
(:require [azure-storage :as az-storage]))
but I receive
conflict on "az-storage" by "azure-storage" used by "shadow.js.shim.module$azure_storage"
{:tag :shadow.build.ns-form/require-conflict, :ns-info {:rename-macros nil, :renames {}, :meta {:source "ep-cloud.azure", :file "repl-input.cljs", :line 1, :column 5, :end-line 1, :end-column 19}, :ns-aliases {clojure.spec.alpha cljs.spec.alpha, lodash.upperfirst shadow.js.shim.module$lodash_upperfirst, fs shadow.js.shim.module$fs, bunyan shadow.js.shim.module$bunyan, pg shadow.js.shim.module$pg, process shadow.js.shim.module$process, util shadow.js.shim.module$util, clojure.pprint cljs.pprint, dotenv shadow.js.shim.module$dotenv, lodash.camelcase shadow.js.shim.module$lodash_camelcase, lodash.kebabcase shadow.js.shim.module$lodash_kebabcase, ajv shadow.js.shim.module$ajv, aws-sdk shadow.js.shim.module$aws_sdk}, :use-macros nil, :excludes #{}, :name ep-cloud.azure, :js-aliases {"azure-storage" shadow.js.shim.module$azure_storage}, :imports nil, :requires {node-util util, ep-cloud.define ep-cloud.define, shadow.js.shim.module$azure_storage shadow.js.shim.module$azure_storage, cljs.core cljs.core, gobj goog.object, goog goog, goog.object goog.object, util util, az-storage shadow.js.shim.module$azure_storage, azure-storage azure-storage, shadow.js.shim.module$util shadow.js.shim.module$util, def ep-cloud.define}, :seen #{:require}, :uses nil, :require-macros {cljs.core cljs.core}, :flags {:require #{}}, :js-deps {"azure-storage" {:as az-storage}}, :deps [goog cljs.core ep-cloud.define goog.object shadow.js.shim.module$util shadow.js.shim.module$azure_storage util azure-storage]}, :merge-key :requires, :sym az-storage, :ns azure-storage}
ExceptionInfo: conflict on "az-storage" by "azure-storage" used by "shadow.js.shim.module$azure_storage"
clojure.core/ex-info (core.clj:4754)
clojure.core/ex-info (core.clj:4754)
shadow.build.ns-form/merge-require (ns_form.clj:245)
shadow.build.ns-form/merge-require (ns_form.clj:238)
shadow.build.ns-form/process-symbol-require (ns_form.clj:292)
shadow.build.ns-form/process-symbol-require (ns_form.clj:281)
shadow.build.ns-form/process-require (ns_form.clj:323)
shadow.build.ns-form/process-require (ns_form.clj:320)
what does the above mean?
I don't need the require?
I cannot alias it?
rename to only storage
seems to solve it