Skip to content

nREPL middlewares abuse :value in responses #105

@cemerick

Description

@cemerick

I was poking around the nREPL middleware a bit, and noticed that many (all?) of them use :value in their responses to convey data/content that is generally not clojure.core/readable…which is generally the intent of :value (thus the utility of things like e.g. read-response-values). I realize now that that isn't documented anywhere explicitly (not in the nREPL README or in the ops.md document), something I'll be correcting shortly.

The practical effect of this right now is probably ~nil, given the probably-tight binding that currently exists between ritz and the tools that support it (i.e. the latter can just make sure not to adjust their handling of :value slots in responses to ritz-specific message IDs). But I think ops like this will end up being a lot more useful (and require much less coordination viz. nrepl-discovery if their responses are as self-describing as possible, up to the point of there being a set of common response "schemas" that clients/tools can react to generically (rather than operationally tracking message IDs and such to strictly control how to respond to response data).

Thoughts?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions