pod

command module
v0.0.0-...-a838072 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 19, 2019 License: Unlicense Imports: 1 Imported by: 0

README

Logo Parallelcoin Pod

GoDoc development branch development branch discordbot

Fully integrated all-in-one cli client, full node, wallet server, miner and GUI wallet for Parallelcoin

Binaries for legacy now available for linux amd64

Get them from here: https://git.parallelcoin.io/dev/parallelcoin-binaries

Pod is a multi-application with multiple submodules for different functions. It is self-configuring and configurations can be changed from the commandline as well as editing the json files directly, so the binary itself is the complete distribution for the suite.

It consists of 5 main modules:

  1. pod/ctl - command line interface to send queries to a node or wallet and prints the results to the stdout
  2. pod/node - full node for parallelcoin network, including optional indexes for address and transaction search, low latency miner controller
  3. pod/wallet - wallet server that runs separately from the full node but depends on a full node RPC for much of its functionality, and includes a GUI front end
  4. pod/shell - combined full node and wallet server
  5. pod/gui - webview based desktop wallet GUI

Building

You can just go install in the root directory and pod will be placed in your GOBIN directory.

Documentation

Overview

Package main is the root of the Parallelcoin Pod software suite

It slices, it dices

Directories

Path Synopsis
app
Package app is a multi-function universal binary that does all the things.
Package app is a multi-function universal binary that does all the things.
cmd
ctl
gui
node
Package node is a full-node Parallelcoin implementation written in Go.
Package node is a full-node Parallelcoin implementation written in Go.
node/integration/rpctest
Package rpctest provides a pod-specific RPC testing harness crafting and executing integration tests by driving a `pod` instance via the `RPC` interface.
Package rpctest provides a pod-specific RPC testing harness crafting and executing integration tests by driving a `pod` instance via the `RPC` interface.
node/mempool
Package mempool provides a policy-enforced pool of unmined bitcoin transactions.
Package mempool provides a policy-enforced pool of unmined bitcoin transactions.
spv
tools/genesis
Bitcoin fork genesis block generator, based on https://bitcointalk.org/index.php?topic=181981.0 hosted at https://pastebin.com/nhuuV7y9
Bitcoin fork genesis block generator, based on https://bitcointalk.org/index.php?topic=181981.0 hosted at https://pastebin.com/nhuuV7y9
pkg
chain
Package blockchain implements bitcoin block handling and chain selection rules.
Package blockchain implements bitcoin block handling and chain selection rules.
chain/config
Package chaincfg defines chain configuration parameters.
Package chaincfg defines chain configuration parameters.
chain/fork
Package fork handles tracking the hard fork status and is used to determine which consensus rules apply on a block
Package fork handles tracking the hard fork status and is used to determine which consensus rules apply on a block
chain/fullblocktests
Package fullblocktests provides a set of block consensus validation tests.
Package fullblocktests provides a set of block consensus validation tests.
chain/hash
Package chainhash provides abstracted hash functionality.
Package chainhash provides abstracted hash functionality.
chain/index
Package indexers implements optional block chain indexes.
Package indexers implements optional block chain indexes.
chain/sync
Package netsync implements a concurrency safe block syncing protocol.
Package netsync implements a concurrency safe block syncing protocol.
chain/tx
Package wallettx provides ...
Package wallettx provides ...
chain/tx/author
Package txauthor provides transaction creation code for wallets.
Package txauthor provides transaction creation code for wallets.
chain/tx/mgr
Package wtxmgr provides an implementation of a transaction database handling spend tracking for a bitcoin wallet.
Package wtxmgr provides an implementation of a transaction database handling spend tracking for a bitcoin wallet.
chain/tx/rules
Package txrules provides transaction rules that should be followed by transaction authors for wide mempool acceptance and quick mining.
Package txrules provides transaction rules that should be followed by transaction authors for wide mempool acceptance and quick mining.
chain/tx/script
Package txscript implements the bitcoin transaction script language.
Package txscript implements the bitcoin transaction script language.
chain/tx/sort
Package txsort provides the transaction sorting according to BIP 69.
Package txsort provides the transaction sorting according to BIP 69.
chain/wire
Package wire implements the bitcoin wire protocol.
Package wire implements the bitcoin wire protocol.
db
Package database provides a block and metadata storage database.
Package database provides a block and metadata storage database.
db/ffldb
Package ffldb implements a driver for the database package that uses leveldb or the backing metadata and flat files for block storage.
Package ffldb implements a driver for the database package that uses leveldb or the backing metadata and flat files for block storage.
peer
Package peer provides a common base for creating and managing Bitcoin network peers.
Package peer provides a common base for creating and managing Bitcoin network peers.
peer/addrmgr
Package addrmgr implements concurrency safe Bitcoin address manager.
Package addrmgr implements concurrency safe Bitcoin address manager.
peer/connmgr
Package connmgr implements a generic Bitcoin network connection manager.
Package connmgr implements a generic Bitcoin network connection manager.
pod
rpc/client
Package rpcclient implements a websocket-enabled Bitcoin JSON-RPC client.
Package rpcclient implements a websocket-enabled Bitcoin JSON-RPC client.
rpc/json
Package json provides primitives for working with the bitcoin JSON-RPC API.
Package json provides primitives for working with the bitcoin JSON-RPC API.
rpc/legacy
AUTOGENERATED by internal/rpchelp/genrpcserverhelp.go; do not edit.
AUTOGENERATED by internal/rpchelp/genrpcserverhelp.go; do not edit.
rpc/server
Package rpcserver implements the RPC API and is used by the main package to start gRPC services.
Package rpcserver implements the RPC API and is used by the main package to start gRPC services.
rpc/sub
Package sub is a short message publication/subscription library that uses UDP transport, Reed Solomon erasure coding, ed25519 EC signatures for tamper-resistance, for allowing clients to subscribe to updates from a server for time-sensitive messaging, written to implement a low latency work delivery system for Parallelcoin miners.
Package sub is a short message publication/subscription library that uses UDP transport, Reed Solomon erasure coding, ed25519 EC signatures for tamper-resistance, for allowing clients to subscribe to updates from a server for time-sensitive messaging, written to implement a low latency work delivery system for Parallelcoin miners.
util
Package util provides bitcoin-specific convenience functions and types.
Package util provides bitcoin-specific convenience functions and types.
util/base58
Package base58 provides an API for working with modified base58 and Base58Check encodings.
Package base58 provides an API for working with modified base58 and Base58Check encodings.
util/bech32
Package bech32 provides a Go implementation of the bech32 format specified in BIP 173.
Package bech32 provides a Go implementation of the bech32 format specified in BIP 173.
util/cl
Package cl is clog, the channel logger What's this for Many processes involve very tight loops that number in the hundreds of nanoseconds per iteration, and logging systems can contribute a significant additional time to this.
Package cl is clog, the channel logger What's this for Many processes involve very tight loops that number in the hundreds of nanoseconds per iteration, and logging systems can contribute a significant additional time to this.
util/elliptic
Package ec implements support for the elliptic curves needed for bitcoin.
Package ec implements support for the elliptic curves needed for bitcoin.
util/gcs
Package gcs provides an API for building and using a Golomb-coded set filter.
Package gcs provides an API for building and using a Golomb-coded set filter.
util/graf
Package graph turns hexadecimal strings into visual representation of the magnitude of digits
Package graph turns hexadecimal strings into visual representation of the magnitude of digits
util/hdkeychain
Package hdkeychain provides an API for bitcoin hierarchical deterministic extended keys (BIP0032).
Package hdkeychain provides an API for bitcoin hierarchical deterministic extended keys (BIP0032).
util/helpers
Package helpers provides convenience functions to simplify wallet code.
Package helpers provides convenience functions to simplify wallet code.
util/log
Package log defines an interface and default implementation for subsystem logging.
Package log defines an interface and default implementation for subsystem logging.
util/treap
Package treap implements a treap data structure that is used to hold ordered key/value pairs using a combination of binary search tree and heap semantics.
Package treap implements a treap data structure that is used to hold ordered key/value pairs using a combination of binary search tree and heap semantics.
wallet/addrmgr
Package waddrmgr provides a secure hierarchical deterministic wallet address manager.
Package waddrmgr provides a secure hierarchical deterministic wallet address manager.
wallet/db
Package walletdb provides a namespaced database interface for btcwallet.
Package walletdb provides a namespaced database interface for btcwallet.
wallet/db/bdb
Package bdb implements an instance of walletdb that uses boltdb for the backing datastore.
Package bdb implements an instance of walletdb that uses boltdb for the backing datastore.
wallet/db/test
Package walletdbtest provides exported tests that can be imported and consumed by walletdb driver tests to help ensure that drivers confirm to the database driver interface correctly.
Package walletdbtest provides exported tests that can be imported and consumed by walletdb driver tests to help ensure that drivers confirm to the database driver interface correctly.
wallet/votingpool
Package votingpool provides voting pool functionality for btcwallet.
Package votingpool provides voting pool functionality for btcwallet.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL