* gaiad gentx subcommands refactoring
- Replace STDIN/STDOUT redirection in `gaiad gentx` with subcommands
command line options to redirect streams to file since viper does
not handle redirection well.
- Use `BuildCreateValidatorMsg` to build a `MsgCreateValidator` rather
than redirecting to `gaiacli tx stake create-validator`.
- `PrintUnsignedStdTx` now takes an `io.Writer` object.
- Mark `--pubkey`, `--amount` and `--moniker` as required flags
instead of validating them manually.
- Use stake.NewDescription() to make a new Description - ref #2835
* Refresh PENDING.md
* Move query and tx commands to modules
* Move GetAccountDecoder to prevent import cycle and replace calls to it with one call in WithAccountDecoder
* Add moduleClients interface and implement in all applicable modules
* Use module clients in cli initialization
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
In order to guarantee a secure connection between apps and the LCD the
communication must be encrypted - even if clients and server run on the
same local machine, credentials must never be transmitted in clear text.
Upon start up, the server generates a self-signed certificate and a key.
Both are stored as temporary files; removal is guaranteed on exit.
This new behaviour is now enabled by default, though users are provided
with a --insecure flag to switch it off.
* Cherry picked commits from prev branch
* Added new keepers for querier functionalities
* Renaming
* Fixed gov errors and messages
* Added Querier to stake and app
* Update delegation keepers
* REST Queriers not working
* Fix marshalling error
* Querier tests working
* Pool and params working
* sdk.NewCoin for test handler
* Refactor and renaming
* Update LCD queries and added more tests for queriers
* use sdk.NewCoin
* Delegator summary query and tests
* Added more tests for keeper
* Update PENDING.md
* Update stake rest query
* Format and replaced panics for sdk.Error
* Refactor and addressed comments from Sunny and Aleks
* Fixed some of the errors produced by addr type change
* Fixed remaining errors
* Updated and fixed lite tests
* JSON Header and consistency on errors
* Increased cov for genesis
* Added comment for maxRetrieve param in keepers
* Comment on DelegationWithoutDec
* Bech32Validator Keepers
* Changed Bech validator
* Updated remaining tests and bech32 validator
* Addressed most of Rigel's comments
* Updated tests and types
* Make codec to be unexported from keeper
* Moved logic to query_utils and updated tests
* Fix linter err and PENDING
* Fix err
* Fix err
* Fixed tests
* Update PENDING description
* Update UpdateBondedValidatorsFull
* Update iterator
* defer iterator.Close()
* delete comment
* Address some of Aleks comments, need to fix tests
* export querier
* Fixed tests
* Address Rigel's comments
* More tests
* return error for GetDelegatorValidator
* Fixed conflicts
* Fix linter warnings
* Address @rigelrozanski comments
* Delete comments
* wire ––> codec
* Change --gas=0 semantic and introduce --gas=simulate
Make --gas flag accept a conventional "simulate" string value in addition
to integers. Passing --gas=simulate would trigger the tx simulation and
set the gas according to the gas estimate returned by the simulation.
Any other integer value passed to --gas would be interpreted as-is and
and set as gas wanted value.
Closes: #2300
* Add test cases with gas=0
* ACK suggestion from @alexanderbez
* s/GasFlagSimulateString/GasFlagSimulate/
* Drop TODO comment on Gas type
* Enrich TODO with ref
- replace with and unexported struct and amino's ability to override /
implement MarshalJSON & UnmarshalJSON to have the pub key bechified
- replaced default time to UTC as I (from London) always got an error
while decoding (epoch but in BST ;-)
- remove all occurrences of `BechValidator