dcrd/rpcclient
Dave Collins 36ef9c0dae
rpcclient: Prepare v7.0.0.
This updates the rpcclient module dependencies, the copyright year in
the files modified since the previous release, and serves as a base for
rpcclient/v7.0.0.

The updated direct dependencies in this commit are as follows:

- github.com/decred/dcrd/gcs/v3@v3.0.0
- github.com/decred/dcrd/rpc/jsonrpc/types/v3@v3.0.0

The full list of updated direct dependencies since the previous
rpcclient/v6.0.2 release are as follows:

- github.com/decred/dcrd/chaincfg/chainhash@v1.0.3
- github.com/decred/dcrd/dcrjson/v4@v4.0.0
- github.com/decred/dcrd/dcrutil/v4@v4.0.0
- github.com/decred/dcrd/gcs/v3@v3.0.0
- github.com/decred/dcrd/rpc/jsonrpc/types/v3@v3.0.0
- github.com/decred/dcrd/txscript/v4@v4.0.0
- github.com/decred/dcrd/wire@v1.5.0
- github.com/decred/slog@v1.2.0

Finally, all modules in the repository that depend on the module are
tidied to ensure they are updated to use the latest versions hoisted
forward as a result.
2021-12-17 13:58:35 -06:00
..
examples/dcrdwebsockets rpcclient: Prepare v7.0.0. 2021-12-17 13:58:35 -06:00
chain.go dcrjson: Introduce v4 module. 2021-09-14 13:38:54 -05:00
CONTRIBUTORS Import dcrrpcclient repo into rpcclient directory. 2017-10-11 14:22:32 -05:00
doc.go rpcclient: Prepare v6.0.0. 2020-10-15 11:42:40 -05:00
extensions.go multi: Address some linter complaints. 2021-07-26 20:51:03 -05:00
go.mod rpcclient: Prepare v7.0.0. 2021-12-17 13:58:35 -06:00
go.sum rpcclient: Prepare v7.0.0. 2021-12-17 13:58:35 -06:00
infrastructure_test.go rpcclient: Implement fmt.Stringer for Client 2018-06-14 16:45:52 -05:00
infrastructure.go dcrjson: Introduce v4 module. 2021-09-14 13:38:54 -05:00
log.go rpcclient: Prepare v7.0.0. 2021-12-17 13:58:35 -06:00
mining.go rpc/jsonrpc/types: Start v3 module dev cycle. 2020-12-23 23:23:08 -06:00
net.go rpcclient: Prepare v7.0.0. 2021-12-17 13:58:35 -06:00
notify.go stdaddr: Replace Address method with String 2021-04-15 16:51:33 -05:00
rawrequest.go dcrjson: Introduce v4 module. 2021-09-14 13:38:54 -05:00
rawtransactions.go dcrjson: Introduce v4 module. 2021-09-14 13:38:54 -05:00
README.md docs: Update for rpcclient v7 module. 2021-12-17 13:58:30 -06:00

rpcclient

Build Status ISC License Doc

rpcclient implements a Websocket-enabled Decred JSON-RPC client package written in Go. It provides a robust and easy to use client for interfacing with a Decred RPC server that uses a dcrd compatible Decred JSON-RPC API.

Status

This package is currently under active development. It is already stable and the infrastructure is complete. However, there are still several RPCs left to implement and the API is not stable yet.

Documentation

  • API Reference
  • dcrd Websockets Example Connects to a dcrd RPC server using TLS-secured websockets, registers for block connected and block disconnected notifications, and gets the current block count

Major Features

  • Supports Websockets (dcrd/dcrwallet) and HTTP POST mode (bitcoin core-like)
  • Provides callback and registration functions for dcrd notifications
  • Translates to and from higher-level and easier to use Go types
  • Offers a synchronous (blocking) and asynchronous API
  • When running in Websockets mode (the default):
    • Automatic reconnect handling (can be disabled)
    • Outstanding commands are automatically reissued
    • Registered notifications are automatically reregistered
    • Back-off support on reconnect attempts

Installation and Updating

This package is part of the github.com/decred/dcrd/rpcclient/v7 module. Use the standard go tooling for working with modules to incorporate it.

License

Package rpcclient is licensed under the copyfree ISC License.