Commit Graph

425 Commits

Author SHA1 Message Date
Christopher Goes fa372d3b82 Test correct JailedUntil 2018-10-15 21:08:56 +02:00
Christopher Goes 2c4d9a0be4 Merge branch 'develop' into cwgoes/fix-signing-info-bugs 2018-10-15 21:04:49 +02:00
rigelrozanski 5de0c9a1f8 Merge remote-tracking branch 'origin/develop' into rigel/fee-distribution 2018-10-15 02:43:36 -04:00
Christopher Goes 1ff2e865a8 Back to greater than 2018-10-12 21:15:39 +02:00
Christopher Goes bdfb10f551 Clarify testcase 2018-10-12 21:10:55 +02:00
Christopher Goes a83535aef3 Greater than to greater than or equal to 2018-10-12 21:09:23 +02:00
rigelrozanski 06fa518e30 address @cwgoes comments, add in precommit calculation 2018-10-12 07:15:13 -04:00
rigelrozanski dba20d1725 Merge remote-tracking branch 'origin/develop' into rigel/fee-distribution 2018-10-12 06:06:24 -04:00
Christopher Goes 8c2c9dba8a Update block height on validator bonding 2018-10-12 00:15:58 +02:00
Christopher Goes 5fd7297e25 Count missed blocks instead of signed blocks 2018-10-12 00:04:44 +02:00
Christopher Goes f6e92df3fa Create signing info struct on validator bond hook 2018-10-11 22:48:00 +02: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 151a81eddb staking changes test_cover fixes 2018-10-09 20:37:22 -04:00
rigelrozanski fc9bafb8d3 Merge remote-tracking branch 'origin/develop' into rigel/fee-distribution 2018-10-09 20:19:22 -04:00
rigelrozanski c9730329bf ... 2018-10-09 13:58:59 -04:00
Christopher Goes 4814ae4df5
Merge branch 'develop' into cwgoes/nextvalset 2018-10-08 06:44:29 +02:00
Sunny Aggarwal cd21427a7b Merge PR #2405: Unbonding and Redelegations Queue 2018-10-08 06:43:47 +02: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 e7de48e375 address comments 2018-10-07 01:12:01 +09:00
mossid 2b3630eb6b finalize rebase 2018-10-07 01:12:00 +09:00
mossid d6105c5855 SetFromParamStruct -> SetStruct 2018-10-07 01:12:00 +09:00
mossid 9a35b7e949 space -> store, add doc 2018-10-07 01:12:00 +09:00
mossid 73b34353bf fix lint 2018-10-07 01:12:00 +09:00
mossid 39b5b388f1 finalize rebase 2018-10-07 01:12:00 +09:00
mossid fd8713ef9c rm key & doc.go in progress 2018-10-07 01:12:00 +09:00
mossid 6d80faface string -> []byte 2018-10-07 01:12:00 +09:00
mossid f33e856950 fix lint 2018-10-07 01:12:00 +09:00
mossid 37ce8d51c6 apply requests 2018-10-07 01:12:00 +09:00
mossid bd6ee42c5a finalize rebase 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
Christopher Goes 1ed338fc5f Fixup comments 2018-10-05 20:00:01 +02:00
Christopher Goes 317be2bc16 Clarify ValidatorUpdateDelay 2018-10-05 19:56:17 +02:00
Christopher Goes b625cf85a1 Cleanup testcase 2018-10-05 19:45:45 +02:00
Christopher Goes 482537e6c1
Merge PR #2430: Aggressive slashing simulation & fixes 2018-10-05 19:42:52 +02:00
Christopher Goes 034163c021 Minor fixes 2018-10-05 14:58:19 +02:00
Christopher Goes 1909d8f269 Update slashing period key appropriately 2018-10-05 14:24:02 +02:00
Christopher Goes 1f12f204ce Testcase fixes, 'make format', negative pre-genesis block 2018-10-05 14:11:36 +02:00
Christopher Goes 91b755d220 Add testcase for failing to sign "extra block" 2018-10-05 13:52:30 +02:00
Christopher Goes a2113b24dc Address TODOs in slashing tests 2018-10-05 13:31:26 +02:00
Christopher Goes 48672c4c0b More comments, update sim for NextValSet 2018-10-04 18:22:51 +02:00
Christopher Goes 8f4d3a6cd7 Merge branch 'develop' into cwgoes/nextvalset 2018-10-04 18:11:14 +02:00
Rigel 324bdaf55d Merge PR #2394: Split up UpdateValidator into distinct state transitions applied only in EndBlock 2018-10-03 18:37:06 +02:00
Christopher Goes 4fee7913b5 Fix issue from earlier merge 2018-10-03 17:59:01 +02:00
Christopher Goes 17983460b8
Merge PR #2219: Update to Tendermint 0.24 (except NextValSet offsets) 2018-10-03 17:48:23 +02:00
Christopher Goes 08fcd9967d Merge branch 'cwgoes/update-tendermint-upstream' into cwgoes/nextvalset 2018-10-02 14:05:35 +02:00
Christopher Goes 3ed2c22a38 Merge branch 'develop' into cwgoes/update-tendermint-upstream 2018-10-01 18:53:42 +02:00
Jae Kwon 1e26ba2e0e
CLIContext.Logger -> .Output as it isn't a logger (#2420)
This changes .Logger to .Output, as it isn't used anywhere except as os.Stdout.
2018-09-28 21:45:54 -07:00
Christopher Goes e7c2a9614f Merge branch 'develop' into cwgoes/update-tendermint-upstream 2018-09-26 17:42:22 +02:00
Alexander Bezobchuk 91cac96fea Merge PR #2391: LCD Cleanup and DRY Refactor 2018-09-26 21:29:39 +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
Alexander Bezobchuk 611e287375 Merge PR #2401: Remove remnants of gocyclo 2018-09-25 13:45:04 -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
Rigel 6b595842ed Distr-PR-1 Staking ConsPubKey -> ConsAddr index (#2369)
* pulling in stuff from fee-distr PR
* revert some gov changes
* fix using cons address, also remove old commented distr code
* doc update
* val comments
* remove GetValidatorByConsPubKey
2018-09-24 21:09:31 -07: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
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
Dev Ojha 65137f6331 Merge PR #2343: Add a name field to the message type
This is to facillitate ease of implementing #1406. (Tags for messages
could then be added dynamically)

