An open API service providing repository metadata for many open source software ecosystems.

Package Usage: go: github.com/decred/dcrd/blockchain/v2

Package blockchain implements Decred block handling and chain selection rules. The Decred block handling and chain selection rules are an integral, and quite likely the most important, part of decred. At its core, Decred is a distributed consensus of which blocks are valid and which ones will comprise the main block chain (public ledger) that ultimately determines accepted transactions, so it is extremely important that fully validating nodes agree on all rules. At a high level, this package provides support for inserting new blocks into the block chain according to the aforementioned rules. It includes functionality such as rejecting duplicate blocks, ensuring blocks and transactions follow all rules, orphan handling, and best chain selection along with reorganization. Since this package does not deal with other Decred specifics such as network communication or wallets, it provides a notification system which gives the caller a high level of flexibility in how they want to react to certain events such as orphan blocks which need their parents requested and newly connected main chain blocks which might result in wallet updates. Before a block is allowed into the block chain, it must go through an intensive series of validation rules. The following list serves as a general outline of those rules to provide some intuition into what is going on under the hood, but is by no means exhaustive: Errors returned by this package are either the raw errors provided by underlying calls or of type blockchain.RuleError. This allows the caller to differentiate between unexpected errors, such as database errors, versus errors due to rule violations through type assertions. In addition, callers can programmatically determine the specific rule violation by examining the ErrorCode field of the type asserted blockchain.RuleError.
5 versions
Latest release: almost 2 years ago
18 dependent packages

View more package details: https://packages.ecosyste.ms/registries/proxy.golang.org/packages/github.com/decred/dcrd/blockchain/v2

View more repository details: http://repos.ecosyste.ms/hosts/GitHub/repositories/decred%2Fdcrd

Dependent Repos 11

dcrnofficial/dcrnd

Size: 26.3 MB - Last synced: 9 months ago - Pushed: over 2 years ago

dcrnofficial/dcrndata

Size: 15.1 MB - Last synced: 5 months ago - Pushed: almost 3 years ago

dcrnofficial/dcrnlibwallet

Size: 886 KB - Last synced: almost 2 years ago - Pushed: almost 3 years ago

dcrnofficial/dcrnwallet

Size: 6.26 MB - Last synced: 11 months ago - Pushed: over 2 years ago

raedahgroup/godcr-old

Size: 8.4 MB - Last synced: about 2 years ago - Pushed: over 3 years ago

hdfchain/hdfdata

Size: 2.34 MB - Last synced: about 1 year ago - Pushed: over 4 years ago

jrick/release-1 Fork of decred/release

Size: 1.01 MB - Last synced: 3 months ago - Pushed: 3 months ago

hdfchain/hdflibwallet

Size: 46.7 MB - Last synced: 11 months ago - Pushed: over 4 years ago

JoeGruffins/dcrwallet Fork of decred/dcrwallet
A secure Decred wallet daemon written in Go (golang).

Size: 14.2 MB - Last synced: about 1 year ago - Pushed: about 1 year ago

matheusd/dcrlnd Fork of decred/dcrlnd
Decred Lightning Network Daemon ⚡️

Size: 73.3 MB - Last synced: 3 months ago - Pushed: 3 months ago

vctt94/dcrdex Fork of decred/dcrdex

Size: 43.6 MB - Last synced: almost 2 years ago - Pushed: about 2 years ago

buck54321/dcrdex Fork of decred/dcrdex

Size: 108 MB - Last synced: 11 days ago - Pushed: 11 days ago

jrick/release
Experimental Decred release tool

Size: 808 KB - Last synced: about 1 month ago - Pushed: over 2 years ago

fguisso/awesome-dcrlnd
awesome dcrlnd examples and resources

Size: 24.4 KB - Last synced: 9 days ago - Pushed: about 5 years ago

mcdanielU/ticketbuyer

Size: 31.3 KB - Last synced: about 1 year ago - Pushed: about 5 years ago

qianniancn/godcr Fork of planetdecred/godcr

Size: 5.69 MB - Last synced: almost 2 years ago - Pushed: over 3 years ago

3dpasspool/DCRN

Size: 26.8 MB - Last synced: 6 months ago - Pushed: 10 months ago