json-rpc

Fully-featured JSON-RPC 2.0 library https://github.com/jprupp/json-rpc.git#readme

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.

MIT licensed by Jean-Pierre Rupp
Maintained by jprupp@protonmail.ch

json-rpc

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.

Documentation

Examples

Changes

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

1.0.3 - 2020-06-19

Changed

  • LogSource (defined in 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

Changed

  • Change license to MIT.

1.0.1 - 2019-01-01

Fixed

  • Correct JSON-RPC 2.0 methods returning null result.

1.0.0 - 2018-08-12

Added

  • 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.