Commit Graph

227 Commits

Author SHA1 Message Date
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
philipstanislaus 8682556fad Merge PR #1993: Add optional flag to `gaiad testnet` to make config directory of daemon and cli configurable 2018-09-12 16:02:03 +08:00
Dev Ojha e5e7c4fa0f Merge PR #2303: simulation: Add weighted operation 2018-09-12 15:16:52 +08:00
Alexander Bezobchuk 854aca2f7d Merge PR #2238: Ensure Tendermint Validator Update Invariants 2018-09-12 15:16:28 +08:00
Dev Ojha 358b48771c Merge PR #2308: Remove ripemd160 entirely
* Remove ripemd160 entirely

We already made this decision awhile ago, and have had tendermint switched
for awhile. I was surprised to find ripemd still used within the storeinfo.
This actually leads me to think the new "byter" API change in the tendermint
PR RFC compliance is better, as it avoids things like this from ever happening.

* Get ripemd160 removed from the gopkg imports
2018-09-12 15:13:14 +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
Dev Ojha 2a49406e9b Merge PR #2284: Prevent create_empty_blocks=false 2018-09-11 17:15:38 +08: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 43ccbd4185 Merge PR #2281: Update to iavl 0.11.0 2018-09-09 23:13:17 +08:00
Christopher Goes 1d55673f1f
Merge branch 'develop' into cwgoes/update-tendermint-upstream 2018-09-08 17:41:38 +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
Christopher Goes 08d4f4525c Merge branch 'develop' into cwgoes/update-tendermint-upstream 2018-09-08 16:48:15 +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
Dev Ojha c800bc7a1a Merge PR #2274: simulation: Stop on SIGTERM 2018-09-08 16:29:24 +08:00
Christopher Goes b144dc7aa2 Merge branch 'develop' into cwgoes/update-tendermint-upstream 2018-09-08 01:09:24 +08: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 72b3a45778
Merge branch 'develop' into sunny/gov-bft-time 2018-09-07 07:47:14 +02:00
Christopher Goes 2245b07c81
Merge branch 'develop' into cwgoes/update-tendermint-upstream 2018-09-07 07:23:06 +02:00
Dev Ojha a94219e062 Merge PR #2246: add script to make changelog links actual links 2018-09-07 00:54:59 -04:00
Christopher Goes 5316be75b5 Update PENDING.md 2018-09-07 06:44:11 +02:00
Christopher Goes 06adc691d2 Update testcases for TM 0.24.0-rc0 2018-09-07 00:45:07 +02:00
Christopher Goes e410a9e38a
Merge PR #1952: Update IAVL dependency for v0.10.0 2018-09-06 11:18:16 +02: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 8378f3ea86
Drop note in PENDING.md about generate_only=true query arg 2018-09-04 17:35:35 +02:00
Christopher Goes d736204760
Merge PR #2228: tools: Remove gocyclo 2018-09-04 14:30:41 +02:00
Christopher Goes 1039388207
Merge PR #1944: Piggy-bank distribution spec 2018-09-04 14:19:09 +02:00
Christopher Goes bb7b2ca0bb
Merge branch 'develop' into dev/remove_golint 2018-09-04 14:14:11 +02:00
ValarDragon ea01b91958 baseapp: Remove baseapp.SetTxDecoder()
Closes #1441
2018-09-03 22:53:07 -07:00
ValarDragon 9b26ccfa76 tools: Remove gocyclo
We can investigate re-introducing our own fork #postlaunch.
Closes #2211
2018-09-03 21:31:20 -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
Jeremiah Andrews 01da56a020 Fix pending changelog 2018-09-03 08:01:31 -07:00
Jeremiah Andrews b83e6e8b1a Add to pending changelog 2018-09-03 07:57:15 -07:00
Christopher Goes e1ce5d42d8
Merge pull request #2214 from cosmos/dev/display_db_info
simulation: display db size at end of simulation, add makefile entries
2018-09-03 13:14:14 +02:00
Christopher Goes a4f36aa874
Merge pull request #2200 from cosmos/dev/GetValidator_speed_improvement
Improve GetValidator speed
2018-09-03 13:07:09 +02:00
Sunny Aggarwal a3bbf3a55b PENDING 2018-09-03 00:09:26 -07:00
ValarDragon 8a452b940a simulation: display db size at end of simulation, add makefile entries 2018-09-01 19:09:27 -07:00
Dev Ojha 311c5f8ac6
Merge branch 'develop' into dev/benchmark_simulation 2018-09-01 15:14:46 -07:00
ValarDragon a991a2e1c4 Improve GetValidator speed
In simulation, this was shown to cause a 4x speedup. There are no safety
concerns here, as amino encoding is deterministic.
2018-09-01 12:59:36 -07:00
Dev Ojha 5643c0801b Merge branch 'develop' into dev/benchmark_simulation 2018-09-01 12:37:50 -07:00
rigelrozanski a880242895 Merge remote-tracking branch 'origin/develop' into rigel/validator-unbonding 2018-08-31 20:28:48 -04: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
Christopher Goes e1981d47e3
Merge PR #2181: Implement a simulate-only CLI flag/field for REST endpoints 2018-08-31 22:35:52 +02:00
Rigel b92ac313ac
Merg PR #2198: Ensure Legacy Validator Delegation Invariants
* Test and allow jailed validator to self-bond

