Fully-featured JSON-RPC 2.0 library for Haskell programs.
This JSON-RPC library is fully-compatible with JSON-RPC 2.0 and 1.0. It provides an interface that combines a JSON-RPC client and server. It can set and keep track of request ids to parse responses. There is support for sending and receiving notifications. You may use any underlying transport. Basic TCP client and server provided.
A JSON-RPC application using this interface is considered to be peer-to-peer, as it can send and receive all types of JSON-RPC message independent of whether it originated the connection.
All notable changes to this project will be documented in this file.
1.0.4 - 2022-05-15
Arbitrary Valueinstance because it is already provided by the
- Relax restrictions on
paramsfield for JSON-RPCv1 requests.
- Bump minimum version of
1.0.3 - 2020-06-19
monad-logger) for this library is set to
"json-rpc"so that logs can be filtered base on it.
1.0.2 - 2020-06-12
- Change license to MIT.
1.0.1 - 2019-01-01
- Correct JSON-RPC 2.0 methods returning null result.
1.0.0 - 2018-08-12
- Complete JSON-RPC 1.0 and 2.0 support.
- Ability to use either endpoint to send and receive requests, responses or notifications.
- Simple TCP client/server implementation available.
- Example files.
- Exhaustive test suite.
- Compatibility with GHC 8.4.
- Support semantic versioning.
- Add a changelog.