Ultimately once we make the router support hiearchical routing, (#770)
we can then remove the name field and just the parse info for tags from that.

Until then, we can parse the tag name as
`fmt.Sprintf("%s %s", msg.Type(), msg.Name())`
2018-09-17 22:34:06 +08: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
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
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
Christopher Goes 1d55673f1f
Merge branch 'develop' into cwgoes/update-tendermint-upstream 2018-09-08 17:41:38 +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
Christopher Goes f95d26aec1 Merge branch 'develop' into cwgoes/update-tendermint-upstream 2018-09-08 16:14:23 +08:00
ValarDragon e812919649 Rename coinKeeper -> bankKeeper
Closes #2267
2018-09-07 22:34:32 -07:00
Jae Kwon 6325441861 txBld -> txBldr 2018-09-07 10:15:49 -07:00
Jae Kwon acd125029d x/auth/client/context -> x/auth/client/txbuilder 2018-09-07 10:04:58 -07:00
Alessio Treglia 54b3b5c028
sed -i 's/txCtx/txBld/g' 2018-09-07 14:39:23 +01:00
Alessio Treglia 3b6da7af18
TxContext -> TxBuilder 2018-09-07 14:36:21 +01:00
Christopher Goes 549eba0d54 Add height offsets 2018-09-07 06:56:05 +02:00
Christopher Goes 06adc691d2 Update testcases for TM 0.24.0-rc0 2018-09-07 00:45:07 +02:00
Christopher Goes f45cfb2f70 Merge branch 'develop' into cwgoes/update-tendermint-upstream 2018-09-06 11:51:56 +02:00
Christopher Goes e410a9e38a
Merge PR #1952: Update IAVL dependency for v0.10.0 2018-09-06 11:18:16 +02: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 20f5325f47 Fix more linter errors 2018-09-03 09:52:20 -07:00
Christopher Goes 14d5e686d9 More TM 0.24 updates 2018-09-03 18:04:28 +02:00
Christopher Goes 73292e08b4 Start of changes for TM 0.24 2018-09-03 17:01:49 +02:00
Jeremiah Andrews 2378e3431c Fix linter errors 2018-09-03 07:58:57 -07:00
Dev Ojha 311c5f8ac6
Merge branch 'develop' into dev/benchmark_simulation 2018-09-01 15:14:46 -07:00
Dev Ojha 5643c0801b Merge branch 'develop' into dev/benchmark_simulation 2018-09-01 12:37:50 -07:00
Rigel b296209536
Merge PR #2205: minor develop fix
* minor corrections

* ...

* ...
2018-08-31 21:23:30 -04:00
rigelrozanski acf1f09e73 Merge branch 'rigel/develop-fix' into rigel/validator-unbonding 2018-08-31 21:03:14 -04:00
rigelrozanski 6e295085c1 ... 2018-08-31 20:56:35 -04:00
rigelrozanski 9593a2641a ... 2018-08-31 20:52:45 -04:00
rigelrozanski 07ba719c75 minor corrections 2018-08-31 20:50:12 -04: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 122ed3a900
Don't use pointers when you need them not! 2018-08-31 19:04:45 +02:00
Alessio Treglia 1370ca611b
Set GasAdjustment in CLIContext when handling HTTP requests
This is to address @alexanderbez's comments
2018-08-31 19:04:42 +02: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
ValarDragon 46bbada4ee simulation: Add benchmarking 2018-08-29 23:02:15 -07:00
rigelrozanski c4d0a00550 Merge remote-tracking branch 'origin/develop' into rigel/validator-unbonding 2018-08-28 20:16:07 -04:00
Matthew Slipper c6d692e27f Merge PR #2172: Use cobra.NoArgs where appropriate
Closes #885.
2018-08-28 12:59:42 -04: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
rigelrozanski 78f98fec16 Merge remote-tracking branch 'origin/develop' into rigel/validator-unbonding 2018-08-27 19:34:03 -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
rigelrozanski ec42e66501 fix old tests 2018-08-27 00:20:40 -04:00
ValarDragon 4451755600 simulation: rename TestAndRunTx to Operation, make timestamp randomized 2018-08-26 19:40:53 -07:00
Alessio Treglia 7e8feec738
Incorporating @cwgoes comments 2018-08-24 15:20:53 +01:00
Alessio Treglia f36f749818
Incorporating @ValarDragon's comments 2018-08-24 10:16:51 +01: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
Ethan Buchman 292701d774 Merge branch 'master' into bucky/merge-master 2018-08-21 11:55:40 -04:00
Christopher Goes e2691d98fc 0.24.1 - Fix validator pubkey bug 2018-08-21 15:40:43 +02:00
Ethan Buchman af73b885e7 Merge branch 'develop' into bucky/merge-master 2018-08-19 16:24:45 -04: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
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
Christopher Goes 0b2bf8f3a0 Set SignedBlocksWindow to 10000 per @zmanian instructions 2018-08-13 15:56:40 +02:00
Christopher Goes a56117ee74 Stage onto release/v0.24.0 (#1999)
* Set SignedBlocksWindow back to 1000

* Merge PR #1995: upgrading ledger goclient lib

* Update version/version.go
2018-08-13 09:41:53 -04:00
Dev Ojha b2a4aecc44 Upgrade to tm version 23.0. (#1927)
* Start upgrade. Currently go test ./... hangs.

* (squash this) Fix staking tests

* wip

* note what changes need to be made to make this work on tm v0.23.0

* Fix addr -> pubkey map

* cleanup code

* Fix slashing test failures except for begin blocker

* fix all slashing tests

* fix lcd tests

* Address PR comments

* add link to changelog.

* (wip) start making addrToPubkey map persisted. Since amino can't handle maps,
we have to change from what this commit is doing.

* Use the correct method of storing a map

* (squash this) address PR comments

* Did you run 'make'?

* remove gaiadebug binary
2018-08-12 03:33:48 -04:00
Jae Kwon a9800a92ae Fix slashing test to reflect SlashFractionDowntime param 2018-08-12 01:08:35 -04:00
Alexander Bezobchuk 12c2c236c2 Merge PR #1741: CoreContext Refactor 2018-08-06 20:11:30 +02:00
Joe Bowman 874a6055b0 Merge PR #1889: update signing info endpoint
* update /slashing/signing_info/ endpoint of lcd to take cosmosvalpub instead of cosmosvaladdr for consistency reasons
* update pending.md
* update test that calls /slashing/signing-info endpoint
2018-07-31 20:27:03 +02:00
Joon 19b0781e60 Merge PR #1811: NewCoin takes sdk.Int 2018-07-31 02:09:50 +02:00
Dev Ojha 5d02a743fb Update to tendermint v0.22.6-rc0 (#1798)
* Update to tendermint v0.22.6-rc0

This is comprised of updating the crypto imports / API

* (squash this) switch to v0.22.6

If this passes tests, I'll squash this commit and update the PR.
2018-07-25 16:43:37 -04:00
Christopher Goes 4b7f6efd87
Merge PR #1805: Downtime slashing off-by-one-block fix
* Avoid slashing & revoking no longer stored or already revoked validators for downtime
* Add testcase
* Update PENDING.md
2018-07-25 04:12:48 +02:00
rigelrozanski 9e5a78fc7a less stake endblock processing 2018-07-20 11:35:13 -04:00
Rigel d2f70ec8af Merge PR #1748: CLI use --from consistently 2018-07-19 08:53:12 +02:00
Joon aa525418e1 Merge PR #1373: Initialization of POS chain 2018-07-19 08:39:40 +02:00
Christopher Goes cbf432d34c
Merge PR #1746: Remove ctx.IsCheckTx
* Remove ctx.IsCheckTx
* Changelog to Pending
* Typo
* Simulate instead of Check in SignCheckDeliver
* Add descriptive comment
* Change to 'CheckTx implements ABCI'
* Alphabetize changelog
2018-07-19 02:42:19 +02:00
Sunny Aggarwal d6969c1d22 Merge PR #1697: Proposal Query filter by status 2018-07-17 22:59:06 +02:00
Joon bdccbeff9e Merge PR #1265: Global Paramstore
in progress
in progress
stake and slashing now params
fix gaia
fix gaia again
add msg type deactivation
delete local error
in progress
revert actual application in baseapp/gaia/stake
add test, fix apps
fix MinSignedPerWindow, pass lint
fix gaia
fix keeper_test
fit with multiple msgs
fix
apply requests
pass lint
really the last fix
fix dependency
fix keeper_test
fix lint
2018-07-14 02:12:23 +02:00
Rigel 3231daa4d8 remove global shares (#1644)
* wip removing pool shares

* remove PoolShares/Tokens entirely

* worked through stake/type compile error

* work through a bunch of keeper errors

* worked through compile errors

* debugging tests

* resolve compilation error

* resolved types errors

* ...

* move inflation to pool type

* ...

* stumped problem

* Calculate newly issued shares, remove unnecessary pool arg from exchange rate calculation

* Rounding changed

* Update x/slashing tests for sdk.Rat BondedTokens

* testing fixes

* resolved test fixes

* cwgoes comments, changelog, lint

* cli bugfixes

* ..

* cli fixed

* spec update

* 'make format'

* cwgoes comments

* Increase test_cover parallelism
2018-07-13 21:46:14 +01:00
Aditya b195c556e2 Merge pull request #1600: Friend can create validator and delegate on behalf of genesis validator
* Added msg and handling for surrogate create validator

* changelog and error fix

* fix changelog

* Remove unnecessary msg by combining into CreateValidator

* Refactor

* Appease linter

* Added onbehalfof functionality in client

* fmt

* Added gaia onbehalfof test

* Update test for onbehalfof validator creation

* fix test

* Fix flag error

* Add app test

* fmt

* Fixed signer for onbehalfof createvalidator

* Fix error msg

* Simplify test

* fmt
2018-07-10 20:16:37 -04:00
Christopher Goes 75b4f4104a Merge branch 'develop' into joon/673-am-constructor 2018-07-11 00:57:46 +02:00
Rigel b60fcb68d6
Merge branch 'develop' into rigel/genesis-no-zero-power 2018-07-10 00:15:10 -04:00
mossid bc12880394 Merge pull request #1379: Account constructor in AccountMaper
fix

fix democoin

fix tests

pass lint

last fix

apply requests

fix build failing

fix docs
2018-07-09 20:29:14 -07:00
rigelrozanski 86f68a3e95 prevent zero genesis validators 2018-07-09 22:51:13 -04:00
Sunny Aggarwal 896cd333f0 address comments 2018-07-09 16:06:05 -07:00
Sunny Aggarwal 25d976feb4 works? 2018-07-09 01:47:38 -07:00
Sunny Aggarwal d87c9ebc74 fixed lcd errors 2018-07-09 01:01:29 -07:00
sunnya97 7ac220beb6 asdf 2018-07-09 00:59:51 -07:00
Sunny Aggarwal 50ed0fa1ae asdf 2018-07-09 00:35:28 -07:00
ValarDragon c708c799fd Add print-response flag 2018-07-05 22:19:50 -07:00
ValarDragon 2197a9598b Merge branch 'dev/add_async_flag' of github.com:cosmos/cosmos-sdk into dev/add_async_flag 2018-07-05 20:19:39 -07:00
ValarDragon 8857b69d02 Use async flag directly from context 2018-07-05 20:15:40 -07:00
Dev Ojha be9ae47b0a
Merge branch 'develop' into dev/add_async_flag 2018-07-05 20:06:52 -07:00
ValarDragon 27a31cae44 add Async to context 2018-07-05 20:05:17 -07:00
ValarDragon 6f94dd64c0 cli: Add async flag to all broadcasting txs
closes #1436
2018-07-05 19:15:37 -07:00
Liamsi b7f902fba5 sort *all* GetSignBytes:
- call MustSortJSON before return JSON bytes to guarantee alphabetic
ordering

- moved SortJSON and MustSortJSON to types package to avoid cyclic
package dep
2018-07-06 01:12:57 +01:00
rigelrozanski f152b64952 Merge remote-tracking branch 'origin/develop' into rigel/no_keys_in_state_value 2018-07-04 14:29:12 -04:00
rigelrozanski a2f7b582df validators smaller values stored 2018-07-04 01:32:49 -04:00
Alexander Bezobchuk 0b9e0f2afc Merge PR #1492: Improve Module Test Coverage
* Merge pull request #1492: Improve Module Test Coverage
* Revert renaming of SignCheckDeliver [#1492]
* Remove named fields from stake unit tests & fix comments [#1492]
* update for tmlibs->tendermint/libs
* Remove tmlibs dependency
2018-07-04 06:21:36 +02:00
Christopher Goes 3f438cdbc2
Merge PR #1511: Prevent unrevoked validators from unrevoking
* Prevent unrevoked validators from unrevoking
* Update changelog
* Update previously incorrect test
* 'make format'
2018-07-03 07:47:40 +02:00
Ethan Buchman f78f30c67a update for tm v0.22.0. tmlibs->tendermint/libs 2018-07-02 16:34:06 -04:00
Christopher Goes 3654579ea7
Merge PR #1278: Slashing v2
Implement semifinal Gaia slashing spec (#1263), less #1348, #1378, and #1440 which are TBD.
2018-06-30 05:34:55 +02:00
Dev Ojha 955a0c9af7 Switch asserts to require (#1483)
* meta: Switch the majority of asserts to require

Switch most assert statements to require, to ease debugging.
Closes #1418

* Fix imports
2018-06-30 03:10:15 +02:00
Dev Ojha 097dd8a164 tools: Add unparam linter (#1443)
* tools: Add unparam linter

unparam detects unused parameters in functions, and a parameter to
a function which only ever takes on one value. The latter is an
indication that more tests are required.

There are many nolints in this PR, as I believe that writing tests
to fix alot of these situations is out of scope for this PR / it
will be changed in future commits. There are some nolints for
when we have to comply to normal api's.

* crypto/keys no longer used by x/gov/client/rest/rest.go
2018-06-29 18:22:24 -04:00
Christopher Goes 59aadf42aa
Ledger integration (#931)
Merges the keybase and Ledger code from go-crypto (which is no more) into the SDK
Adds support for Ledger into gaiacli
Cherry-picks updated error handling from #1158
2018-06-29 02:54:47 +02:00
Dev Ojha ac3adff1e8 Merge PR #1438: Tools: Add errcheck linter
This linter ensures that all errors are checked.
This is disabled in the client directories, since its not needed on
those writes
2018-06-29 00:52:10 +02:00
Dev Ojha 2755c66545 Merge PR #1424: tools: add unconvert linter
unconvert checks for unnecessary type conversions
2018-06-28 18:08:29 +02:00
Rigel 6f140d7296 Merge PR #1119: Unbonding, Redelegation
* stake/fees spec updates
* staking overview.md revisions, moving files
* docs reorganization
* staking spec state revisions
* transaction stake updates
* complete staking spec update
* WIP adding unbonding/redelegation commands
* added msg types for unbonding, redelegation
* stake sub-package reorg
* working stake reorg
* modify lcd tests to not use hardcoded json strings
* add description update
* index keys
* key managment for unbonding redelegation complete
* update stake errors
* completed handleMsgCompleteUnbonding fn
* updated to use begin/complete unbonding/redelegation
* fix token shares bug
* develop docs into unbonding
* got non-tests compiling after merge develop
* working fixing tests
* PrivlegedKeeper -> PrivilegedKeeper
* tests compile
* fix some tests
* fixing tests
* remove PrivilegedKeeper
* get unbonding bug
* only rpc sig verification failed tests now
* move percent unbonding/redelegation to the CLI and out of handler logic
* remove min unbonding height
* add lcd txs
* add pool sanity checks, fix a buncha tests
* fix ante. set lcd log to debug (#1322)
* redelegation tests, adding query functionality for bonds
* add self-delegations at genesis ref #1165
* PR comments (mostly) addressed
* cleanup, added Query LCD functionality
* test cleanup/fixes
* fix governance test
* SlashValidatorSet -> ValidatorSet
* changelog
* stake lcd fix
* x/auth: fix chainID in ante
* fix lcd test
* fix lint, update lint make command for spelling
* lowercase error string
* don't expose coinkeeper in staking
* remove a few duplicate lines in changelog
* chain_id in stake lcd tests
* added transient redelegation
* 'transient' => 'transitive'
* Re-add nolint instruction
* Fix tiny linter error
2018-06-27 04:00:12 +02:00
Joon ec6acda6a4 Merge PR #1331: Remove TxBytes from NewContext 2018-06-22 03:03:05 +02:00
Aditya f049a56376 Merge PR #1266: Multiple messages
* Started work on multiple msgs, types and x/auth tests pass
* Fix issues in x, examples, and baseapp
* Added baseapp tests for multiple msgs
* Documentation fixes
* Fix baseapp tests with sdk.Int
* Modify test
* Transaction handling is now atomic
* Fix test comment
* Minor doc fixes and code cleanup
* Added baseapp result changes
* Use address in validator update accumulation
* Started work on multiple msgs, types and x/auth tests pass
* Fix issues in x, examples, and baseapp
* Added baseapp tests for multiple msgs
* Documentation fixes
* Fix baseapp tests with sdk.Int
* Modify test
* Transaction handling is now atomic
* Fix test comment
* Minor doc fixes and code cleanup
* Added baseapp result changes
* Use address in validator update accumulation
* Added ante tests for multisigner
* Remove validatorUpdates from tx result
* Better error logs
* Put Memo in StdSignBytes and formatting
* Updated changelog
2018-06-22 00:05:25 +02:00
Dev Ojha e2d23040a8 Merge PR #1325: Refactor Complete Setup to not take in a testing parameter
* Refactor Complete Setup to not take in a testing parameter
* Update changelog
2018-06-21 18:55:08 +02:00
Joon 314b5a854d Merge PR #1218: sdk.Int in sdk.Coin
implement Int, Int256, Uint256
pass ci
pass ci
add to changelog, add boundcheck to test
add comments, fix cli_test.go
fix errors
apply requested changes
panics on New*WithDecimal
fix Int.BigInt()
fix stake tests
* Panic on uint division-by-zero
* Set ok=false on NewIntFromString, NewUintFromString failure
* Nuke CircleCI caches
2018-06-15 23:16:45 +02:00
Fabian 42e72956f4 Merge PR #1252: Query node version
introduce non store queries
add version query
update lcd spec
changelog
moved version query into baseapp
2018-06-14 07:49:21 +02:00
David Kajpust ec2fedd36c Merge PR #1227: Set all Error strings 1st letters to lowercase. Fixes issue #1154 2018-06-13 21:13:22 +02:00
Christopher Goes 5bf58ee444
Merge PR #1210: Fix testcases (another fast-forward merge issue) 2018-06-12 09:47:59 +02:00
Christopher Goes ee17b7c9cc
Address PR comments: test descriptions & NewValidatorSigningInfo 2018-06-11 21:47:35 +02:00
Christopher Goes c9a977beae
Cleanup testcase 2018-06-11 03:15:48 +02:00
Christopher Goes a4865ef6aa
Add mock.SignCheck, update testcase to assert error code 2018-06-11 03:14:20 +02:00
Christopher Goes f6a30afbf4
Improve testcase, add comment 2018-06-11 03:03:52 +02:00
Christopher Goes 3bea85abb3
Register slashing keeper, set startHeight, testcases 2018-06-11 02:55:54 +02:00
Christopher Goes 496d4681c2
Add MsgUnrevoke.GetSignBytes() testcase, remove unused functions 2018-06-08 02:05:34 +02:00
Christopher Goes a583a70b7c
Fix address type for x/slashing/MsgUnrevoke 2018-06-08 01:59:10 +02:00
Christopher Goes 971e1489b2
Bech32ify msg.GetSignBytes() for x/slashing & x/stake 2018-06-08 01:24:08 +02:00
Rigel e0e50fce50
Merge pull request #1134 from cosmos/jlandrews/clidocfix
Fix docs for cli refactor
2018-06-04 23:30:28 -07:00
Jeremiah Andrews 5a831bd0f8 additional changes 2018-06-04 18:35:07 -07:00
Christopher Goes be7ec5bc07
Merge PR #1115: Update SDK to ABCI v11 2018-06-05 01:42:01 +02:00
Christopher Goes 024eaf6ac0
Swap x/slashing to sdk.ValidatorSet 2018-06-02 00:27:37 +02:00
rigelrozanski 0ef3259a39 revised use of EndBlock/BeginBlock, basecoin updated for staking/slashing 2018-06-01 14:24:48 -07:00
Christopher Goes 7ff6eebb32
Fix command documentation 2018-06-01 06:21:26 +02:00
Christopher Goes c7a9b53fae
Use valpk.Address() 2018-06-01 06:21:26 +02:00
Christopher Goes cde91bd229
gaiacli unrevoke 2018-06-01 06:21:22 +02:00
rigelrozanski 952aedc4f1 get rid of candidacy references 2018-05-31 14:57:09 -07:00
Christopher Goes 27ae1a1490
Match UnmarshalBinaryBare/MarshalBinaryBare 2018-05-31 22:19:46 +02:00
Christopher Goes f32093e9e3
Use evidence type constants from Tendermint 2018-05-31 05:43:54 +02:00
Christopher Goes 141bc5fb1c
amino.MarshalJSON instead of json.Marshal 2018-05-31 01:52:07 +02:00
Christopher Goes 3d37d51795
Switch to evidence type enum 2018-05-31 01:47:24 +02:00
Christopher Goes 5c4c486e7b
Add newlines to clarify testcase separation 2018-05-31 01:39:57 +02:00
Christopher Goes 604fd4c9a7
Address a few style comments 2018-05-31 01:37:38 +02:00
Christopher Goes 004e10ebcd
More comments on counter logic 2018-05-31 00:32:08 +02:00
Christopher Goes 99bed49c8d
Minor wording changes 2018-05-31 00:25:18 +02:00
Christopher Goes 5f03e370c3
Remove ValidatorByPubKey, don't marshal sdk.Address 2018-05-31 00:19:23 +02:00
Christopher Goes 3b4aa4d0ae
Minor test fix after merge 2018-05-29 21:46:38 +02:00
Christopher Goes 6712ea7f3a
Present, not absent 2018-05-29 08:32:39 +02:00
Christopher Goes 69af8b1a94
Clarify signing info stored by validator address 2018-05-29 02:58:43 +02:00
Christopher Goes 88e0025724
DowntimeUnbondDuration to 10 minutes 2018-05-29 02:56:40 +02:00
Christopher Goes 345b5b88a8
Add comment on MsgUnrevoke 2018-05-29 02:50:04 +02:00
Christopher Goes 65945c069c
Clarify counter logic 2018-05-29 02:48:29 +02:00
Christopher Goes 7fbecc6b72
Clarify default signing info 2018-05-29 02:36:31 +02:00
Christopher Goes b8b4fe24e3
Absent validators map[crypto.PubKey]struct{} 2018-05-29 02:33:01 +02:00
Christopher Goes aed5d94b1c
Remove absent validators from sdk.NewContext 2018-05-29 02:26:17 +02:00
Christopher Goes f4f8cc66d9
Add some explanatory comments 2018-05-29 00:10:52 +02:00
Christopher Goes 26f22dbe4d
Test start height update 2018-05-28 23:55:39 +02:00
Christopher Goes c0487996ab
Update slashing docs, slight index change 2018-05-28 23:46:08 +02:00
Christopher Goes 02ab73e266
Signing info slashing testcases 2018-05-28 23:39:57 +02:00
Christopher Goes 93f1cb45cc
Split slashing params & signing info into separate files 2018-05-28 23:24:58 +02:00
Christopher Goes bfa9d5f914
Linter fixes 2018-05-28 22:12:45 +02:00
Christopher Goes d03577a2fc
Fixes after rebase, jail in x/slashing 2018-05-28 22:08:13 +02:00
Christopher Goes e4b0d0a618
Reorganization in progress 2018-05-28 21:55:54 +02:00
Christopher Goes 6f3d81d5d6
Swap to individual offset 2018-05-28 21:55:53 +02:00
Christopher Goes 8aaff4b96e
Cleanup testcase a bit 2018-05-28 21:55:53 +02:00
Christopher Goes 97b084b842
Fix ForceUnbond() testcase 2018-05-28 21:55:53 +02:00
Christopher Goes e614799d0f
ForceUnbond() implementation WIP 2018-05-28 21:55:53 +02:00
Christopher Goes 796948b838
Downtime slashing testcases 2018-05-28 21:55:53 +02:00
Christopher Goes be4b140003
Add testcase past max evidence age 2018-05-28 21:55:53 +02:00
Christopher Goes 7da5833b81
Implement ValidatorSet.Slash 2018-05-28 21:55:52 +02:00
Christopher Goes 366d8f9323
Slash() and ForceUnbond() are functions of ValidatorSet, not Validator 2018-05-28 21:55:52 +02:00
Christopher Goes b005f9f18d
Validator by pubkey, tests work-in-progress 2018-05-28 21:55:52 +02:00
Christopher Goes 67f7f31ba9
Fix testcases by mounting store 2018-05-28 21:55:52 +02:00
Christopher Goes 95c5baf449
Rebase & squash slashing 2018-05-28 21:55:27 +02:00