vs-streamjsonrpc icon indicating copy to clipboard operation
vs-streamjsonrpc copied to clipboard

The StreamJsonRpc library offers JSON-RPC 2.0 over any .NET Stream, WebSocket, or Pipe. With bonus support for request cancellation, client proxy generation, and more.

Results 85 vs-streamjsonrpc issues
Sort by recently updated
recently updated
newest added

I've been getting several JSON errors on my server and have tracked them down to the client sending an empty message back; i.e. ``` { "jsonrpc": "2.0", "id": null, "result":...

After much fiddling I finally have a working proof of concept in F#. I wanted to share the code here to save the next person the headache. It would be...

docs

When using `AddRemoteRpcTarget` to forward messages to another `JsonRpc` instance, calling methods that return an `IAsyncEnumerable` fails. This is because [JsonRpc.rpcTargetInfo.TryGetTargetMethod](https://github.com/microsoft/vs-streamjsonrpc/blob/6dc57e800961bf40bca23b87c5cf194f9e7c99d7/src/StreamJsonRpc/JsonRpc.cs#L1999) will always return a match for the special methods...

When returning a JSON-RPC error response, I suspect it would be a good play to block transmission of any exotic types. This is primarily because exotic types tend to pin...

**Repro:** 1) Create JsonRpc instance, e.g.: perhaps via brokered service, servicehub service. 2) Invoke long running request 3) Dispose RPC instance **Expected:** Clear indication of what the client is doing...

The dynamic proxies generated on the client raise events [with `sender` set to `this.rpc`](https://github.com/microsoft/vs-streamjsonrpc/blob/f35894c97cad9276ee12f6e8df7486b38cbfbe6d/src/StreamJsonRpc/ProxyGeneration.cs#L765) (the `JsonRpc` object behind the proxy). For a proxy holder, particularly one that has never seen...

bug
breaking change

Client proxy generation may be done at compile time via source generator. This modification could improve performance and add strong typed request for AOT environment(such as xamarin.ios)

enhancement

It seems the library doesn't support timeouts at the moment which is very cumbersome if there are communication issues or errors on the other side. Assume there is a client...

When an RPC chain exists such that an RPC client invokes a server, which as part of serving that request makes its own RPC call, if the *second* server throws...

Per [this discussion](https://groups.google.com/g/json-rpc/c/l7m5SIvwnFs/m/iBzozsFjAQAJ) > Given https://w3c.github.io/trace-context-binary/ is already out there, it might be better to say something like > > When using a binary encoding (e.g. MessagePack) the trace-context values...