nrepl

https://github.com/nrepl/nrepl || https://nrepl.org
shen 2019-03-25T09:02:13.035600Z

@bozhidar, re https://github.com/nrepl/nrepl/pull/135, think the keywordizing question might be more complex than first thought

bozhidar 2019-03-25T09:08:10.036500Z

Yeah, I just replied to you now.

bozhidar 2019-03-25T09:09:25.037800Z

It’s actually not that complex IMO, because we don’t really have to return the same structure of data for each transport - I’d rather return what’s optimal for the particular transport. Although in the beginning we obviously are going to return pretty similar things just because that’s the easiest things to do.

bozhidar 2019-03-25T09:12:25.038700Z

Down the road - we’ll see. Just being able to send an EDN request map and get an EDN response would be a big success, even if the maps themselves are somewhat weird. 🙂

shen 2019-03-25T13:00:27.039200Z

Left a reply, but think we are missing each other a bit on the question

shen 2019-03-25T13:00:31.039400Z

so might be easier to chat here?

bozhidar 2019-03-25T17:14:46.040Z

@shen Sure. Had a busy afternoon, so I saw your message here just now.

bozhidar 2019-03-25T17:14:57.040300Z

Overall it seems to me that we are almost on the same page. 😄

shen 2019-03-25T17:26:10.040600Z

Think so.

shen 2019-03-25T17:26:13.040800Z

hey

shen 2019-03-25T17:26:44.041400Z

If we are happy to release the EDN transport without committing to not making breaking changes, that makes it easier

bozhidar 2019-03-25T17:28:46.042400Z

Yeah, I totally am committed to this.

shen 2019-03-25T17:29:02.043100Z

committed to not committing 🙂

bozhidar 2019-03-25T17:29:10.043600Z

Generally I don’t plan for us to make any breaking changes as far as bencode usage is concerned.

shen 2019-03-25T17:30:32.046500Z

long term, exposing raw EDN transport and have everything work in a predictable manner, including third party middleware, is definitely gonna take some articulation of requirements

bozhidar 2019-03-25T17:30:40.046600Z

What I was talking about is that to fully leverage EDN, eventually we might want to change some aspects of the return values there, as currently much of the responses are dictated by the limited data types that exist in bencode. That’s certainly not a must-do, but probably the end users would appreciate it.

bozhidar 2019-03-25T17:32:40.048300Z

But definitely we should work in small steps and first just get to a point where people could use EDN.

shen 2019-03-25T17:34:59.051100Z

so, I'd like to change the transport to be pretty transparent, except having some shimms in place to bridge the gap between how things work internally, and how we want them to work

shen 2019-03-25T17:35:15.051600Z

I'm hoping it's going to be limited to :status and :op values being keywords

bozhidar 2019-03-25T17:51:02.052100Z

Yeah, that sounds reasonable.

bozhidar 2019-03-25T17:51:39.052500Z

I actually had forgotten those were keywords internally.

bozhidar 2019-03-25T17:52:28.053400Z

And you’ve noticed a fun mistake we’ve made with the manual - referring to all ops as keywords, even if there’s no way to invoke them like this if you’re not using the Clojure client.

shen 2019-03-25T18:01:13.053900Z

think :op is actually all strings internally

shen 2019-03-25T18:01:47.054200Z

but :status are keywords

shen 2019-03-25T18:14:30.055300Z

would it break the transit transport if we fixed it?

shen 2019-03-25T18:17:35.056800Z

(that's fastlane, right?)

bozhidar 2019-03-25T18:17:36.056900Z

Depends on the request - if you send strings it should be ok. That’s something pretty easy to fix, though.

bozhidar 2019-03-25T18:17:42.057100Z

Yeah, that’s fastlane.

shen 2019-03-25T18:17:48.057300Z

do we want to fix that now?

bozhidar 2019-03-25T18:19:06.058400Z

Well, that’s as good time as any. Generally that code is bencode-specific.

shen 2019-03-25T18:20:56.058700Z

cool. will see what I can do

bozhidar 2019-03-25T18:25:11.058900Z

Thanks!

bozhidar 2019-03-25T18:25:39.059500Z

Things are shaping pretty good pretty fast! Thanks for tackling this and everything you’ve done recently! Much much appreciated!

shen 2019-03-25T18:30:45.059900Z

only a pleasure