mirror of
https://github.com/kaspanet/kaspad.git
synced 2026-02-28 06:03:19 +00:00
This commit adds all of the infrastructure needed to support BIP0009
soft forks.
The following is an overview of the changes:
- Add new configuration options to the chaincfg package which allows the
rule deployments to be defined per chain
- Implement code to calculate the threshold state as required by BIP0009
- Use threshold state caches that are stored to the database in order
to accelerate startup time
- Remove caches that are invalid due to definition changes in the
params including additions, deletions, and changes to existing
entries
- Detect and warn when a new unknown rule is about to activate or has
been activated in the block connection code
- Detect and warn when 50% of the last 100 blocks have unexpected
versions.
- Remove the latest block version from wire since it no longer applies
- Add a version parameter to the wire.NewBlockHeader function since the
default is no longer available
- Update the miner block template generation code to use the calculated
block version based on the currently defined rule deployments and
their threshold states as of the previous block
- Add tests for new error type
- Add tests for threshold state cache
mining
[]
(https://travis-ci.org/btcsuite/btcd) ![ISC License]
(http://img.shields.io/badge/license-ISC-blue.svg)
[
]
(http://godoc.org/github.com/btcsuite/btcd/mining)
Overview
This package is currently a work in progress.
Installation and Updating
$ go get -u github.com/btcsuite/btcd/mining
License
Package mining is licensed under the copyfree ISC License.