Decred daemon in Go (golang)
Go Other
Pull request Compare This branch is 388 commits ahead, 174 commits behind btcsuite:master.
Permalink
Failed to load latest commit information.
addrmgr multi: Upstream chainhash abstraction sync Nov 16, 2016
blockchain stake: Add SSGenVoteBitsExtendedMaxSize const (#541) Jan 4, 2017
chaincfg Implement soft-forking mechanism. (#524) Dec 23, 2016
cmd Bump for v0.7.0 Dec 23, 2016
database multi: Upstream chainhash abstraction sync Nov 16, 2016
dcrec multi: Upstream chainhash abstraction sync Nov 16, 2016
dcrjson stake: Add SSGenVoteBitsExtendedMaxSize const (#541) Jan 4, 2017
docs docs: Add chainhash to README.md Nov 18, 2016
limits blockchain: Rework to use new db interface. Aug 18, 2016
mempool mempool: Refactor mempool code to its own package. Nov 29, 2016
mining multi: Upstream chainhash abstraction sync Nov 16, 2016
peer multi: Upstream chainhash abstraction sync Nov 16, 2016
release Initial Decred Commit. Feb 7, 2016
txscript txscript: Expose AddOps on ScriptBuilder. Nov 18, 2016
wire multi: Upstream chainhash abstraction sync Nov 16, 2016
.gitignore glide man Jul 15, 2016
.travis.yml travis: 1.7 -> 1.7.3 (#460) Nov 11, 2016
CHANGES Apply various upstream comment fixes. May 27, 2016
LICENSE license: add title Nov 18, 2016
README.md server: Remove superfluous check in OnMemPool. Nov 18, 2016
blocklogger.go fix singular case for stake transactions (#545) Jan 16, 2017
blockmanager.go mempool: Refactor mempool code to its own package. Nov 29, 2016
chainindexer.go multi: Upstream chainhash abstraction sync Nov 16, 2016
config.go mempool: Refactor mempool code to its own package. Nov 29, 2016
cpuminer.go multi: Upstream parameter abstraction sync Nov 17, 2016
dcrd.go dcrd: Simplify shutdown signal handling logic sync. Nov 18, 2016
deps.txt Add 0.11.1 deps to deps.txt. May 27, 2015
discovery.go blockchain: Rework to use new db interface. Aug 18, 2016
doc.go blockchain: Rework to use new db interface. Aug 18, 2016
dynamicbanscore.go multi: Fix several misspellings in the comments. May 30, 2016
dynamicbanscore_test.go Implement banning based on dynamic ban scores May 28, 2016
glide.lock Update 3rd party deps at the start of 0.8.0 dev (#536) Jan 9, 2017
glide.yaml Update 3rd party deps at the start of 0.8.0 dev (#536) Jan 9, 2017
goclean.sh Validate softforking mechanism with the fullblock tester. (#526) Dec 23, 2016
ipc.go Add pipes for parent process IPC. (#311) Aug 31, 2016
log.go mempool: Refactor mempool code to its own package. Nov 29, 2016
mining.go Implement soft-forking mechanism. (#524) Dec 23, 2016
mining_test.go Merge in btcd commit 'e15d3008cfd59756db9570da9e47da6831313196' Sep 23, 2016
miningerror.go blockchain: Rework to use new db interface. Aug 18, 2016
params.go blockchain: Rework to use new db interface. Aug 18, 2016
rpcserver.go rpc: Add missing StakeVersion to getblock verbose (#529) Dec 22, 2016
rpcserverhelp.go Implement stake voter version interrogation command. (#522) Dec 22, 2016
rpcserverhelp_test.go blockchain: Rework to use new db interface. Aug 18, 2016
rpcwebsocket.go multi: Upstream chainhash abstraction sync Nov 16, 2016
sample-dcrd.conf indexers: Implement optional tx/address indexes. Aug 18, 2016
server.go mempool: Refactor mempool code to its own package. Nov 29, 2016
service_windows.go dcrd: Simplify shutdown signal handling logic sync. Nov 18, 2016
signal.go dcrd: Simplify shutdown signal handling logic sync. Nov 18, 2016
signalsigterm.go Add pipes for parent process IPC. (#311) Aug 31, 2016
upnp.go Fixed DeletePortMapping documentation typo Jan 1, 2015
version.go Bump for v0.7.0 Dec 23, 2016

README.md

dcrd

Build Status ISC License

dcrd is a Decred full node implementation written in Go (golang).

This acts as a chain daemon for the Decred cryptocurrency. dcrd maintains the entire past transactional ledger of Decred and allows relaying of transactions to other Decred nodes across the world. To read more about Decred please see the project documentation.

Note: To send or receive funds and join Proof-of-Stake mining, you will also need dcrwallet.

This project is currently under active development and is in a Beta state. It is extremely stable and has been in production use since February 2016.

It is forked from btcd which is a bitcoin full node implementation written in Go. btcd is a ongoing project under active development. Because dcrd is constantly synced with btcd codebase, it will get the benefit of btcd's ongoing upgrades to peer and connection handling, database optimization and other blockchain related technology improvements.

Requirements

Go 1.6 or newer.

Getting Started

  • dcrd (and utilities) will now be installed in either $GOROOT/bin or $GOPATH/bin depending on your configuration. If you did not already add the bin directory to your system path during Go installation, we recommend you do so now.

Updating

Windows

Install a newer MSI

Linux/BSD/MacOSX/POSIX - Build from Source

  • Glide

    Glide is used to manage project dependencies and provide reproducible builds. To install:

    go get -u github.com/Masterminds/glide

Unfortunately, the use of glide prevents a handy tool such as go get from automatically downloading, building, and installing the source in a single command. Instead, the latest project and dependency sources must be first obtained manually with git and glide, and then go is used to build and install the project.

Getting the source:

For a first time installation, the project and dependency sources can be obtained manually with git and glide (create directories as needed):

git clone https://github.com/decred/dcrd $GOPATH/src/github.com/decred/dcrd
cd $GOPATH/src/github.com/decred/dcrd
glide install
go install $(glide nv)

To update an existing source tree, pull the latest changes and install the matching dependencies:

cd $GOPATH/src/github.com/decred/dcrd
git pull
glide install
go install $(glide nv)

For more information about decred and how to set up your software please go to our docs page at docs.decred.org.

Contact

If you have any further questions you can find us at:

  • irc.freenode.net (channel #decred)
  • webchat
  • forum.decred.org
  • decred.slack.com

Issue Tracker

The integrated github issue tracker is used for this project.

Documentation

The documentation is a work-in-progress. It is located in the docs folder.

License

dcrd is licensed under the copyfree ISC License.