Commit Graph

259 Commits

Author SHA1 Message Date
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