dcrd/go.mod
Dave Collins ce852eb852
blockchain: Do coinbase nulldata check locally.
This refactors the consensus code which extracts the null data from the
coinbase from txscript.ExtractCoinbaseNullData so that it is performed
directly in the validation code where it more properly belongs.

The only reason the extraction was previously done in txscript is
because it was not possible to parse scripts outside of it, but that is
no longer the case now that txscript offers an exported tokenizer for
that purpose.

The extraction code is ever so slightly more efficient now that it no
longer needs to be as generic since it now has direct knowledge of the
conditions that need to be handled.

Great care was taken to ensure the semantics are not changed while
refactoring the code and no additional tests are added in this commit
because all of the conditions and code paths are covered by the tests
recently added to the full block tests.

While here, also perform some related code cleanup in the function and
improve the error messages .

Since the txscript.ExtractCoinbaseNullData is no longer necessary, this
deprecates the function and releated error code and constant so they can
be removed in the next major version of txscript.

Finally, since this relies on the script tokenizer which is not yet in a
released version of the txscript module, bump the requirement to include
an as yet unreleased version of txscript to ensure the next time the
blockchain module is released, it will require a newer version of
txscript to be released first.
2019-06-19 13:26:33 -05:00

62 lines
2.2 KiB
Modula-2

module github.com/decred/dcrd
go 1.11
require (
github.com/btcsuite/go-socks v0.0.0-20170105172521-4720035b7bfd
github.com/btcsuite/winsvc v1.0.0
github.com/decred/base58 v1.0.0
github.com/decred/dcrd/addrmgr v1.0.2
github.com/decred/dcrd/blockchain v1.1.1
github.com/decred/dcrd/blockchain/stake v1.1.0
github.com/decred/dcrd/certgen v1.0.2
github.com/decred/dcrd/chaincfg v1.5.1
github.com/decred/dcrd/chaincfg/chainhash v1.0.1
github.com/decred/dcrd/connmgr v1.0.2
github.com/decred/dcrd/database v1.0.3
github.com/decred/dcrd/dcrec v1.0.0
github.com/decred/dcrd/dcrec/secp256k1 v1.0.2
github.com/decred/dcrd/dcrjson/v2 v2.0.0
github.com/decred/dcrd/dcrutil v1.3.0
github.com/decred/dcrd/fees v1.0.0
github.com/decred/dcrd/gcs v1.0.2
github.com/decred/dcrd/hdkeychain/v2 v2.0.0
github.com/decred/dcrd/lru v1.0.0
github.com/decred/dcrd/mempool/v2 v2.0.0
github.com/decred/dcrd/mining v1.1.0
github.com/decred/dcrd/peer v1.1.0
github.com/decred/dcrd/rpcclient/v2 v2.0.0
github.com/decred/dcrd/txscript v1.1.0
github.com/decred/dcrd/wire v1.2.0
github.com/decred/dcrwallet/rpc/jsonrpc/types v1.0.0
github.com/decred/slog v1.0.0
github.com/gorilla/websocket v1.4.0
github.com/jessevdk/go-flags v1.4.0
github.com/jrick/bitset v1.0.0
github.com/jrick/logrotate v1.0.0
golang.org/x/crypto v0.0.0-20190611184440-5c40567a22f8
)
replace (
github.com/decred/dcrd/addrmgr => ./addrmgr
github.com/decred/dcrd/blockchain => ./blockchain
github.com/decred/dcrd/blockchain/stake => ./blockchain/stake
github.com/decred/dcrd/certgen => ./certgen
github.com/decred/dcrd/chaincfg/chainhash => ./chaincfg/chainhash
github.com/decred/dcrd/connmgr => ./connmgr
github.com/decred/dcrd/database => ./database
github.com/decred/dcrd/dcrec => ./dcrec
github.com/decred/dcrd/dcrjson/v2 => ./dcrjson
github.com/decred/dcrd/fees => ./fees
github.com/decred/dcrd/gcs => ./gcs
github.com/decred/dcrd/hdkeychain/v2 => ./hdkeychain
github.com/decred/dcrd/limits => ./limits
github.com/decred/dcrd/lru => ./lru
github.com/decred/dcrd/mempool/v2 => ./mempool
github.com/decred/dcrd/mining => ./mining
github.com/decred/dcrd/peer => ./peer
github.com/decred/dcrd/rpcclient/v2 => ./rpcclient
github.com/decred/dcrd/txscript => ./txscript
github.com/decred/dcrd/wire => ./wire
)