Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

multi: Resurrect regression network. #1480

Merged
merged 1 commit into from
Oct 10, 2018

Conversation

davecgh
Copy link
Member

@davecgh davecgh commented Oct 5, 2018

This resurrects the regression test network that was removed before initial launch although it really should not have been. The simulation test network and the regression test network do not serve the same purpose. Specifically, the regression test network is intended for unit tests, RPC server tests, and consensus tests. On the other hand, the simulation test network is intended for private use within a group of individuals doing simulation testing and full integration tests between different applications such as wallets, voting service providers, mining pools, block explorers, and other services that build on Decred.

Keeping the concerns separate will allow the simulation test network to be modified in ways such as activating consensus changes that have been successfully voted into mainnet without also needing to vote them in on the simulation test network while still preserving the ability for the unit tests to properly test the voting semantics and handling to help prevent regressions.

In addition to resurrecting the regression test network, this also fully fleshes out new values for the various addresses prefixes (Rk, Rs, Re, etc), HD key prefixes (rprv, rpub), and treasury multisig details.

As a part of resurrecting the network, a new CLI flag --regnet is added to allow the RPC test harness connect to a running instance, the areas of the code which involve votes have been modified to allow the
votes to apply to the new network, and tests have been added to the relevant modules.

This bumps the affected module versions as follows:

  • github.com/decred/dcrd/wire@v1.2.0
  • github.com/decred/dcrd/chaincfg@v1.2.0
  • github.com/decred/dcrd/dcrutil@v1.2.0
  • github.com/decred/dcrd/hdkeychain@v1.1.1

The blockchain module is also affected, but since its version has already been bumped since the last release tag, it is not bumped again.

Finally, this does not include switching unit tests or the RPC test harness over the new network since that will be done in a separate commit.

chaincfg/genesis_test.go Outdated Show resolved Hide resolved
chaincfg/genesis_test.go Show resolved Hide resolved
This resurrects the regression test network that was removed before
initial launch although it really should not have been.  The simulation
test network and the regression test network do not serve the same
purpose.  Specifically, the regression test network is intended for unit
tests, RPC server tests, and consensus tests.  On the other hand, the
simulation test network is intended for private use within a group of
individuals doing simulation testing and full integration tests between
different applications such as wallets, voting service providers, mining
pools, block explorers, and other services that build on Decred.

Keeping the concerns separate will allow the simulation test network to
be modified in ways such as activating consensus changes that have been
successfully voted into mainnet without also needing to vote them in on
the simulation test network while still preserving the ability for the
unit tests to properly test the voting semantics and handling to help
prevent regressions.

In addition to resurrecting the regression test network, this also fully
fleshes out new values for the various addresses prefixes (Rk, Rs, Re,
etc), HD key prefixes (rprv, rpub), and treasury multisig details.

As a part of resurrecting the network, a new CLI flag `--regnet` is
added to allow the RPC test harness connect to a running instance, the
areas of the code which involve votes have been modified to allow the
votes to apply to the new network, and tests have been added to the
relevant modules.

This bumps the affected module versions as follows:

- github.com/decred/dcrd/wire@v1.2.0
- github.com/decred/dcrd/chaincfg@v1.2.0
- github.com/decred/dcrd/dcrutil@v1.2.0
- github.com/decred/dcrd/hdkeychain@v1.1.1

The blockchain module is also affected, but since its version has
already been bumped since the last release tag, it is not bumped again.

Finally, this does not include switching unit tests or the RPC test
harness over the new network since that will be done in a separate
commit.
@davecgh davecgh merged commit 47ade78 into decred:master Oct 10, 2018
@davecgh davecgh deleted the multi_resurrect_regnet branch October 10, 2018 00:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants