An alternative full node implementation of LBRY's blockchain written in Go (golang)
Find a file
Dave Collins 629a1c9d06 Rework the data path and db type handling.
This commit modifies the way the data paths are handled.  Since there will
ultimately be more data associated with each network than just the block
database, the data path has been modified to be "namespaced" based on the
network.  This allows all data associated with a specific network to
simply use the data path without having to worry about conflicts with data
from other networks.

In addition, this commit renames the block database to "blocks" plus a
suffix which denotes the database type.  This prevents issues that would
otherwise arise if the user decides to use a different database type and
a file/folder with the same name already eixsts but is of the old database
type.  For most users this won't matter, but it does provide nice
properties for testing and development as well since it makes it easy to
go back and forth between database types.

This commit also includes code to upgrade the old database paths to the
new ones so the change is seamless for the user.

Finally, bump the version to 0.2.0.
2013-09-15 14:25:32 -05:00
.gitignore Convert .gitignore line endings to unix. 2013-08-07 15:00:20 -05:00
addrmanager.go Increment waitgroups before goroutines are started. 2013-09-12 17:24:37 -05:00
addrmanager_test.go Move btcd to root directory. 2013-08-07 12:47:51 -05:00
blockmanager.go Rework the data path and db type handling. 2013-09-15 14:25:32 -05:00
btcd.go Add basic infrastructure for upgrading btcd. 2013-09-15 13:40:26 -05:00
config.go Rework the data path and db type handling. 2013-09-15 14:25:32 -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
mruinvmap.go Add block inventory relay. 2013-09-11 20:14:13 -05:00
params.go Rework the data path and db type handling. 2013-09-15 14:25:32 -05:00
peer.go Fix a comment typo and comment outputBufferSize. 2013-09-12 12:11:46 -05:00
README.md Remove block relay from TODO list. 2013-09-12 09:15:38 -05:00
rpcserver.go Increment waitgroups before goroutines are started. 2013-09-12 17:24:37 -05:00
sample-btcd.conf Misc comment and doco cleanup. 2013-08-08 12:47:15 -05:00
server.go Increment waitgroups before goroutines are started. 2013-09-12 17:24:37 -05:00
signal.go Move btcd to root directory. 2013-08-07 12:47:51 -05:00
upgrade.go Rework the data path and db type handling. 2013-09-15 14:25:32 -05:00
version.go Rework the data path and db type handling. 2013-09-15 14:25:32 -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 transaction mempool & relay
  • Complete address manager
  • Documentation
  • A lot of code cleanup
  • Optimize