New genesis workflow:
* `gaiad init` is now used to generate an empty `genesis.json`.
* Genesis accounts need to be populated manually before running
`gaiad collect-gentxs`.
* This should support starfish too, see #2615 for more info.
* Closes: #2596#2615
* Validate validator address and address against respective account ex ante
* Fix local testnet failures
* New genesis tests
* Run make format
* Add --pubkey flag
* gaiad collect-gentxs takes no args
Make simulation use a transition matrix for block size
This enables simulating periods of high load, and periods of low to no load.
(low load because future ops will still terminate in that time frame)
- Exit with error if the user is attempting to sign with a key
whose address is not among those who are expected to sign
the transaction.
- Add --print-signature-only to output only the generated
signature.
Rework the process of loading a genesis.json file to load a starting app state and set of initial transactions to process.
* New function to create genesis account from MsgCreateValidator
* Add arg to PrintUnsignedStdTx() to actually operate in offline mode
* New func processStdTxs()
* Remove gen-tx command
* Cleanup, return validators as they need to be written into genesis.json
* Modify gaiad init to allow auto-create of stdTx
* Remove server/testnet.go
* Don't load node_key.json, which might not be available
* Get the txs through DeliverTx
* Add app.slashingKeeper.AddValidators at the end of genesis
* On InitChain(), Signature's account number must be 0
* Add (tentative?) command to generate {node_key,priv_validator}.json files
* Reintroduce gaiad testnet
* Prompt user for passwords
* Update gaia to work with auth.StdTx
* Remove test_utils, NewTestGaiaAppGenState is now deprecated
* Combine --genesis-format and --generate-only
* Improve sign command's --offline flag documentation
* Moniker must be set
* Call app.slashingKeeper.AddValidators() even if len(txs) == 0
* Refactoring, introduce gaiad init --skip-genesis, code cleanup
* Drop unnecessary workaround to make lcd_tests pass
* Reintroduce gentx
* Simple name changes, GenesisState.Txs -> .GenTxs; OWK -> OverwriteKey; OverwriteKeys -> OverwriteKey
* crypto/keys/hd: use btcec to remove dep on tendermint
* crypto/keys/bcrypt: improve comment about fork
* crypto/keys/bip39 -> crypto/keys/bip39/fundraiser
* crypto/keys/bip39: bring in fork of tyler-smith
* crypto/keys/hd: update dep
* crypto/keys: update deps
* crypto/keys: move mintkey.go into new crypto/keys/mintkey
* crypto/keys/hd: NewParamsFromPath
* crypto/keys: keybase.Derive takes a bip39 passphrase too
* crypto/keys/hd: BIP44Params.DerivationPath
* gaiacli keys: add commands new and mnemonic
* fix lints
* minor fixes from review
* update Gopkg.toml
* add tendermint fork of golang.org/x/crypto
* pin some transitive deps
* crypto/keys/bcrypt: remove
* remove in favour of fork of golang.org/x/crypto/bcrypt at github.com/tendermint/crypto/bcrypt
* crypto/keys/bip39: remove completely
* use fork cosmos/go-bip39 instead
* Gopkg.toml: dont use master
* Pull in changes from my PR
* fixes from review
* enforce min len for --unsafe-entropy
* lint fix
* feedback from review
* fix dep
* Add arg to PrintUnsignedStdTx() to actually operate in offline mode
* WIP simplifying server module
* Expose ExternalIP()
* Move {GenTx,Init}Cmd into gaia's new init package
This is basically copying over @anton's great script!
Also had to run `make format` to make this pass `test_lint`.
This PR also makes the make commands for tools further align
with the tendermint implementation.
* Refactor InitializeTestLCD to initialize correctly
* Update InitializeTestLCD API usage in LCD unit tests
* Update pending log
* Update named return variables
* Increase power of validator proposer in LCD tests
* Allow a gaia-cli config file to be created
Closes#1613.
Closes#1275.
Closes#1956.
* Add homedir to Gopkg.toml
* Updates from code review
* Post-rebase fixes
* Update test
* Code review refactor
* Fixes from code review
* Fix import
* Fix broken test
* Fixes from rebase
* Fix formatting
* Allow --from to be a name or an address
Closes#1735.
* Post-rebase fixes
* Updates from code review
* Updates from code review
* Updates from code review
* Fix merge artifacts
* Fix merge conflicts
* Fix integration tests
* Add back GetFromName() check broken during merge
* Code review updates
* Fix failing test
* Updates from code review