* Implement TestJailedValidatorDelegations

* Restructure TestJailedValidatorDelegations

* Add Delegation to Validator type and update handleMsgUnjail accordingly

* Update ErrMissingSelfDelegation error message

* Update democoin mock validator set impl

* Update pending log

* Add comment to ValidatorSet

* Fix conflicts/errors due to develop merge
2018-08-31 15:21:12 -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
Rigel ee0434e5a7
Revert "Merge PR #2176: Ensure Legacy Validator Delegation Invariants" (#2197)
This reverts commit df33452490.
2018-08-31 00:55:33 -04:00
Alexander Bezobchuk df33452490 Merge PR #2176: Ensure Legacy Validator Delegation Invariants
* Test and allow jailed validator to self-bond

* Implement TestJailedValidatorDelegations

* Restructure TestJailedValidatorDelegations

* Add Delegation to Validator type and update handleMsgUnjail accordingly

* Update ErrMissingSelfDelegation error message

* Update democoin mock validator set impl

* Update pending log

* Add comment to ValidatorSet
2018-08-31 00:10:51 -04: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
Matthew Slipper dc0f13214d Merge PR #2170: Add show-address command
* Add show-address command

Closes #1274.

* Add PENDING entry

* Add godoc

* Updates from code review
2018-08-30 21:38:28 -04:00
Matthew Slipper 03c56fc024 Merge PR #2190: Rename --gen-txs to --with-txs
* Rename --gen-txs to --with-txs

Closes #1088.

* Update CHANGELOG.md
2018-08-30 21:33:48 -04:00
ValarDragon 31ca2e058b Update PENDING 2018-08-29 23:11:14 -07:00
ValarDragon 46bbada4ee simulation: Add benchmarking 2018-08-29 23:02:15 -07:00
rigelrozanski 2a1515f00a changelog 2018-08-29 18:48:42 -04:00
Mike Xu fd8c1e5253 Merge PR #2159: fix the gov/slash error 2018-08-29 01:22:39 -04:00
Dev Ojha 946e24d7bf Merge PR #2152: Make CI not update the lock file
* CI: Make CI not update the lock file

We want CI to be running the lock in the repo, not generating a new one.
Linting now ensures that the lock file is up to date.

* Switch to Chris' comment

* Update pending to indicate this new command
2018-08-28 12:53:56 -04:00
Christopher Goes 6a7d700543
Merge PR #2167: Load Ledger Device at Runtime 2018-08-28 14:55:25 +02: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
Christopher Goes d3021d4c2f
Merge PR #2143: Speedup IAVL iterator by removing defers when unneeded. 2018-08-28 13:51:47 +02:00
Aleksandr Bezobchuk 0245a4b5ee Update pending log 2018-08-27 18:45:34 -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
Christopher Goes 666c218330
Merge PR #2138: Datadog fixes and new ansible scripts 2018-08-27 18:50:27 +02:00
Dev Ojha 2c3a4fc025
Merge branch 'develop' into dev/speedup_iavl_iterator 2018-08-27 08:05:09 -07:00
ValarDragon 4451755600 simulation: rename TestAndRunTx to Operation, make timestamp randomized 2018-08-26 19:40:53 -07:00
ValarDragon f6cb4d4fb6 Speedup IAVL iterator by removing defers when unneeded.
Note each defer occurs a 30ish ns overhead here, which is significant
for IAVL iteration. We were previously using around 3-4 defers. (2 in
next, one in Valid, one in Key, one in Value) This slows down the entire
application quite significantly, as we require fast iteration.
2018-08-24 10:26:02 -07:00
Christopher Goes 15b4b338df Merge branch 'develop' into rigel/piggy-bank-fee-spec 2018-08-24 14:25:29 +02:00
Matthew Slipper 2146450aaa Fix export segfault
Closes #1834
2018-08-24 02:24:00 -07:00
Alessio Treglia 323fac3bf7
Update PENDING.md 2018-08-24 10:16:51 +01:00
Christopher Goes c5d44bcaf0
Merge PR #2001: Update slashing spec for slashing-by-period 2018-08-24 02:09:29 +02:00
Greg Szabo 02efc1e209
Merge branch 'develop' into greg/datadog-fixes 2018-08-23 15:03:08 -04:00
Greg Szabo 0e3883f8bf Ansible and Terraform script updates 2018-08-23 14:55:22 -04:00
Christopher Goes 81e5ce15aa
Merge branch 'develop' into rigel/piggy-bank-fee-spec 2018-08-23 14:01:16 +02:00
Christopher Goes f8f97f7bd0
Merge PR #2124: Simple integration tests for {base,demo}coind 2018-08-23 13:56:32 +02:00
Alessio Treglia c02456b8a1
Update PENDING.md 2018-08-23 12:37:01 +01:00
Federico Kunze f143c92ca6 Addressed Chris and Dev's comments 2018-08-23 12:02:12 +02:00
Federico Kunze 1ec9d16d94 Merge branch 'develop' of https://github.com/cosmos/cosmos-sdk into fedekunze/2044-JSON-err-msgs
Merge develop
2018-08-23 11:31:37 +02:00
Rigel d0edcc5066
Merge branch 'develop' into rigel/piggy-bank-fee-spec 2018-08-23 04:05:16 -04:00
Christopher Goes bb9c265590
Merge branch 'develop' into cwgoes/slashing-period-spec 2018-08-22 18:31:04 +02:00
Christopher Goes 73e1965195 Update PENDING.md 2018-08-22 18:30:34 +02:00
Christopher Goes 879f78cfc0 Rename revoke(d) to jail(ed) 2018-08-22 17:56:13 +02:00
Federico Kunze b02ecf915f Update PENDING.md 2018-08-22 16:24:09 +02:00
Christopher Goes 7b8c1c0e80
Merge branch 'develop' into fix-iterator-leak 2018-08-22 16:06:35 +02:00
Christopher Goes 29634bfd1d
Merge PR #1983: CLI UX Updates #1 2018-08-22 12:51:31 +02:00
Christopher Goes b23fe15e4a
Merge PR #1918: Keeper custom queries & QueryRouter 2018-08-22 12:50:59 +02:00
Christopher Goes 42c03aeeec Merge branch 'develop' into cli-updates 2018-08-22 12:40:23 +02:00
Christopher Goes 4b5bb45a09
Merge PR #2062: Support a proposal JSON file in submit-proposal 2018-08-22 12:31:58 +02:00
Sunny Aggarwal 0eed9d1b60 PENDING 2018-08-22 00:15:18 -07:00
Rigel a54e3a3fc4
Merge branch 'develop' into cli-updates 2018-08-21 23:44:57 -04:00
Matthew Slipper d8f01be211 Merge PR #2061: Change proposalID to proposal-id in gov REST
Close #1963.
2018-08-21 23:44:13 -04:00
Rigel 58f50c24a4
Merge branch 'develop' into cli-updates 2018-08-21 23:23:44 -04:00
Matthew Slipper 62d6fd2f98 Merge PR #2014: Remove advanced gaiacli command
Closes #1965
2018-08-21 23:22:18 -04:00
Matthew Slipper 3413a2bff1 Remove --select in block command (#2060)
Closes #1968.
2018-08-21 20:53:16 -04:00
Matthew Slipper 0c0d282a0c Add plaintext flags to show keys; default print response to true; helptext updates
Closes #1970
Closes #1971
Closes #1967
Closes #1969
2018-08-21 15:36:53 -07:00
Matthew Slipper f7d8675234 Support a proposal JSON file in submit-proposal
Closes #1852.
Closes #1776.
2018-08-21 14:34:15 -07:00
Federico Kunze cfb5acca6e Merge PR #2099: Query staking Pool and Params 2018-08-21 17:32:54 +02:00
Dev Ojha 419cf85433 Merge PR #2046: auth: Make gas cost take into account cryptosystem
* auth: Make gas cost take into account cryptosystem

This will make including the multisig easier.
The ratio for ed25519 vs secp256k1 are based on the ratio of their
verification times, using the benchmarks in tendermint/crypto.
2018-08-21 16:13:34 +02:00
youjing e04e52451b Modify PENDING.md for #2105 2018-08-21 20:23:53 +08:00