Commit Graph

634 Commits

Author SHA1 Message Date
Christopher Goes 42402d3f97 Check error 2018-11-14 18:23:20 -08:00
Christopher Goes 17b9afaaa7 Export specific height 2018-11-14 18:23:20 -08:00
rigelrozanski 7be5179982 Merge remote-tracking branch 'origin/develop' into rigel/deliver-max-gas 2018-11-14 14:45:02 -05:00
Christopher Goes 2bff5c2838
Merge PR #2748: Fix governance simulation, more import/export work 2018-11-14 19:20:50 +01:00
Sunny Aggarwal d1614ebb7e R4R: Query Gov Params (#2576)
* gov query params
2018-11-13 15:45:37 -08:00
Jack Zampolin f38f57dfb2 Fix CLI tests 2018-11-13 11:33:03 -08:00
Jack Zampolin 4ebe99b00f add back in CLI command after rebase 2018-11-13 11:10:06 -08:00
Jack Zampolin 695395aca8
Merge branch 'develop' into sunny/get_all_delegations_validator_querier 2018-11-13 11:07:36 -08:00
Jack Zampolin 12ad39ea96
R4R: Reorganize CLI command structure. (#2728)
* Reorganize CLI command structure. Fixes #2575
2018-11-13 11:03:47 -08:00
rigelrozanski ebaa39468a modified app provider to pass genesis 2018-11-13 13:01:18 -05:00
Jack Zampolin 17c119dff7 Fix failing test 2018-11-13 08:27:42 -08:00
Christopher Goes 10713e3c8a Working on stake import/export 2018-11-13 15:08:14 +01:00
Jack Zampolin b255a7d59f
Merge branch 'develop' into sunny/get_all_delegations_validator_querier 2018-11-12 14:09:18 -08:00
Aleksandr Bezobchuk 964123356b Fix required flag 2018-11-12 15:44:59 -05:00
Jack Zampolin 4df780b1dc
Merge branch 'develop' into bez/require-moniker-init 2018-11-12 12:08:38 -08:00
Jack Zampolin ac8f2dabd4
Merge branch 'develop' into jack/query-tx-reorg 2018-11-12 11:10:52 -08:00
Christopher Goes 0228d8f694
Merge branch 'develop' into dev/sim_msg_edit_val 2018-11-12 19:57:54 +01:00
Alessio Treglia 70826495b8 Merge PR #2752: Don't hardcode bondable denom 2018-11-12 19:54:18 +01:00
Aleksandr Bezobchuk 8c14b1d77f Fix test coverage 2018-11-12 08:45:05 -05:00
Aleksandr Bezobchuk 08a1667246 Require moniker instead of generating a random one 2018-11-12 08:27:26 -05:00
Aleksandr Bezobchuk 29bec833f3 Update moniker prefix 2018-11-12 08:16:47 -05:00
Aleksandr Bezobchuk 156370ea9c Generate random moniker when missing 2018-11-12 08:15:08 -05:00
Jack Zampolin 056e75c30b
Merge pull request #2704 from cosmos/alessio/utility-to-add-accts-to-genesis
R4R: Add small utility to add account to genesis.json after gaiad init
2018-11-09 09:40:46 -08:00
Alessio Treglia 201abfec8c Add --chain-id to testnet command 2018-11-09 15:25:14 +00:00
Christopher Goes 4d1246dae9
Merge branch 'develop' into sunny/get_all_delegations_validator_querier 2018-11-09 15:28:03 +01:00
Alessio Treglia 8a7c4900f4 s/WriteGenesisFile/ExportGenesisFile/ 2018-11-09 10:59:11 +00:00
Alessio Treglia 4f6f8e09ae Add small utility to add account to genesis.json after gaiad init 2018-11-09 10:52:28 +00:00
Christopher Goes 94f45311a0 Fix state export/import, add to CI (#2690)
* Update slashing import/export
* More slashing.WriteGenesis
* Add test import/export to CI
* Store equality comparison.
* Fix validator bond intra-tx counter
* Set timeslices for unbonding validators
* WriteGenesis => ExportGenesis
* Delete validators from unbonding queue when re-bonded
* Hook for validator deletion, fix staking genesis tests
2018-11-08 16:28:28 -08:00
Federico Kunze 0ff12bb57a
Update cmd/gaia/cmd/gaiacli/main.go
Co-Authored-By: jackzampolin <jack.zampolin@gmail.com>
2018-11-08 08:25:18 -08:00
Jack Zampolin 8f4c7df033 Address PR comments 2018-11-08 08:24:34 -08:00
Jack Zampolin 1aae086f49 Fix typo 2018-11-07 16:48:55 -08:00
Jack Zampolin 0ab5d7639b Fix gobash CLI testing 2018-11-07 16:42:34 -08:00
Jack Zampolin cade5f552c Address linting issues 2018-11-07 15:38:30 -08:00
Jack Zampolin c20e383d7f Fix missing flags issue 2018-11-07 15:35:12 -08:00
Jack Zampolin d4fb6d4ebe Reorganize CLI command structure. Fixes #2575 2018-11-07 15:03:00 -08:00
Dev Ojha 817f515956
Merge branch 'develop' into dev/sim_msg_edit_val 2018-11-07 13:26:00 -08:00
Alexander Bezobchuk 4f46a4c4d5 Update testnet to use canonical genesis time (#2692)
* Update testnet to use canonical genesis time
* Fix linting in genesis test
2018-11-07 00:19:06 -08:00
Sunny Aggarwal 1d3a04a61c Switch gov proposal-queues to use iterators (#2638)
* switched gov proposals queue to use iterators
* update gov spec
* update proposal.Equal
* Amino api change
* switched proposalID to uint64
* renamed Gov Procedures to Params
* s/ActiveProposalQueueProposalKey/KeyActiveProposalQueueProposal/g
* numLatestProposals -> Limit
* fixed staking invariant breakage because of gov deposits
* Send deposits to DepositedCoinsAccAddr or BurnedDepositCoinsAccAddr
2018-11-06 23:33:18 -08:00
Christopher Goes dfddac394d Merge branch 'develop' into sunny/get_all_delegations_validator_querier 2018-11-05 11:56:32 +01:00
Christopher Goes 37abad4cc3 'make format' 2018-11-05 11:47:19 +01:00
Jae Kwon 336415baea
Fix simulation bugs; Incorprates #2676 from Sunny (#2677)
* Fix simulation bugs; Incorprates #2676 from Sunny
* Address review feedback; Update PENDING
2018-11-04 22:11:03 -08:00
Christopher Goes 256ec0f07b Simulation improvements (logging fix, random genesis parameters) (#2617)
* Print out initial update on every block
* Randomize simulation parameters
* Randomize initial liveness weightings
* Randomize genesis parameters
* fixed power store invariant
* IterateValidatorsBonded -> IterateBondedValidatorsByPower
* WriteValidators uses IterateLastValidators rather than IterateBondedValidatorsByPower
* fixed democoin interface

Closes #2556
Closes #2396

Via #2671:
closes #2669
closes #2670
closes #2620

Offshoot issues:
#2618
#2619
#2620
#2661
2018-11-04 20:44:43 -08:00
Alessio Treglia c20fcbfd8f New genesis workflow (#2602)
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
2018-11-04 20:26:46 -08:00
Alexander Bezobchuk 50926fffff Update to TM v0.26.0 - Part I (#2679)
* Update to TM v0.26.0
2018-11-04 18:28:38 -08:00
Sunny Aggarwal f8b030aece cli fixes 2018-11-03 22:56:33 -07:00
Sunny Aggarwal 2d429731b3 LCD and CLI 2018-11-03 22:55:38 -07:00
svaishnavy 9cf53f25f7 Merge PR #2614: Configurable Bech32 prefix for SDK users 2018-10-31 20:13:13 +01:00
Alessio Treglia 53f1233f0a
s/--print-sigs/--validate-signatures/ 2018-10-31 13:42:42 +00:00
Alessio Treglia a514295128
Fix integration tests 2018-10-31 13:42:42 +00:00
Alessio Treglia e65c02dd42
Fix integration tests 2018-10-31 13:42:42 +00:00
Dev Ojha 0d8325b859 Merge PR #2623: Speedup simulator by switching to goleveldb
Due to requiring app.Commit() at the moment, golevel db is significantly faster than a memdb
2018-10-30 00:10:39 +01:00
Federico Kunze 855e0ac70a Merge PR #2596: Cmds for validator unbondings and redelegations 2018-10-28 22:28:12 +01:00
Rigel d71f38bdac Merge PR #2597: Add distribution accum invariants 2018-10-26 13:42:53 +02:00
Jae Kwon 0f1fb179c4 Merge PR #2599 from cosmos/jae/dist_refactor
* Rename Pool -> DelRewards; PoolCommission -> ValCommision
* FeePool.Pool -> FeePool.ValPool
* WithdrawalHeight->DelPoolWithdrawalHeight
* OnValidatorBeginUnbonding
* Caught the bug's tail
* Update vi.FeePoolWithdrawalHeight upon bonding
* Fix staking slashUnbondingDelegation bug; fixes simulator failure #9
2018-10-26 13:27:55 +02:00
Christopher Goes 60d188ded0
Merge PR #2501: Simulate transactions for fee distribution, simulate inflation, and fix a multitude of bugs discovered in the process of doing so 2018-10-23 21:21:37 +02:00
Christopher Goes cd9373d6f3 Make linter happy 2018-10-23 20:34:09 +02:00
Christopher Goes 306fb8fb6d Address @rigelrozanski comments 2018-10-23 20:33:39 +02:00
Federico Kunze 8040a56116 update depositer addr 2018-10-23 19:49:34 +02:00
Christopher Goes edd56be952 Cleanup, additional item in PENDING.md 2018-10-23 18:29:39 +02:00
Christopher Goes 604de8599a Remove unnecessary change, clarify amt in sim_test.go 2018-10-23 18:24:06 +02:00
Christopher Goes 33c8238392 Merge branch 'develop' into cwgoes/check-supply-in-simulation 2018-10-23 17:54:58 +02:00
Federico Kunze b27e743a73 Update test 2018-10-23 16:28:10 +02:00
Federico Kunze 5ba376820c Add query deposits cmds 2018-10-23 16:07:28 +02:00
Christopher Goes c14fa12b0c Back to 50 initially bonded 2018-10-23 15:55:06 +02:00
rigelrozanski 8999ee8797 re-enable simulation parameters 2018-10-23 00:53:06 -04:00
Jae Kwon fa3730a5d2 WIP looking for bug... 2018-10-22 19:48:28 -07:00
Jae Kwon 1630c0f0f3 WIP intermediate... 2018-10-22 19:02:52 -07:00
Jae Kwon c3008d585b Add more useful logging 2018-10-22 16:24:19 -07:00
rigelrozanski c4d7747a56 Merge remote-tracking branch 'origin/cwgoes/check-supply-in-simulation' into jae/check-supply-in-simulation 2018-10-22 15:51:52 -04:00
rigelrozanski 278d23776b call hook on slashing 2018-10-22 14:59:00 -04:00
Jae Kwon 1cc74320df Replicate Rigel's changes but w/ modifications as discussed + some name changes 2018-10-22 01:46:47 -07:00
Alessio Treglia 6014089fa1
Rename AccountMapper to AccountKeeper
Closes: #2540
2018-10-20 23:22:48 -07:00
Christopher Goes 7770aec306 Withdraw rewards on bonded to unbonding 2018-10-20 00:13:44 +02:00
Christopher Goes 1afb5bf9d2 Simulate minting, fix bug where pool was not updated 2018-10-19 23:01:23 +02:00
Christopher Goes 22cb6983b7 Merge branch 'develop' into cwgoes/check-supply-in-simulation 2018-10-19 20:36:55 +02:00
Rigel b48d0d5623 Merge PR #2527: Minting 2018-10-19 20:36:00 +02:00
Christopher Goes 375e821e98 Merge branch 'develop' into cwgoes/check-supply-in-simulation 2018-10-19 20:02:48 +02:00
Alessio Treglia 593921d04d Merge PR #2524: Replace GenTx with StdTx
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
2018-10-19 20:00:27 +02:00
Christopher Goes 4779359e29 Linter, enable simulated distribution msgs again 2018-10-19 03:21:11 +02:00
Christopher Goes 42ae2671c2 Simulation fixes work-in-progress 2018-10-19 03:08:25 +02:00
Christopher Goes e099491daa
Merge PR #2526: Distribution fixes from simulation 2018-10-18 21:58:57 +02:00
Christopher Goes b700107bec Add simulated distribution msgs 2018-10-17 00:25:31 +02:00
rigelrozanski 32e0f14de2 rework to correctly use previous vote info 2018-10-15 22:09:13 -04:00
rigelrozanski eaecde2790 test_utils >:( 2018-10-15 16:52:39 -04:00
rigelrozanski 2f4a01bcba address @ValarDragon comments, param store update 2018-10-15 15:51:51 -04:00
rigelrozanski 5de0c9a1f8 Merge remote-tracking branch 'origin/develop' into rigel/fee-distribution 2018-10-15 02:43:36 -04:00
rigelrozanski 2ece2ff37c address @cwgoes comments 2018-10-15 02:34:01 -04:00
rigelrozanski dba20d1725 Merge remote-tracking branch 'origin/develop' into rigel/fee-distribution 2018-10-12 06:06:24 -04:00
mossid 674d3d6dbc fix gaiadebug 2018-10-12 00:19:13 +09:00
mossid 42c7a09075 Merge branch 'develop' into joon/paramstore-refactor-base 2018-10-12 00:09:07 +09:00
Alessio Treglia 0f4a03b44e Alessio/server refactor (#2472)
* 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
2018-10-10 15:45:41 -07:00
mossid 5c92a546c6 rename store subspace, add WithTypeTable 2018-10-11 05:01:30 +09:00
mossid 03975407ba Merge branch 'develop' into joon/paramstore-refactor-base 2018-10-10 21:20:59 +09:00
rigelrozanski fc9bafb8d3 Merge remote-tracking branch 'origin/develop' into rigel/fee-distribution 2018-10-09 20:19:22 -04:00
Christopher Goes e251088672
Merge PR #2452: Fix LCD Validator Initialization 2018-10-09 20:10:37 +02:00
Zaki Manian d6be4fcf69 Merge PR #2455: Print out all 3 public key encoding with gaiadebug 2018-10-09 06:26:56 +02:00
rigelrozanski 600532575b Merge remote-tracking branch 'origin/develop' into rigel/fee-distribution 2018-10-08 20:15:17 -04:00
Sunny Aggarwal cd21427a7b Merge PR #2405: Unbonding and Redelegations Queue 2018-10-08 06:43:47 +02:00
Dev Ojha d661ccb30e Merge PR #2450: Add ValidateGenesis to staking, add more tests 2018-10-08 06:12:37 +02:00
Aleksandr Bezobchuk 18dce870d9 Fix linting 2018-10-08 02:54:23 +08:00
Aleksandr Bezobchuk 975065724b Revert back to 100 power for proposing validator 2018-10-08 02:51:29 +08:00
Aleksandr Bezobchuk 2527e1fa3b Implement NewTestGaiaAppGenState and update LCD test bonding 2018-10-08 00:57:52 +08:00
mossid 4bf14c5650 apply request finalize, fix lint 2018-10-07 01:12:01 +09:00
mossid 7a68b376bd apply requests in progress 2018-10-07 01:12:01 +09:00
mossid 7d49675600 apply requests in progress 2018-10-07 01:12:01 +09:00
mossid 991ac424d2 fix gaia 2018-10-07 01:12:00 +09:00
mossid 35a80e6563 fix gaiadebug 2018-10-07 01:12:00 +09:00
mossid 267990816f fix gaia 2018-10-07 01:12:00 +09:00
mossid 37ce8d51c6 apply requests 2018-10-07 01:12:00 +09:00
mossid cc0e2c9523 paramstore refactor base
rm debug code

fix lint

fix hack.go
2018-10-07 01:11:59 +09:00
rigelrozanski e304b9c600 debugging simulation 2018-10-05 20:32:06 -04:00
rigelrozanski 17dc812749 fix distribution endblocker issues 2018-10-04 20:20:43 -04:00
rigelrozanski 45f0dd0e3b Merge remote-tracking branch 'origin/develop' into rigel/fee-distribution 2018-10-04 18:33:12 -04:00
HaoyangLiu 9f67e8af20 Merge PR #2215: Add swagger-ui for gaiacli lite-server 2018-10-04 13:00:24 +02:00
Christopher Goes 17983460b8
Merge PR #2219: Update to Tendermint 0.24 (except NextValSet offsets) 2018-10-03 17:48:23 +02:00
Dev Ojha 9410b6287c Merge PR #2425: simulation: Make bank testing auth configurable 2018-10-02 14:01:18 +02:00
rigelrozanski 733b616c8c disable endblock for lcd 2018-09-28 04:15:03 -04:00
rigelrozanski 7ab02aed76 lcd tests to include proposer 2018-09-28 04:02:07 -04:00
rigelrozanski 60a3541380 major debugs 2018-09-28 03:29:52 -04:00
rigelrozanski 436d2a0178 Merge remote-tracking branch 'origin/develop' into rigel/fee-distribution 2018-09-27 22:48:16 -04:00
rigelrozanski 0436f50c00 ... 2018-09-27 19:54:41 -04:00
Dev Ojha cb86efa054 Merge PR #2376: auth: Don't recalculate mempool fees for every msg signer, misc. cleanup
This PR begins improving the godocs for the auth module, and begins cleaning
up the Ante handler.

Additionally we previously calculated if the fee was sufficient for the tx
on every single signer. This is now refactored to be more efficient, and have
a better logical flow. No changelog entry as this is new to this release.
2018-09-27 02:34:01 +08:00
Alessio Treglia a2caefc8ae Merge PR #2390: CLI subcommands reorganization 2018-09-26 22:00:49 +08:00
Rigel b54801b4b3 [RETRY] Distr-PR-3 More staking hooks (#2404)
* update commission hook for new commission work
* comment update
2018-09-25 23:11:57 -07:00
rigelrozanski 3846894c3a Merge branch 'rigel/new-hooks' into rigel/fee-distribution 2018-09-25 20:09:33 -04:00
rigelrozanski 9e9756a6a9 Merge remote-tracking branch 'origin/develop' into rigel/new-hooks 2018-09-25 18:31:12 -04:00
rigelrozanski 47e899bb61 Merge remote-tracking branch 'origin/develop' into rigel/fee-distribution 2018-09-25 17:45:48 -04:00
Matthew Slipper 2fb3493ff5 Merge PR #2223: Gaia CLI Config Command
* 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
2018-09-25 17:36:42 -04:00
Jae Kwon c31c0d2822 Merge remote-tracking branch 'origin/dev/simulation_remove_pubkey_ops' into develop 2018-09-24 21:29:41 -07:00
rigelrozanski f5116b9d57 Merge branch 'rigel/truncate-decimal' into rigel/new-hooks 2018-09-24 22:52:12 -04:00
Alexander Bezobchuk 9dafa3252d Merge PR #2365: Validator Commission Model
* Update validator commission fields

* Remove CommissionChangeToday and update to use CommissionChangeTime

* Implement commission as a first class citizen type

* Implement stringer for Comission

* Move commission type and logic to new  file

* Add new commission errors

* Add commission to create validator message

* Implement and call UpdateValidatorCommission

* Update godoc for UpdateValidatorCommission

* Add Abs to the decimal type

* Implement new SetValidatorCommission

* Update decimal short godocs

* Move set initial commission logic

* Move initial commission validation to Commission type

* Update initial validator commission logic and unit tests

* Remove commission update time from struct and move to validator

* Update validator create handler tests

* Implement commission logic for CLI

* Fix make lint failure

* Fix make cover failure

* Update edit validator logic to handle new commission rate

* Fix lint and cover

* Update create/edit validator simulation to include commission params

* Update MsgEditValidator godoc

* Update pending log

* Update staking tx docs

* Fix CLI create validator test

* Update variables names for commission  strings

* Merge UpdateTime into Commission type

* Update create-validator usage in docs

* Update more docs with examples

* More doc updates
2018-09-24 18:23:58 -04:00
Dev Ojha 8774adc7de Merge PR #2375: Add an example for the size of a transaction
* Add an example for the size of a transaction

This shows that the size of a send tx from 1 input to 1 output is 173 bytes
This is good information to have, though we need to find the correct place
to put it.

* fix lint
2018-09-24 16:08:43 -04:00
ValarDragon bb624b36aa simulation: Use a simulation.Account struct
This removes privkeys and addresses from function signatures.
This comes with a 11% performance improvement to the simulator,
as we no longer keep recomputing the pubkeys.
Once we move the transient store clearing to endblock, we can
further raise the size of make test_sim_gaia_fast

concretely, `make test_sim_gaia_fast` went from 16.8 seconds to 13.5 seconds on my system.
2018-09-22 20:33:32 -07:00
rigelrozanski 6f35822d7d import hook from fee-distr 2018-09-22 16:29:42 -04:00
rigelrozanski 0d9105cf7c ... 2018-09-20 20:10:26 -04:00
Jessy Irwin 9b6b00689c Merge PR #2361: Remove IBC entrypoints 2018-09-20 22:51:14 +08:00
rigelrozanski 251a81f589 yay it compiles 2018-09-20 00:53:48 -04:00
rigelrozanski 5790f33159 ... 2018-09-19 23:01:55 -04:00
rigelrozanski 97f7dbc5e6 Merge remote-tracking branch 'origin/develop' into rigel/fee-distribution 2018-09-19 13:25:23 -04:00
Alessio Treglia b74a6a9066 Merge PR #2328: Support min fees-based anti spam strategy 2018-09-19 23:25:52 +08:00
rigelrozanski de4071f693 aliases, errors 2018-09-19 00:42:05 -04:00
rigelrozanski 73c5fdf1f9 more cli related 2018-09-19 00:10:33 -04:00
rigelrozanski bb9e647f95 add in basic commission stuff 2018-09-18 17:54:28 -04:00
rigelrozanski 24e43b9869 hookwork 2018-09-18 12:46:04 -04:00
rigelrozanski 431fdb8695 hook, genesis, and withdraw address 2018-09-17 23:02:15 -04:00
Dev Ojha 9cf40e2df5 Merge PR #2337: Update revoked -> jailed in the docs, and in minor places within cmd 2018-09-15 02:52:23 +08:00
Federico Kunze d195cc15ed Merge PR #2249: Staking Querier pt1
* 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
2018-09-13 17:23:44 -04:00
Dev Ojha 6b55093c75 Merge PR #2324: rename wire to codec
* rename wire to codec

* fix formatting and cli

* fix the docs
2018-09-13 14:17:32 -04:00
Rigel 5bf9401e87
Merge PR #2310: staking transient store for Tendermint Updates
* working

* non-tests compile

* fix mounting error, working on testing

* stumped using transient store

* joon comments

* remove old comments

* resolve ibc error

* lint/sim_test

* fix determinism sim test

* sim enable commit

* docs and pending
2018-09-13 00:53:55 -04:00
Dev Ojha e5e7c4fa0f Merge PR #2303: simulation: Add weighted operation 2018-09-12 15:16:52 +08:00
Alessio Treglia fb0cc0b078 Merge PR #2306: Change --gas=0 semantic and introduce --gas=simulate
* 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
2018-09-11 20:31:30 -04:00
Dev Ojha 962b04d985 Merge PR #2285: simulation: Write logs on panic 2018-09-11 17:18:58 +08:00
Alexander Bezobchuk e13cdc0260 Merge PR #2146: x/bank: Keeper Interfaces
* Update banking module to implement and use keeper interfaces

* Cleanup/consolidate x/bank keeper interface
2018-09-10 14:25:34 -04:00
Dev Ojha 173ed6a63d Merge PR #2282: simulation: Switch the log method from a single string to string builders 2018-09-09 23:34:09 +08:00
Dev Ojha 8b8028e0dd Merge PR #2280: genesis: Ensure no dup validators, or bonded and revoked validators 2018-09-09 23:23:51 +08:00
Dev Ojha 1a700206b8 Merge PR #2275: genesis: Ensure there are no duplicate accounts in genesis file
This also contains a light refactor of genesis state parsing, so that
the tests file didn't duplicate a lot of this code.
2018-09-08 17:29:34 +08:00
Alessio Treglia 4448d175ad Merge PR #2240: New broadcast command
Implement broadcast command/REST endpoint to submit transactions
generated offline with --generated-only and the sign command.
2018-09-08 17:26:20 +08:00
Alexander Bezobchuk 0edfa17b53 Merge PR #2251: Refactor Bech32 Prefixes and Nomenclature of Validator Pubkey and Operator 2018-09-08 16:44:58 +08:00
Alessio Treglia f68e5a7542 Merge PR #2266: Fix CLI commands JSON output
When running with --json, commands should produce
correctly JSON-encoded output.
2018-09-08 16:33:55 +08:00
ValarDragon e812919649 Rename coinKeeper -> bankKeeper
Closes #2267
2018-09-07 22:34:32 -07:00
Christopher Goes 44b695c3c0
Merge PR #2226: simulation: Make governance simulation use future operations to schedule votes 2018-09-07 19:01:33 +02:00
Alessio Treglia f5a7f2524f
ACK and incorporate @cwgoes comments 2018-09-07 15:27:06 +01:00
Alessio Treglia e6a8a4df55
Implement command/REST endpoint for offline tx sign off #1953
* Add sign CLI command to sign transactions generated with the
  --generate-only flag.
* Add /sign REST endpoint for Voyager support.

Redirect password prompt to STDERR to avoid messing up cli
commands output. As a rule of thumb, program's output should
always go to STDOUT, whilst errors&diagnostics go to STDERR
as per POSIX's philosophy and specs.
2018-09-07 12:57:50 +01:00
Christopher Goes a6120686f9
Merge PR #2165: Implement generate-only option for commands that create txs 2018-09-05 01:12:03 +02:00
Alessio Treglia 8c32a8f229
Check generate_only's output is actually unsigned 2018-09-04 15:06:55 +02:00
ValarDragon 5ed24e44d2 simulation: Minor changes
Now that we properly initialize governance, a ton of governance slashing
doesn't happen in the first few blocks. Because of this, we can run through
blocks in the range (0,200) quite rapidly. This PR acknowledges that and
increases many of the default block heights.
2018-09-03 19:15:51 -07:00
ValarDragon 753e58bac0 simulation: Make governance simulation use future operations to schedule
votes.

In a future PR, functionality to test that slashing occured properly should be added.
2018-09-03 18:30:18 -07:00
Alessio Treglia 86395809cb
Implement generate-only option for commands that create txs
The new CLI flag builds an unsigned transaction and writes it to STDOUT.
Likewise, REST clients can now append generate_only=true to a request's
query arguments list and expect a JSON response carrying the unsigned
transaction.

Closes: #966
2018-09-04 02:32:05 +02:00
ValarDragon 8a452b940a simulation: display db size at end of simulation, add makefile entries 2018-09-01 19:09:27 -07:00
Dev Ojha 5643c0801b Merge branch 'develop' into dev/benchmark_simulation 2018-09-01 12:37:50 -07:00
ValarDragon 3c2100793e Address @cwgoes comments 2018-09-01 12:32:24 -07:00
ValarDragon 75025720a3 simulation: Initialize governance properly 2018-08-31 21:57:33 -07:00
Christopher Goes 1204857694 Merge PR #2122: Implement slashing period
* Update PENDING.md

* SlashingPeriod struct

* Seperate keys.go, constant prefixes

* Make linter happy

* Update Gopkg.lock

* Seek slashing period by infraction height

* Slashing period hooks

* Slashing period unit tests; bugfix

* Add simple hook tests

* Add sdk.ValidatorHooks interface

* No-op hooks

* Real hooks

* Fix iteration direction & duplicate key, update Gaia

* Correctly simulate past validator set signatures

* Tiny rename

* Update dep; 'make format'

* Add quick slashing period functionality test

* Additional unit tests

* Use current validators when selected

* Panic in the right place

* Address @rigelrozanski comments

* Fix linter errors

* Address @melekes suggestion

* Rename hook

* Update for new bech32 types

* 'make format'
2018-08-31 20:01:23 -04:00
Alessio Treglia 599923fb99
Introduce simulate mode
Add a simulate only flag '--dry-run' to both CLI tx commands
and RESTful endpoints to trigger the simulation of unsigned
transactions.

* Turning --dry-run on causes the --gas flag to be ignored.
  The simulation will return the estimate of the gas required
  to actually run the transaction.
* Adjustment is no longer required. It now defaults to 1.0.
* In some test cases accounts retrieved from the state do not
  come with a PubKey. In such cases, a fake secp256k1 key is
  generated and gas consumption calculated accordingly.

Closes: #2110
2018-08-31 19:04:11 +02:00
ValarDragon e64c6da6f2 cleanup goleveldb dirs 2018-08-30 23:42:12 -07:00
Alexander Bezobchuk 2d92803b9f Merge PR #2040: Refactor Validator Account Types/Bech32 Prefixing
* Add new account bech32 prefixes with godocs

* Restructure spacing of existing account code

* Update account godocs

* More account godoc updates + new tm pub/addr helpers

* Update validator type to use new account types/bech32 prefixes

* Fix account documentation errors

* Update Bech32 prefix for consensus nodes

* Update Bech32 spec doc

* Fix account type tests

* Add missing account consensus functions, clear up godocs, and fix tests

* Add to TestRandBech32PubkeyConsistency check

* Update initialization of validator public keys

* Update query signing info command

* Implement new ConsAddress type with associated unit tests

* [WIP] Update stake and slashing parameters

* Update all calls to MustBech32ifyValPub

* [WIP] Validator operator API updates

* [WIP] Fix and update unit tests

* Fix gov logs (helping to debug failing tests)

* Fix gov tally

* Fix all broken x/ unit tests

* Update gaia app genesis address logic

* Fix linting errors

* Fix broken LCD tests

* Fix broken CLI tests

* Implement command to get validator address and pubkey from key name

* Add support for getting validator key information via REST endpoint

* Update PENDING log

* Update docs

* Revert GaiaGenTx.PubKey bech32 prefix

* Fix broken docs and cli tests

* Update genesis to use correct Bech32 (cons) prefix for pubkeys

* Update docs and unit tests to reflect new cosmos account bech32 prefix

* minor formatting
2018-08-31 00:06:44 -04:00
ValarDragon a69725d40d Add method to benchmark with commits 2018-08-30 11:47:32 -07:00
ValarDragon 4be69077fe Fix cyclomatic complexity, add ability to use GoLevelDB 2018-08-30 11:43:56 -07:00
ValarDragon 03d2f7331b Remove code duplication 2018-08-30 00:28:15 -07:00
ValarDragon 46bbada4ee simulation: Add benchmarking 2018-08-29 23:02:15 -07:00
Christopher Goes 5f347e0d9a
Merge PR #2166: simulation: Allow operations to specify future operations 2018-08-28 14:53:45 +02:00
Christopher Goes 73f90e8f92
Merge PR #2047: Simulate transactions by default to set gas automatically 2018-08-28 13:53:29 +02:00
HaoyangLiu 5ed1775681 Merge PR #2148: Change delegation amount from int64 to sdk.Int
* Change delegation amount from int64 to sdk.Int

* Refactor code according to code review

* leave freeFermionVal to int64 in case of overflow
2018-08-27 18:18:18 -04:00
ValarDragon 855222e8c3 simulation: Allow operations to specify future operations
The intent of this is to allow for simulating things like slashing for not
voting on a governance proposal. To test this, you would queue all the validator votes
in future blocks, and keep track of which ones you didn't slash. Then you could add queue a
"check governance slashing operation" after the voting period is over.
2018-08-27 14:27:00 -07:00
ValarDragon 4451755600 simulation: rename TestAndRunTx to Operation, make timestamp randomized 2018-08-26 19:40:53 -07:00
Alessio Treglia f432c0c383
Simulate transactions before actual execution
* Change --gas=0 semantic in order to enable gas auto estimate.
* REST clients have been modified to simulate the execution of
  the tx first to then populate the context with the estimated
  gas amount returned by the simulation.
* The simulation returns both an unadjusted gas estimate and an
  adjusted one. The adjustment is required to ensure that the
  ensuing execution doesn't fail due to state changes that might
  have occurred. Gas adjustment can be controlled via the CLI's
  --gas-adjustment flag.
* Tiny refactorig of REST endpoints error handling.

Closes: #1246
2018-08-24 10:16:51 +01:00
Christopher Goes 879f78cfc0 Rename revoke(d) to jail(ed) 2018-08-22 17:56:13 +02:00
Christopher Goes 733559035b
Merge PR #2098: Correctly read/write governance state 2018-08-22 15:08:48 +02:00
Sunny Aggarwal 1311117658 added to gov rest 2018-08-22 00:12:44 -07:00
Matthew Slipper 62d6fd2f98 Merge PR #2014: Remove advanced gaiacli command
Closes #1965
2018-08-21 23:22:18 -04:00
Federico Kunze cfb5acca6e Merge PR #2099: Query staking Pool and Params 2018-08-21 17:32:54 +02:00
Christopher Goes 800ac2844e validator.Operator, sdk.Dec 2018-08-20 17:10:43 +02:00
Christopher Goes 87ca812b0b Correctly read/write governance state 2018-08-20 12:47:04 +02:00
Ethan Buchman af73b885e7 Merge branch 'develop' into bucky/merge-master 2018-08-19 16:24:45 -04:00
Christopher Goes b8cfc1e19f
Merge PR #2068: Minor simulation changes 2018-08-17 16:19:33 +02:00
Dev Ojha 8bb79d12ca Fix non-deterministic map iteration in fuzzer (#2069)
* This demonstrates that the state machine is non-deterministic if there
are more than two txs in a block.

* fix non-deterministic map iteration

* (squash this) fix build errors

* (squash this) iterate using range
2018-08-16 23:45:07 +02:00
Alessio Treglia 187bc1972a Merge PR #1950: Validator.Owner -> .Operator
* Rename --address-validator flag to --validator

See #1901

* Update PENDING.md

* Rename Validator.Owner -> Validator.Operator

See #1901
2018-08-16 16:47:59 -04:00
Christopher Goes 3d50567034
Merge PR #1783: Slashing, validator set, and governance simulation 2018-08-16 17:36:15 +02:00
Federico Kunze c9358ec198 R4R: Fix repeated cmds in CLI for staking (v.0.24.0 release) (#2043)
* Cherry picked commits

* Update CHANGELOG.md
2018-08-15 16:59:46 +02:00
Rigel d9dc061b4f
Merge pull request #1819: rational -> decimal
* changelog

* ...

* decimal func working

* decimal complete, untested

* fixing tests

* decimal compile errors resolved

* test compile errors

* precision multiplier test

* 1% laptop battery

* fixed TestNewDecFromStr

* equalities working

* fix bankers round chop

* ...

* working, some decimal issues resolved

* fix rounding error

* rounding works

* decimal works

* ...

* deleted rational

* rational conversion working

* revert changelog

* code compiles (not tests)

* went through all NewDec, made sure they were converted from NewRat properly

* test debugging

* all testing bugs besides the json marshalling fixed

* json unmarshal

* lint

* document update

* fix lcd test

* cli test fix

* mostly undo Dece -> Rate

* val comments

* Efficiency improvements

This now caches all of the precision multipliers (as they were all
used in non-mutative functions), and caches the precisionInt calculation.
(Now it just copies the already calculated value)

* Cache another precisionInt() call.

* Improve banker rounding efficiency

* remove defer, make negation in-place.

* chris val comments

* bez comments

* Aditya comments

* ...

* val comments

* rebasing start

* ...

* compiling

* tests pass

* cli fix

* anton, cwgoes, val comments

* val and jae comments

* type

* undo reuse quo
2018-08-14 20:15:02 -04:00