Commit Graph

329 Commits

Author SHA1 Message Date
Sunny Aggarwal eaf49a2dfb
Merge branch 'develop' into sunny/sdkAddress_bech32 2018-07-09 16:07:43 -07:00
Sunny Aggarwal 896cd333f0 address comments 2018-07-09 16:06:05 -07:00
Aleksandr Bezobchuk 7fc2363191 Merge pull request #1601: Fix LCD rest-server Command 2018-07-09 15:56:08 -04:00
sunnya97 96bc71404e asdf 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 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
Fabian Weber 2c697c982b added sunnys changes 2018-07-04 10:48:47 +02:00
Fabian a118229fcb Fabo/Switch key creation REST output to bech32 address (#1522)
* switch new key output to bech32
* changelog
* fixed tests
* Update LCD TestKeys failure message
2018-07-03 21:31:15 +02:00
Ethan Buchman d388036454 Merge PR #1520: various fixes for test_cli
* various fixes for test_cli
* linting
2018-07-03 06:33:53 +02:00
Ethan Buchman f78f30c67a update for tm v0.22.0. tmlibs->tendermint/libs 2018-07-02 16:34:06 -04:00
Ethan Buchman feb3acdbe9 Merge PR #1491: client/lcd: fix tests
* client/lcd: fix tests
* circle: drop test_unit. store artifacts in test_cover
* hack fix in TestUnrevoke
2018-07-01 01:32:52 +02: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
Dev Ojha 337e87b228 Merge PR #1449: crypto/keys: make bcrypt security param a var
This is done so that the time spent on bcrypt during test cases
can be reduced. This change reduces the amount of time lcd tests
spend on bcrypt from 76% to 40%. (We need to reduce the number of
calls to bcrypt in a seperate PR, along with fixing other sources
of slowness)

Making the bcrypt security parameter a var shouldn't be a security issue:
One can't verify an invalid key by maliciously changing the bcrypt
parameter during a runtime vulnerability. The main security
threat this then exposes would be something that changes this during
runtime before the user creates their key. This vulnerability must
succeed to update this to that same value before every subsequent call
to gaiacli keys in future startups / or the attacker must get access
to the filesystem. However, with this same threat model (changing
variables in runtime), one can cause the user to sign a different tx
than what they see, which is a significantly cheaper attack then breaking
a bcrypt hash. (Recall that the nonce still exists to break rainbow
tables)
2018-06-29 09:22:06 +02: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 3e14868bd6 Merge PR #1429: tools: Add ineffassign linter
* tools: Add ineffassign linter

This errors on assignments that don't actually do anything. i.e.

x, err := myFunc(1)
y, err = myFunc(2)

This will call out that the first function's call error was never
used.

* Fix makefile, add misspell to makefile
2018-06-28 19:12:02 +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
Sunny Aggarwal 4effa6f8d4 Merge PR #1357: RESTful governance endpoints
* get deposit rest endpoint
* query proposals
* changelog
* fixed commented out headers
* fixed undeterministic tests
* increase circle test timeout
* MustBech32ifyAcc
* asdf
2018-06-28 01:49:59 +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
Dev Ojha 2e97baabf6 Merge PR #1358: Fix typos and gofmt files
* Fix typos
* gofmt -s files
* Add mispellings and gofmt checks to circle CI
* circleci: Install misspell in the linting step
2018-06-25 20:23:17 +02:00
Sunny Aggarwal dc2c8f900b Merge PR #1168: Governance MVP 2018-06-22 02:19:14 +02:00
Fabian 4884747662 Merge PR #1317: Added tx hash to query output in LCD
* added tx hash
* changelog
2018-06-21 19:21:58 +02:00
Christopher Goes 2a9bc2153a Merge pull request #1310: Fix x/bank REST handler
* Update sendtx.go

* Pass chain_id through in LCD tests

* Update changelog
2018-06-20 10:34:12 -07:00
Dev Ojha 1f88b0bf8f Merge PR #1281: Don't run defers if it would result in an NPE
* Don't run defers if it would result in an NPE
* Nuke CircleCI caches
2018-06-16 09:49:55 +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 f68e903d06 Merge PR #1260: Fixed url encoding issue 2018-06-15 22:24:04 +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
Dev Ojha bd362ee590 Merge PR #1090: Switch away from ephemeral ports
* Switch ports 4665x to be 2655x
This is done so the default ports aren't in the linux kernel's default ephemeral port range.
* Missed one doc file, change dep so gaiad works
* Update changelog, fix Gopkg.lock
2018-06-14 00:13:51 +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
Ethan Buchman 2219548d0e fix from merge 2018-06-12 22:45:51 -07:00
Ethan Buchman 85c7702ca0 Merge branch 'master' into local/develop 2018-06-12 22:40:54 -07:00
Sunny Aggarwal 161cb474d4 Account Numbers for Replay Protection with Account Pruning (#1077)
* in progress
* passes current tests
* added tests and got working
* changelog and docs
* removed prints
* oops
* works!
* issue in test_cli
* number 9 number 9 number 9
* at least it does only the 9 issue now
* hallelujah it works!
* removed print statement
* rebased
* gah
2018-06-12 04:30:54 +02:00
Rigel 1b20adcd22 Merge PR #1191: LCD cleanup / add LCD gas field
* remove global variables from lcd
* added make race, fix lcd race condition
* cleanup
* Five-character changelog update
2018-06-12 03:12:37 +02:00
Fabian 8ece807301 Merge PR #1085: Re-enable tx history in LCD
* reenable tx search
* removed not needed argument
* register types for decoding
* trying to fix indexing tests
* added tx hash query test
* Fix x/bank tagging
* remove dead code
* remove print
* extended tests for tx querying
* changelog
* added txs address querying
* linted
* rename
* use prefix for bech32 addresses in tags
* changed error message
* Fix tiny linter issue
2018-06-11 22:09:29 +02:00
Christopher Goes c6796b8fba Add --gas flag to specify gas limit for a transaction 2018-06-09 09:31:59 -07:00
Christopher Goes d47b7cf5fa
Add --gas flag to specify gas limit for a transaction 2018-06-09 08:51:31 +02:00
Ethan Buchman a277ba91c7 Merge PR #1178: Merge master (Tendermint updates)
* update to tm v0.19.6
* update tm to 0.17.4
* update for tm v0.19.9
* update godep
2018-06-09 06:34:27 +02:00
Ethan Buchman 2913d14239 Merge branch 'master' into develop 2018-06-08 19:31:48 -07:00
Fabian 5f409ce832 Merge PR #1086: Bech32Cosmos output/input for the LCD
* refactored bech32ization
* updated keys endpoints for bech32
* bech32 for sending and querying
* trying to change output of validator addresses
* fixed validator output
* linted
* fixed merge conflict
* added bech32 to staking endpoints
* removed some logging statements
* added GetAccPubKeyBech32Cosmos
* fixed cli tests
* updated swagger
* merged standard bech32 change
* renamed bech32cosmos to bech32
* bech32ify json output for key add
* readded changelog
* fixed changelog merge issue
* Update CHANGELOG.md
2018-06-06 06:53:04 +02:00
Ethan Buchman f3f2729b11 update for tm v0.19.9 2018-06-05 18:04:16 -07:00
Christopher Goes 781975d6a0
Feedback on REST server start (closes #973) 2018-06-04 17:39:28 +02:00
rigelrozanski 5515b60b0a better tooling for cli, couple lsd fixes 2018-05-31 18:46:25 -07:00
rigelrozanski ecf800810c remove append usage from lcd, fix address order test issue in lcd 2018-05-30 09:00:00 -07:00
Rigel 1c462013a9
Merge branch 'develop' into matt/stake-rest 2018-05-30 10:53:12 -04:00
rigelrozanski 52cd8b8c1f fix endPath missing bug for query 2018-05-30 07:42:59 -07:00
Matt Bell 99e5c5a18f Restored validators query endpoint 2018-05-29 15:07:03 +09:00
Zaki Manian f33f49a840 Almost from scratch reimplementation of bech32cosmos integration. 2018-05-27 13:47:23 +02:00
Matt Bell 5c1a7694e5 Merge branch 'develop' into matt/stake-rest 2018-05-27 16:02:33 +09:00
Matt Bell cfa1d42292 Fixed LCD staking tests 2018-05-26 17:37:39 +09:00
rigelrozanski 57d86cc04c fix many lcd errors, restructure lcd init 2018-05-25 10:17:49 -04:00
Matt Bell 0738de17f4 Removed candidates endpoint and addressed some comments 2018-05-25 09:32:43 +09:00
Matt Bell 6ad16e6c90 Changes to /stake/candidates REST handler 2018-05-25 09:32:37 +09:00
Matt Bell cb107c7383 Fixed LCD tests 2018-05-25 09:32:37 +09:00
Matt Bell 2c46662141 Added LCD test for candidates query 2018-05-25 09:32:37 +09:00
Matt Bell 10056d36d1 Set generated candidate addresses in lcd tests 2018-05-25 09:32:37 +09:00
Matt Bell 98b9040c63 Use actual types for genesis doc instead of unmarshaling JSON 2018-05-25 09:32:37 +09:00
Matt Bell 39995fe065 Added (non-working) stake REST tests 2018-05-25 09:32:12 +09:00
Matt Bell 5b81938e57 Enable stake REST routes 2018-05-25 09:32:12 +09:00
sunnya97 5d7c3af1b8 works 2018-05-23 22:09:01 -07:00
Christopher Goes 67961476b4 Fix testsuite 2018-04-27 20:06:50 -04:00
Ethan Buchman d1402f4e92 move waitForXxx funcs from lcd to tests.WaitForXxx 2018-04-26 14:26:39 -04:00
Christopher Goes fd40d39556
Only one CoreContext for all REST commands 2018-04-25 16:49:31 +02:00
Christopher Goes 56ac948dc6
REST folder restructure & cleanup 2018-04-25 16:18:06 +02:00
rigelrozanski d28efaac27 many renames / golint compliance 2018-04-19 00:49:24 -04:00
rigelrozanski 1f9184a24b basic go-linting // moved corecontext 2018-04-18 15:39:32 -04:00
Christopher Goes f8e44b5b00 Error codespacing (#809)
* Initial codespacing layout (ref #766)
* Add codespace to Router (ref #766)
* Implement Codespacer and update modules
* Default codespaces, testcases
* Update error formatting, codespacer tests
* Add RegisterOrPanic testcase
* Update CHANGELOG
2018-04-17 19:16:21 -07:00
Christopher Goes 49b8978454 Swap all examples & testcases to use automatic DB namespacing 2018-04-14 17:05:50 -07:00
Ethan Buchman 1860f988b6 fix tests 2018-04-07 20:56:49 +03:00
Jae Kwon 413780807e WIP 2018-04-07 02:16:41 -07:00
Jae Kwon a06cfbeaa8 ... 2018-04-07 00:19:44 -07:00
Jae Kwon 49fdf80d9d WIP commit 2018-04-06 17:25:08 -07:00
Ethan Buchman e7e98a0644 lcd: waitForHeight instead of sleep in tests 2018-04-02 19:31:54 +03:00
Ethan Buchman ceddb54e91 cleanup gitignore 2018-03-31 19:05:15 +03:00
Ethan Buchman e226cb7a35
Merge branch 'develop' into cwgoes/misc-minor-fixes 2018-03-31 18:54:06 +03:00
Christopher Goes 10a22f20ba
Remove 'cool' and 'sketchy' modules from basecoind 2018-03-30 16:32:11 +02:00
Ethan Buchman d25593afc4
Merge pull request #726 from cosmos/adrian/mountmultipledbs
Mount every single store with its own DB
2018-03-30 06:41:10 -04:00
Adrian Brink 0789a5eed0
NewBasecoinApp takes a map of databases
NewBasecoinApp takes a map[string]dbm.DB . This stabilises the API,
since it allows us to add more stores without a breaking change. The
convention is that the keys of the dbs correspond to the names of the
capKeys.
2018-03-30 12:18:12 +02:00
Ethan Buchman 66a1130f9d
Merge pull request #662 from cosmos/matt/ibc-rest
REST IBC transfer endpoint
2018-03-29 08:45:46 -04:00
Christopher Goes 0f9bd93bb1
Switch a few directories (#644 #646) 2018-03-29 12:10:13 +02:00
Christopher Goes 44de18e8da Use temporary dir for lcd keybase tests (closes #646) 2018-03-29 12:04:52 +02:00
Christopher Goes bb66b852ef Move keybase DB to ~/.basecoind/data (closes #644) 2018-03-29 12:04:52 +02:00
Adrian Brink 243564c233
Tests can never be proven to be non-deterministic
Our tests are at best probabilistic deterministic.
2018-03-28 15:08:59 +02:00
Christopher Goes 5b642062a7 Initial per-module genesis initialization 2018-03-28 11:24:31 +02:00
Ethan Buchman 4331d9c2a4 fix test 2018-03-27 11:35:58 -04:00
Matt Bell 5cfad33e49 Remove duplicate check 2018-03-20 13:46:02 +01:00
Matt Bell 0eec9671b2 Fixed IBC test 2018-03-20 11:53:02 +01:00
Matt Bell bad5228c4c IBC transfer REST test 2018-03-19 18:13:47 +01:00
Matt Bell ef68be2f38 Added IBC transfer REST endpoint 2018-03-19 18:13:37 +01:00
Ethan Buchman 64852138b6 fix the tests. includes some hacks 2018-03-18 02:02:26 +01:00
Ethan Buchman d807d32f8a client/lcd: wip use in-proc tm and lcd for tests 2018-03-17 23:12:43 +01:00
Ethan Buchman 683663f680 fixes post rebase 2018-03-17 23:09:04 +01:00
Fabian Weber 5ea06639f9 fix tests and refactored 2018-03-17 22:17:56 +01:00
Matt Bell fa78893f40 Fixed LCD tests 2018-03-17 22:17:56 +01:00
Fabian Weber 947262f649 checking for expected sycning response + setting uint32 2018-03-17 22:17:56 +01:00
Fabian Weber cbbb3be0d4 fixed tests + removed indexed txs 2018-03-17 22:17:56 +01:00
Fabian Weber cf6f04978c adjusted sending + tx tests 2018-03-17 22:17:56 +01:00
Fabian Weber 1cd6ec1084 most tests working 2018-03-17 22:14:19 +01:00
Fabian Weber 579bd56127 fixed some tests 2018-03-17 22:14:19 +01:00
Ethan Buchman 39c8e4eb7f client/lcd: fix up some tests. print statements abound 2018-03-17 22:14:19 +01:00
rigelrozanski 1778a27082 more of the go-bash stuff for REST 2018-03-17 22:14:19 +01:00
rigelrozanski fdb9d5f580 moved actual go commands 2018-03-17 22:14:19 +01:00
Fabian b3532e2d2b using actual running servers + http calls to test REST 2018-03-17 22:14:19 +01:00
rigelrozanski 8858371c43 ... 2018-03-17 22:14:19 +01:00
Fabian Weber 5cc0acf274 improved send coins test 2018-03-17 22:14:19 +01:00
Fabian Weber 8cd9e05fc2 remove keys.db 2018-03-17 22:14:19 +01:00
Fabian e8e1e2899b removed /latest endpoints and checks 2018-03-17 22:14:19 +01:00
Fabian abfa409d37 fixed merge 2018-03-17 22:14:19 +01:00
Fabian Weber 1b78752311 removed clutter 2018-03-17 22:14:19 +01:00
Fabian Weber ef88f34d57 added regexp for version returned 2018-03-17 22:14:19 +01:00
Fabian 0121c98a1e add /accounts endpoints but failing 2018-03-17 22:14:19 +01:00
Fabian 0d423ae066 ignore generated keys.db from tests 2018-03-17 22:14:19 +01:00
Fabian 4ef129d9e6 require seed for account creation 2018-03-17 22:14:19 +01:00
Fabian f1cdf57a48 add request test helper 2018-03-17 22:14:19 +01:00
Fabian 8aec254333 add add key test 2018-03-17 22:14:19 +01:00
rigelrozanski 11fdd831ee refactoring server new non-deterministic error :( 2018-03-17 22:14:19 +01:00
Fabian Weber 189ce0d73f added version test 2018-03-17 22:14:19 +01:00
Fabian Weber 134d909cf6 added failing tests for blocks and validators 2018-03-17 22:14:19 +01:00
Fabian Weber b6c094f1ad improved node status tests 2018-03-17 22:14:19 +01:00
Fabian 2f470baf19 refactored route registering 2018-03-17 22:14:19 +01:00
Fabian Weber afea775748 improved test output 2018-03-17 22:14:19 +01:00
rigelrozanski a28f53721d rebase fixes
...
2018-03-17 22:14:19 +01:00
rigelrozanski c7589cc67c lcd tests to assert 2018-03-17 22:14:19 +01:00
Fabian Weber cdba13c531 added node info tests 2018-03-17 22:14:19 +01:00
Fabian 37bbde837b added node syncing endpoint 2018-03-17 22:14:19 +01:00
Fabian Weber 7d36d953f2 added tests for /keys 2018-03-17 22:14:19 +01:00
Ethan Buchman ad705fdea1 bump version
added rest server and status endpoint

added get block endpoint

added latest block endpoint

add 404 if height is out of bounds

add version endpoint

add validators endpoint

export GetBlockHeight

add keys endpoints

add txs endpoints

added verb limiters to ednpoints

only output node info + json structure improvement

fixed wrong body parsing

github PR template

crypto.Address -> sdk.Address

revert to old go-wire

update glide

remove print statement and update glide

fix #554

add .DS_Store to .gitignore

Massive consolidation: queue, data storage struct, store, logic, ...

Small fixes
2018-03-17 22:14:19 +01:00
Ethan Frey bae7cec3fa Move all subcommands out of main into proper folders 2018-03-01 02:36:57 +00:00