Commit Graph

347 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
Dev Ojha d37de06762 decimal: Remove unnecessary allocation in bankers round chop (#2030)
This is done by making the function mutative. A non-mutative variant
is created for functions that depend on it being non-mutative.
2018-08-14 21:49:40 -04: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
Dev Ojha 10199c9159 Merge PR #1936: types: Reduce size of TestImmutability<Arith\U>Int tests
Currently they take ~1 minute on circle CI. There isn't a significant reason
for this to delay all our tests. This commit reduces the time spent on these
tests by a factor of 20.
2018-08-08 12:05:20 +02:00
Christopher Goes 46382994a3
Merge PR #1925: Fix develop from FF merge
* Update types/coin_test.go from FF merge
* 'make format'
2018-08-06 21:49:17 +02:00
Joon 93457aac33 Merge PR #1626: Increase coverage of types/ 2018-08-06 21:00:49 +02:00
Joon 19b0781e60 Merge PR #1811: NewCoin takes sdk.Int 2018-07-31 02:09:50 +02:00
Joon d46140a392 Merge PR #1481: Transient Stores 2018-07-27 03:24:18 +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 423d0c4a18 Merge remote-tracking branch 'origin/develop' into cwgoes/a-random-walk-down-proof-of-stake 2018-07-19 01:56:42 -04: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
Christopher Goes cea2be6107 Fix loose tokens invariant 2018-07-18 09:42:18 +02:00
Christopher Goes a6dd96db4d Merge branch 'develop' into cwgoes/a-random-walk-down-proof-of-stake 2018-07-17 02:23:10 +02:00
Dev Ojha 4b688992ba Merge pull request #1691: Table driven test indexes
* types: Switch table driven test error messages to new format

Make table driven tests in /types follow the format described in #1664

* typos / lower case errors

* lower case, not sentences

* lower case, not sentences
2018-07-16 14:42:28 -04:00
Christopher Goes 405bb538fc Merge branch 'master' into cwgoes/a-random-walk-down-proof-of-stake 2018-07-14 02:09:41 +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
Jeremiah Andrews 43b9cc6df0 Merge PR #1533: Pruning Cleanup 2018-07-13 03:20:26 +02:00
Alexander Bezobchuk 5983a07fb6 Merge PR #1599: Implementation of TraceKVStore 2018-07-13 01:58:51 +02:00
Ethan Buchman c6827dfb43 fix post merge 2018-07-10 21:40:24 -04:00
Christopher Goes 940cfa98af Invariants & random Msgs in progress 2018-07-11 02:36:50 +02:00
Ethan Buchman 3f44589861 Merge branch 'develop' 2018-07-10 20:31:05 -04:00
Christopher Goes 5a56c3f03d
Merge PR #1575: ready-for-review: sdk.AccAddress natively bech32 2018-07-10 04:18:23 +02:00
ValarDragon 17b5370c22 Continue fixing gocyclo errors 2018-07-09 16:08:35 -07:00
Sunny Aggarwal 896cd333f0 address comments 2018-07-09 16:06:05 -07:00
ValarDragon 0c5358c267 Continue reducing code complexity:
* Adds a Min function to Int, and uses that in the slash function
* Adds a getHeight helper function to iavlstore
* Adds a splitPath function to baseapp
* Changes cyclo param from 10 to 11
2018-07-09 15:29:16 -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
sunnya97 e894fbe4b6 in progress 2018-07-09 00:30:37 -07:00
ValarDragon 611e4faa3a gaiad: Genesis txs now use bech32 encoding of address and pubkey
* `gaiad init gen-tx` makes the outputted file use bech32, with acct prefix
* `gaiad init --gen-txs` only reads bech32 with acct prefixes

The reason for using the account prefix is that in principle you could
have genesis transactions for non-validators.

Closes #1475
2018-07-07 14:23:19 -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 aed3a87366 address cwgoes comments 2018-07-04 17:07:06 -04:00
Yukai Tu f1194019cd Merge PR #1534: Check new rat decimal string length 2018-07-04 05:29:05 +02:00
Ethan Buchman a6dc81defa minor cleanup of feeKeeper 2018-07-03 00:08:00 -04:00
Ethan Buchman 673086f621
Merge branch 'develop' into davekaj/set-fee-collection-keeper 2018-07-02 20:43:33 -04:00
Ethan Buchman f78f30c67a update for tm v0.22.0. tmlibs->tendermint/libs 2018-07-02 16:34:06 -04:00
Dev Ojha 6a864923fa types: Rename rational.Evaluate to rational.Round (#1487)
* rational.Evaluate -> rational.RoundInt64
	* rational.EvaluateInt -> rational.RoundInt

This done to improve clarity of the code.

Closes #1485
2018-07-02 11:57:33 -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 47e4682d9f Merge PR #1415: x/stake: Limit the size of rationals from user input
* x/stake: Limit the size of rationals from user input

This commit sets the maximum number of decimal points that can be
passed in from messages. This is enforced on the validate basic of
MsgBeginUnbonding and MsgBeginRedelegation. The cli has been
updated to truncate the user input to the specified precision. This
also updates types/rational to return big ints for Num() and Den().

Closes #887

* Switch NewFromDecimal to error instead of truncating
2018-06-29 22:30:12 +02:00
David Kajpust 0a76035398 fee collection now works in gaia 2018-06-29 09:37:14 -04:00
Ethan Buchman a88b6b9c97
Merge pull request #1376 from cosmos/bucky/docs-core
docs via example apps
2018-06-29 02:07:06 -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
Ethan Buchman e8946e9b36 fixes from review 2018-06-28 19:06:37 -04: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
Dev Ojha 3dc2387124 Merge PR #1404: Add more context for errors when no address is provided 2018-06-27 19:39:57 +02:00
Ethan Buchman b3b075cc12 finish docs for app1 2018-06-27 07:15:30 -04: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
Dev Ojha d6df6b07d1 Merge PR #1388: types/int: Switch Int, Uint to use pointers internally
* types/int: Switch Int, Uint to use pointers internally
This reduces the amount of pointer refs & derefs.
* Fix nil pointers on unmarshalling amino
* Fix elusive bug in marshalling with unitialized big int
* Remove debug code
* Switch big.rat to use pointers internally
2018-06-27 03:10:34 +02:00