Commit Graph

416 Commits

Author SHA1 Message Date
Sunny Aggarwal 1d3a04a61c Switch gov proposal-queues to use iterators (#2638)
* switched gov proposals queue to use iterators
* update gov spec
* update proposal.Equal
* Amino api change
* switched proposalID to uint64
* renamed Gov Procedures to Params
* s/ActiveProposalQueueProposalKey/KeyActiveProposalQueueProposal/g
* numLatestProposals -> Limit
* fixed staking invariant breakage because of gov deposits
* Send deposits to DepositedCoinsAccAddr or BurnedDepositCoinsAccAddr
2018-11-06 23:33:18 -08:00
Christopher Goes dfddac394d Merge branch 'develop' into sunny/get_all_delegations_validator_querier 2018-11-05 11:56:32 +01:00
Alessio Treglia c20fcbfd8f New genesis workflow (#2602)
New genesis workflow:
* `gaiad init` is now used to generate an empty `genesis.json`.
* Genesis accounts need to be populated manually before running
  `gaiad collect-gentxs`.
* This should support starfish too, see #2615 for more info.
* Closes: #2596 #2615
* Validate validator address and address against respective account ex ante
* Fix local testnet failures
* New genesis tests
* Run make format
* Add --pubkey flag
* gaiad collect-gentxs takes no args
2018-11-04 20:26:46 -08:00
Alexander Bezobchuk 50926fffff Update to TM v0.26.0 - Part I (#2679)
* Update to TM v0.26.0
2018-11-04 18:28:38 -08:00
Sunny Aggarwal 2d429731b3 LCD and CLI 2018-11-03 22:55:38 -07:00
Rigel 0d5ebd2495
Merge PR #2667: Gaialite signal handling fix
Gaialite signal handling is broken, repair it
2018-11-02 12:43:07 -04:00
Alessio Treglia e598af9eb6
Fix lint 2018-11-02 13:47:14 +00:00
Alessio Treglia 36bb4409b6
Refactor TrapSignal 2018-11-02 13:44:40 +00:00
Alessio Treglia a0a6bad4c0
Fix test 2018-11-02 13:37:23 +00:00
Alessio Treglia 48192ea3d4
Gaialite signal handling is broken, repair it 2018-11-02 08:42:29 +00:00
Alessio Treglia 91dcd0f82a
Include DNS alt name in certificate
Closes: #2664
2018-11-02 08:17:57 +00:00
ValarDragon e4b5e2c9f3 Make simulation use a transition matrix for block size
This enables simulating periods of high load, and periods of low to no load.
(low load because future ops will still terminate in that time frame)
2018-10-28 21:37:19 -07:00
HaoyangLiu 9ee9e28439 Merge PR #2462: Add swagger-ui for gov, stake and slashing 2018-10-24 15:19:48 +02:00
Sunny Aggarwal d666658ca9 Merge PR #2553: Renamed msg.Name() and msg.Type() to msg.Type() and msg.Route() 2018-10-23 21:23:55 +02:00
Christopher Goes a231bd8ccc
Merge PR #2555: Don't acquire lock on read-only keybase 2018-10-23 21:03:08 +02:00
Federico Kunze 301fdf4a40 test cleanup 2018-10-22 14:21:53 +02:00
Federico Kunze 77177b2861 Merge develop and conflicts 2018-10-22 11:18:51 +02:00
Federico Kunze 152b3bd67b Split delegator summary endpoint 2018-10-20 22:25:50 +02:00
Federico Kunze 8999a4d719 Add validator unbonds 2018-10-20 21:30:07 +02:00
Federico Kunze 5e1720b6cb Added LCD tests 2018-10-20 21:10:19 +02:00
Cong Zhao 6c623b203e #1255 make keybase opened with readonly option to support better parallelization between gaiacli 2018-10-20 20:26:15 +08:00
Rigel b48d0d5623 Merge PR #2527: Minting 2018-10-19 20:36:00 +02:00
Alessio Treglia 593921d04d Merge PR #2524: Replace GenTx with StdTx
Rework the process of loading a genesis.json file to load a starting app state and set of initial transactions to process.

* New function to create genesis account from MsgCreateValidator
* Add arg to PrintUnsignedStdTx() to actually operate in offline mode
* New func processStdTxs()
* Remove gen-tx command
* Cleanup, return validators as they need to be written into genesis.json
* Modify gaiad init to allow auto-create of stdTx
* Remove server/testnet.go
* Don't load node_key.json, which might not be available
* Get the txs through DeliverTx
* Add app.slashingKeeper.AddValidators at the end of genesis
* On InitChain(), Signature's account number must be 0
* Add (tentative?) command to generate {node_key,priv_validator}.json files
* Reintroduce gaiad testnet
* Prompt user for passwords
* Update gaia to work with auth.StdTx
* Remove test_utils, NewTestGaiaAppGenState is now deprecated
* Combine --genesis-format and --generate-only
* Improve sign command's --offline flag documentation
* Moniker must be set
* Call app.slashingKeeper.AddValidators() even if len(txs) == 0
* Refactoring, introduce gaiad init --skip-genesis, code cleanup
* Drop unnecessary workaround to make lcd_tests pass
* Reintroduce gentx
* Simple name changes, GenesisState.Txs -> .GenTxs; OWK -> OverwriteKey; OverwriteKeys -> OverwriteKey
2018-10-19 20:00:27 +02:00
Federico Kunze ad355d6c69 Merge PR #2444: Standardize REST error responses 2018-10-19 18:55:20 +02:00
David Braun e845569d16 Merge PR #2496: Add example to Swagger specification for /keys/seed 2018-10-17 20:25:02 +02:00
Ethan Buchman 1ee8deed2b Merge PR #2090: Improve crypto/keys and add `keys mnemonic` and `keys new` commands
* crypto/keys/hd: use btcec to remove dep on tendermint

* crypto/keys/bcrypt: improve comment about fork

* crypto/keys/bip39 -> crypto/keys/bip39/fundraiser

* crypto/keys/bip39: bring in fork of tyler-smith

* crypto/keys/hd: update dep

* crypto/keys: update deps

* crypto/keys: move mintkey.go into new crypto/keys/mintkey

* crypto/keys/hd: NewParamsFromPath

* crypto/keys: keybase.Derive takes a bip39 passphrase too

* crypto/keys/hd: BIP44Params.DerivationPath

* gaiacli keys: add commands new and mnemonic

* fix lints

* minor fixes from review

* update Gopkg.toml

* add tendermint fork of golang.org/x/crypto
* pin some transitive deps

* crypto/keys/bcrypt: remove

* remove in favour of fork of golang.org/x/crypto/bcrypt at github.com/tendermint/crypto/bcrypt

* crypto/keys/bip39: remove completely

* use fork cosmos/go-bip39 instead

* Gopkg.toml: dont use master

* Pull in changes from my PR

* fixes from review

* enforce min len for --unsafe-entropy

* lint fix

* feedback from review

* fix dep
2018-10-17 13:37:58 -04:00
Sunny Aggarwal 070bda3a25 Merge PR #2515: Fix gov deposit query lcd non-determinism
* non deterministic addr ordering

* sorted addrs at gen

* fixed comment

* fixed names and passwords
2018-10-17 00:55:36 -04:00
Christopher Goes 2c4d9a0be4 Merge branch 'develop' into cwgoes/fix-signing-info-bugs 2018-10-15 21:04:49 +02:00
Federico Kunze 6dc6a78422 fix import 2018-10-15 10:44:15 +02:00
Federico Kunze 8e1d0fbac0 Add option to indent response 2018-10-15 10:41:37 +02:00
Federico Kunze 2b701655d9 test deposit values 2018-10-15 10:27:24 +02:00
Federico Kunze f8486aeca5 Add deposits endpoint and tests 2018-10-12 19:05:22 -07:00
Christopher Goes 6e4a8d9e16 Update spec 2018-10-12 01:04:57 +02:00
Christopher Goes 8c2c9dba8a Update block height on validator bonding 2018-10-12 00:15:58 +02:00
ValarDragon 9e334afad0 Lock binary dependencies to a specific commits / versions
This is basically copying over @anton's great script!

Also had to run `make format` to make this pass `test_lint`.
This PR also makes the make commands for tools further align
with the tendermint implementation.
2018-10-09 23:52:36 -07:00
Christopher Goes e251088672
Merge PR #2452: Fix LCD Validator Initialization 2018-10-09 20:10:37 +02:00
HaoyangLiu 1aebe103ba Merge branch 'develop' of https://github.com/cosmos/cosmos-sdk into bianjie/lcd-lite-swagger-ui 2018-10-09 09:21:45 +08:00
Aleksandr Bezobchuk 975065724b Revert back to 100 power for proposing validator 2018-10-08 02:51:29 +08:00
Aleksandr Bezobchuk 79a0339844 Use NewTestGaiaAppGenState in LCD test gen 2018-10-08 00:59:44 +08:00
Aleksandr Bezobchuk 2527e1fa3b Implement NewTestGaiaAppGenState and update LCD test bonding 2018-10-08 00:57:52 +08:00
HaoyangLiu 6d645f20fa Refactor keys handler according to code reviewers 2018-10-05 07:19:52 +08:00
HaoyangLiu 1acab69326 Fix test_lint failure and test_cover failure 2018-10-04 21:15:29 +08:00
HaoyangLiu 8e1bfee6ca Add swagger-ui for key management 2018-10-04 20:36:24 +08:00
HaoyangLiu 9f67e8af20 Merge PR #2215: Add swagger-ui for gaiacli lite-server 2018-10-04 13:00:24 +02:00
Christopher Goes c676eab46b WithTrustNode, Makefile fixes, 'make format' 2018-10-04 08:34:39 +02:00
HaoyangLiu 1d4cfe89d2 Merge with develop 2018-10-04 08:10:29 +08:00
Alexander Bezobchuk 89d13d1f4c Merge PR #2429: LCD Properly Init Proposing Validator in Tests
* Refactor InitializeTestLCD to initialize correctly

* Update InitializeTestLCD API usage in LCD unit tests

* Update pending log

* Update named return variables

* Increase power of validator proposer in LCD tests
2018-10-03 12:42:44 -04:00
Christopher Goes 17983460b8
Merge PR #2219: Update to Tendermint 0.24 (except NextValSet offsets) 2018-10-03 17:48:23 +02:00
HaoyangLiu 5d259b1b39 Add post respones process to add json to header and decide whether bring in indent to make response more readable 2018-10-02 23:15:04 +08:00
HaoyangLiu f5df1982f9 Add description for return type 2018-10-01 09:26:08 +08:00
HaoyangLiu 019b1d95cf unminify JS files according to cwgoes 2018-09-30 18:50:31 +08:00
HaoyangLiu da5da6e3a1 Fix lcd test failure for endpoint change 2018-09-30 13:42:45 +08:00
HaoyangLiu f896497db1 Improve swagger.yaml 2018-09-30 13:26:44 +08:00
HaoyangLiu b7f27a0e1f update gopkg.lock and fix compile error 2018-09-30 12:53:30 +08:00
HaoyangLiu d6f6a1f87f Merge with develop 2018-09-30 11:46:27 +08:00
HaoyangLiu 6e8b8e47ee Add swagger-ui for ICS0 and ICS20 2018-09-30 11:42:12 +08: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
HaoyangLiu 46e268efe2 Convert swagger.json to swagger.yaml 2018-09-27 22:07:39 +08:00
HaoyangLiu bf24a42a29 Remove stake API from this PR 2018-09-27 19:54:33 +08:00
HaoyangLiu 4e3066131e Merge with develop 2018-09-27 19:41:38 +08:00
HaoyangLiu c5affaa7bf Remove docs/clients/lcd-rest-api.yaml and add its content to client/lcd/swagger-ui/swagger.json 2018-09-27 19:36:22 +08:00
HaoyangLiu bff2f33ac5 Rename swaggerui to swagger-ui 2018-09-27 19:06:22 +08:00
Alexander Bezobchuk 91cac96fea Merge PR #2391: LCD Cleanup and DRY Refactor 2018-09-26 21:29:39 +08:00
Matthew Slipper 2fb3493ff5 Merge PR #2223: Gaia CLI Config Command
* Allow a gaia-cli config file to be created

Closes #1613.
Closes #1275.
Closes #1956.

* Add homedir to Gopkg.toml

* Updates from code review

* Post-rebase fixes

* Update test

* Code review refactor

* Fixes from code review

* Fix import

* Fix broken test

* Fixes from rebase

* Fix formatting
2018-09-25 17:36:42 -04:00
Alexander Bezobchuk 04487ca5db Merge PR #2402: Skip LCD test TestVersion when no env var 2018-09-26 02:47:28 +08:00
HaoyangLiu dc2d98d09a Now only add API doc for version 2018-09-23 16:11:34 +08:00
HaoyangLiu 0b021cfa45 Merge with develop 2018-09-23 15:35:29 +08:00
Alessio Treglia e2da4caae4 Merge PR #2364: Implement HTTPS for the LCD REST server
In order to guarantee a secure connection between apps and the LCD the
communication must be encrypted - even if clients and server run on the
same local machine, credentials must never be transmitted in clear text.

Upon start up, the server generates a self-signed certificate and a key.
Both are stored as temporary files; removal is guaranteed on exit.

This new behaviour is now enabled by default, though users are provided
with a --insecure flag to switch it off.
2018-09-22 00:33:58 +08:00
Jessy Irwin 9b6b00689c Merge PR #2361: Remove IBC entrypoints 2018-09-20 22:51:14 +08:00
Alessio Treglia 10b916eb28 Merge PR #2318: Simplify version handling, rely on git describe 2018-09-20 00:03:04 +08:00
HaoyangLiu 7dc09d0fc2 Merge PR 2210: Judge if trust-node predefined before create certifier add verification for getBlock, queryTx and getValidators (#2210)
Replace trust-node option with distrust-node option, and add varification in getting blocks, transactions and validator sets.
2018-09-15 02:41:21 +08:00
HaoyangLiu 173dccca47 go fmt root.go and statik/init.go 2018-09-14 14:14:16 +08:00
HaoyangLiu 538fd6ec5f Remove generated file statik.go and add empty init.go to avoid import error 2018-09-14 14:11:53 +08:00
Federico Kunze d195cc15ed Merge PR #2249: Staking Querier pt1
* Cherry picked commits from prev branch

* Added new keepers for querier functionalities

* Renaming

* Fixed gov errors and messages

* Added Querier to stake and app

* Update delegation keepers

* REST Queriers not working

* Fix marshalling error

* Querier tests working

* Pool and params working

* sdk.NewCoin for test handler

* Refactor and renaming

* Update LCD queries and added more tests for queriers

* use sdk.NewCoin

* Delegator summary query and tests

* Added more tests for keeper

* Update PENDING.md

* Update stake rest query

* Format and replaced panics for sdk.Error

* Refactor and addressed comments from Sunny and Aleks

* Fixed some of the errors produced by addr type change

* Fixed remaining errors

* Updated and fixed lite tests

* JSON Header and consistency on errors

* Increased cov for genesis

* Added comment for maxRetrieve param in keepers

* Comment on DelegationWithoutDec

* Bech32Validator Keepers

* Changed Bech validator

* Updated remaining tests and bech32 validator

* Addressed most of Rigel's comments

* Updated tests and types

* Make codec to be unexported from keeper

* Moved logic to query_utils and updated tests

* Fix linter err and PENDING

* Fix err

* Fix err

* Fixed tests

* Update PENDING description

* Update UpdateBondedValidatorsFull

* Update iterator

* defer iterator.Close()

* delete comment

* Address some of Aleks comments, need to fix tests

* export querier

* Fixed tests

* Address Rigel's comments

* More tests

* return error for GetDelegatorValidator

* Fixed conflicts

* Fix linter warnings

* Address @rigelrozanski comments

* Delete comments

* wire ––> codec
2018-09-13 17:23:44 -04: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
HaoyangLiu 5a8d823324 change swaggerui to swagger-ui 2018-09-14 01:01:57 +08:00
HaoyangLiu c2668335a7 merge with develop 2018-09-13 23:09:17 +08:00
HaoyangLiu 0c171ec761
Merge branch 'develop' into bianjie/lcd-lite-swagger-ui 2018-09-13 22:47:01 +08:00
HaoyangLiu 0f29a26efa Add a empty statik.go to avoid test_lint failure and add gocyclo for BroadcastTxRequestHandlerFn 2018-09-13 22:35:23 +08:00
HaoyangLiu 69b9a53b53 Remove generate golang file client/lcd/statik/statik.go 2018-09-13 21:33:04 +08:00
HaoyangLiu 5d5bdbb743 Use http.Handler instead of mux.Router 2018-09-13 20:35:54 +08:00
HaoyangLiu e704f095bd Keep both subcommand: rest-server and lite-server 2018-09-13 20:30:24 +08:00
HaoyangLiu 5f38b50a85 modify makefile to automatically install tools and generate api docs 2018-09-13 19:56:23 +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
Ismail Khoffi 06f094563a Merge PR #2301: remove BechValidator
- replace with and unexported struct and amino's ability to override /
implement MarshalJSON & UnmarshalJSON to have the pub key bechified

- replaced default time to UTC as I (from London) always got an error
while decoding (epoch but in BST ;-)

- remove all occurrences of `BechValidator
2018-09-10 18:37:03 -04: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
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 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
HaoyangLiu 76469c082e Remove responses category in swagger.json and update update_API_docs.md 2018-09-07 10:17:17 +08:00
Alessio Treglia 8c32a8f229
Check generate_only's output is actually unsigned 2018-09-04 15:06:55 +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
HaoyangLiu b43a1a3808 Split swagger.json, currently only transaction, bank and version are supported 2018-09-03 18:41:52 +08:00
HaoyangLiu ed935181e6 Refactor swagger.json for API docs 2018-09-03 18:32:13 +08:00
HaoyangLiu ea96d8bc2a Add governance and slashing, implement post /txs api 2018-09-03 13:40:23 +08:00
HaoyangLiu e496bbd6f5 Update pending and skip statik in test_lint 2018-09-02 22:30:24 +08:00
HaoyangLiu 9a1dac2f87 Refactor code according to code review 2018-09-02 21:42:17 +08:00
HaoyangLiu 8e032f850a Rename rest-server to lite-server and add README to clarify how to update API docs 2018-09-02 20:30:59 +08:00
HaoyangLiu 79c0bc40c8 Add swagger-ui to gaiacli rest-server 2018-09-02 20:09:43 +08: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
Christopher Goes 03f79ef744
Merge PR #2192: Split LCD implementation PR, part one 2018-08-31 18:41:24 +02:00
HaoyangLiu 67857d704b IRISHUB-238: change wait 3 second to wait tendermint new block. use MustUnmarshalBinary instead of UnmarshalBinary 2018-08-31 23:20:06 +08: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
HaoyangLiu 6d2fb8edef IRISHUB-238: fix test_cli failure, move certifier creation from lcd/root.go to NewCLIContext 2018-08-31 11:29:55 +08:00
HaoyangLiu 3f83aca599 IRISHUB-238: fix test_lint failures in client/lcd/root.go and server/ 2018-08-30 16:24:56 +08:00
HaoyangLiu b878edc388 IRISHUB-238: fix failures in test_lint and test_cover 2018-08-30 15:52:17 +08:00
HaoyangLiu 5473771105 IRISHUB-238 :add trust option for rest-server command 2018-08-30 15:08:10 +08:00
HaoyangLiu 703c643fc0 IRISHUB-238: Add multiply store proof build and verification 2018-08-30 15:05:16 +08:00
Alessio Treglia fb5fe9914d
simplify json handling in LCD tests 2018-08-24 10:16:51 +01:00
Alessio Treglia 2dea46779c
TestCoinSend: test success case when setting gas by hand 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
Federico Kunze cfb5acca6e Merge PR #2099: Query staking Pool and Params 2018-08-21 17:32:54 +02: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
Rigel 5fff217e9b Merge PR #2033: staking lcd uses owner address not pubkey address 2018-08-15 15:04:01 +02:00
Dev Ojha 4b13529f2d Merge pull request #2029: fix build error 2018-08-14 21:10:57 -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
Federico Kunze 63713c9378 Merge pull request #2000: tests for staking lcd
* Added tests for Delegator Validators routes

* Updated tests for undelegations

* Updated Gaia-lite docs

* Updated PENDING.md

* Updated comments

* Deleted more comments

* Add spacing
2018-08-13 18:06:48 -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
Federico Kunze 1da1115a24 Merge PR #1880: Staking Gaia-lite (ex LCD) refactor 2018-08-08 12:38:39 +02: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
Aleksandr Bezobchuk 6e9226144b Merge pull request #1850: Fix Non-Deterministic Test Coverage 2018-07-27 18:41:50 -04: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
Sunny Aggarwal f3a12909ef Merge PR #1773: Query the votes on a proposal
* added lcd endpoint to query all votes on a proposal
* added cli support
* Gopkg.lock from new dep
* Update PENDING.md
2018-07-20 02:02:46 +02:00
Joon aa525418e1 Merge PR #1373: Initialization of POS chain 2018-07-19 08:39:40 +02:00
Sunny Aggarwal d6969c1d22 Merge PR #1697: Proposal Query filter by status 2018-07-17 22:59:06 +02:00
Ethan Buchman e35d06eb24 client/lcd: add more gas for unbonding tx 2018-07-14 19:47:45 +01:00
Ethan Buchman f4ee940989 update to tm0.22.4-rc0 and bring back lcd test 2018-07-14 19:47:42 +01:00
Ethan Buchman 53bbe13ece disable lcd tests until fixed 2018-07-13 23:04:55 +01: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
Alexander Bezobchuk 5983a07fb6 Merge PR #1599: Implementation of TraceKVStore 2018-07-13 01:58:51 +02:00
Fabian Weber f8f46b2b8c added test for account importing 2018-07-12 19:44:31 +02:00
Christopher Goes 432c109f06
Merge PR #1627: ready-for-review: Gov modules enums marshalJSON to String 2018-07-12 19:39:15 +02:00
Sunny Aggarwal cba7fd7ee8 gov enums marshal to String 2018-07-10 17:59:07 -07: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
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