An alternative full node implementation of LBRY's blockchain written in Go (golang)
Find a file
Dave Collins 83407ade61 Rework block fetching code.
This commit significantly reworks the fetching code to interop better with
bitcoind.  In particular, when an inventory message is sent, and the
remote peer requests the final block, the remote peer sends the current
end of the main chain to signal that there are more blocks to get.

Previously this code was automatically requesting more blocks when the
number of in-flight blocks was under a certain threshold.  The original
approach does help alleviate delays in the "request final, wait for
orphan, request more" round trip, but due to the aforementioned mechanism,
it leads to double requests and other subtle issues.
2013-08-30 13:04:50 -05:00
.gitignore Convert .gitignore line endings to unix. 2013-08-07 15:00:20 -05:00
addrmanager.go Move btcd to root directory. 2013-08-07 12:47:51 -05:00
addrmanager_test.go Move btcd to root directory. 2013-08-07 12:47:51 -05:00
blockmanager.go Rework block fetching code. 2013-08-30 13:04:50 -05:00
btcd.go Misc comment and doco cleanup. 2013-08-08 12:47:15 -05:00
config.go Remove current directory config autoload override. 2013-08-19 14:48:46 -05:00
discovery.go Misc comment and doco cleanup. 2013-08-08 12:47:15 -05:00
LICENSE Initial import. 2013-08-06 19:17:05 -05:00
logclosure.go Move log closure code into its own file. 2013-08-10 20:07:37 -05:00
params.go Move btcd to root directory. 2013-08-07 12:47:51 -05:00
peer.go Rework block fetching code. 2013-08-30 13:04:50 -05:00
README.md Initial import. 2013-08-06 19:17:05 -05:00
rpcserver.go Add stop command to rpcserver. 2013-08-09 16:20:06 -04:00
sample-btcd.conf Misc comment and doco cleanup. 2013-08-08 12:47:15 -05:00
server.go Rework server startup and shutdown sequence. 2013-08-09 14:43:30 -05:00
signal.go Move btcd to root directory. 2013-08-07 12:47:51 -05:00
version.go Add version information and -V/--version flags. 2013-08-07 18:53:01 -05:00

btcd

btcd is an alternative full node bitcoin implementation written in Go (golang).

This project is currently under active development and is not production ready yet.

TODO

The following is a list of major items remaining before production release:

  • Implement multi-peer support
  • Implement relay
  • Complete address manager
  • Rework the block syncing code to work with headers
  • Documentation
  • A lot of code cleanup
  • Optimize