Fork me on GitHub
#shadow-cljs
<
2018-07-31
>
prabhath603:07:49

I was wondering if its possible to change an Atom in proto-repl and then show the updated state in page?

bupkis05:07:59

After upgrading to shadow-cljs 2.4.25, I started getting the following warnings upon starting a watch:

bupkis05:07:28

[WARNING] No nREPL middleware descriptor in metadata of #'cider.piggieback/wrap-cljs-repl, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.piggieback/wrap-cljs-repl, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.piggieback/wrap-cljs-repl, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.piggieback/wrap-cljs-repl, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.piggieback/wrap-cljs-repl, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.piggieback/wrap-cljs-repl, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.piggieback/wrap-cljs-repl, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.piggieback/wrap-cljs-repl, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.piggieback/wrap-cljs-repl, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.piggieback/wrap-cljs-repl, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.piggieback/wrap-cljs-repl, see clojure.tools.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'refactor-nrepl.middleware/wrap-refactor, see nrepl.middleware/set-descriptor!

bupkis05:07:31

[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-apropos, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-classpath, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-complete, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-debug, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-enlighten, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-format, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-info, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-inspect, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-macroexpand, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-slurp, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-ns, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-out, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-content-type, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-slurp, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-pprint, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-pprint-fn, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-profile, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-refresh, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-resource, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-spec, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-stacktrace, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-test, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-trace, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-tracker, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-undef, see nrepl.middleware/set-descriptor!
[WARNING] No nREPL middleware descriptor in metadata of #'cider.nrepl/wrap-version, see nrepl.middleware/set-descriptor!

bupkis05:07:56

I guess it's connected to the upgrade to the new nrepl?

bupkis05:07:10

I have

[cider/cider-nrepl "0.18.0-SNAPSHOT"]
                [refactor-nrepl "2.4.0-SNAPSHOT"]
in my shadow-cljs.edn, together with :nrepl { :middleware [refactor-nrepl.middleware/wrap-refactor]}

bupkis05:07:02

Removing refactor-nrepl doesn't have any effect on the warnings

bupkis05:07:02

the new nrepl also breaks fireplace (unrelated to shadow-cljs of course) so I guess I'll roll back to the previous version of shadow-cljs for now

tiensonqin07:07:00

@samuel.wagen Yeah, I have the same problem too.

thheller08:07:39

great .. it works without the cider-nrepl. I thought that was already upgraded but I guess not.

tiensonqin08:07:36

awesome!! I'll give it a try.

thheller08:07:23

I'll try another approach. this stuff is supposed to be backwards compatible but my check for that is not reliable enough

thheller08:07:43

the refactor-nrepl middleware is also not nrepl 0.4+ compatible.

tiensonqin08:07:00

Yeah, it could connect to cljs repl. But auto-complete and other features won't work since no dependent of cider-nrepl.

tiensonqin08:07:20

I could just downgrade version, anyway this is very cool.

thheller08:07:43

yeah since @bozhidar was the one pushing for the 0.4+ upgrade I thought that cider-nrepl was already upgraded

thheller08:07:53

but I just saw that that is not the case

tiensonqin08:07:05

oh, I tried to add

(middleware/set-descriptor!
 #'cider.piggieback/wrap-cljs-repl
 {:requires #{}
  :expects #{}
  :handles {}})

tiensonqin08:07:17

but sooner I find you already did that in the fake ns.

thheller08:07:35

yeah the issue it that both nrepl versions are loaded

thheller08:07:48

and the middleware is registered with the wrong version

thheller08:07:00

ie. a different version than the actual server being used

tiensonqin08:07:25

cool, learned something, :thumbsup:

tiensonqin08:07:37

Btw, I encountered some error like "Duplicate parameter name "xxx"", it seems that cljs compiler generated wrong code. I have to change some symbol names to work around, and that's the reason that I upgraded shadow-cljs.

tiensonqin08:07:47

haven't met that error before.

thheller08:07:53

hmm not sure I know the error you are talking about?

thheller08:07:22

you can use 2.4.24 for now. the .25 version only changed the nrepl support.

tiensonqin08:07:51

I should create a minimal reproduce case. cool

thheller08:07:49

thats a really old issue and the fix for that is not relevant to shadow-cljs

tiensonqin08:07:52

Yeah, it's not related to shadow-cljs, I shouldn't post it here.

thheller08:07:25

if you have the full error that would help

tiensonqin08:07:59

thanks, I'll create a minimal case later.

thheller09:07:11

@tiensonqin @samuel.wagen try 2.4.26 if you get a chance. it now hopefully detects things correctly.

thheller09:07:28

I really don't like that they completely destroyed any kind of compatibility with the version upgrade

tiensonqin09:07:13

Do they say that on changelog? There're 2 things that I don't want to upgrade: 1. react native 2. cider-nrepl

thheller09:07:42

I just falsely assume that he wanted the upgrade due to cider-nrepl using the newer version

tiensonqin09:07:41

@thheller 2.4.26 works for me!

bupkis09:07:49

@thheller just tried it, it works for me too and doesn't break vim-fireplace as 2.4.25 did.

bupkis09:07:10

did you release it from a private repo though, because I can't see a commit in github and was curious what you did

thheller09:07:32

oops sorry. just forgot to push.

bupkis09:07:41

oh now I see. I didn't know Cursive wasn't using nREPL, that explains it.

thheller09:07:04

it does support nrepl. just doesn't use any middleware.

bupkis09:07:06

err, cider-nrepl

bupkis09:07:12

yeah that's what I meant