nrepl

https://github.com/nrepl/nrepl || https://nrepl.org
pez 2019-08-22T06:29:15.033Z

If I get back a message with printed-value in it. Am I using some old nrepl stuff? I remember looking at this quite long ago and thought I learnt that that behaviour had been changed...

pez 2019-08-22T06:37:37.035800Z

Also the out message comes in a separate session than the eval where I printed. And with an old id. This is shadow-cljs which I start like so:

npx shadow-cljs -d cider/cider-nrepl:0.21.1 watch :app

bozhidar 2019-08-22T06:44:06.036300Z

I think piggieback still returns it in its responses. Or at least it did up to some version.

bozhidar 2019-08-22T06:44:38.036600Z

See https://github.com/nrepl/piggieback/pull/108

pez 2019-08-22T06:51:02.037300Z

But why would the out come with an old message id?

dominicm 2019-08-22T07:14:19.037600Z

Wrap-out

dominicm 2019-08-22T07:15:06.037800Z

Or threads

pez 2019-08-22T09:22:19.038900Z

Does that mean that shadow is wrapping or threading it? Where should I be looking for a way to solve the problem, I guess I am asking. 😃

dominicm 2019-08-22T09:26:01.040300Z

There was a bug in Figwheel for a while where it processed messages by taking an initial copy of the thread locals and processing them in a separate thread. This would cause the message id to be an older one, but a fixed older one.

pez 2019-08-22T09:30:29.041Z

It is a fixed older one here as well, I think. (At least in my quick testing it is always the same id+session).

dominicm 2019-08-22T09:35:57.041800Z

Then it sounds like a similar class to me. I'd check shadow's repl-env implementation

1