Commit Graph

270 Commits

Author SHA1 Message Date
SaReN bf8809ef98
Update x/auth to use Any (#6165)
* Migrate keeper codec to use marshaler

* Migrate AccountI to types

* Did go imports

* Fix tests for x/auth

* Cleanup std/codec

* Sort imports

* Fix legacy codec

* Add godoc for RegisterInterfaces

* Add RegisterInterfaces to std

* Fix typo

* Fixed merge changes

* Eliminate vesting import in auth

* Fix lint issues

* Fix tests

* Addressed comments

* Rename interfaces in RegisterInterfaces

* Removed codec.proto from std

* Minor code cleanup

Co-authored-by: Aaron Craelius <aaron@regen.network>
2020-05-20 19:21:00 +00:00
Aaron Craelius 70767c87c4
Update x/gov to use Any (#6147)
* Update x/gov to use Any

* Fixes

* Remove MsgSubmitProposalLegacy

* Update CHANGELOG.md

* Add RegisterInterfaces for x/distribution, x/params, & x/upgrade

* Fix query JSON issue

* Fix gov tests

* Revert custom Any Equals

* Re-remove types

* Rename receivers

* Fix imports in gov

* Sort imports

* Make amino JSON signing work with Any

* Run proto-gen

* Create full amino wrapper

* Fix errors

* Fixes

* Fix tests

* Test fixes

* Fix tests

* Linting

* Update ADR 019 and CHANGELOG

* Updated ADR 019

* Extract Marshal/UnmarshalProposal

* fix error

* lint

* linting

* linting

* Update client/keys/parse.go

Co-authored-by: Marko <marbar3778@yahoo.com>

* linting

* Update docs/architecture/adr-019-protobuf-state-encoding.md

Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>

* Update docs/architecture/adr-019-protobuf-state-encoding.md

Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>

* Address review feedback

* Add godocs

* Fix errors

* fix errors

* revert file

* Address review feedback

* Address review feedback

* Stacktrace debug flag

* Fix tests

* Address review feedback

Co-authored-by: sahith-narahari <sahithnarahari@gmail.com>
Co-authored-by: Marko <marbar3778@yahoo.com>
Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
2020-05-19 20:17:29 +00:00
Marko 54ed8d7a2c
lint: official action (#6156)
* switch from review dog to official golangci action

* fix release

* disable nolintlint and wsl

* fix linting issues

* have name adhere to required

* add timeout

Co-authored-by: Alessio Treglia <alessio@tendermint.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-05-07 09:40:49 +00:00
SaReN c211488b0b
x/auth: cli tests (#6152)
* Add cli tests for auth

* Format imports

* Fix auth tests

* Remove keys in validate sign call

* Eliminate defer in tests

* Format imports

* Test commit
2020-05-05 21:16:37 -04:00
Alessio Treglia 2414e5bdd4
x/auth: turn sign --validate-sigantures into a standalone command (#6108)
--validate-signatures should not be a flag of the sign command
as the operation performed (transaction signatures verification)
is logically distinct.

cli_test is and has always been an horrible name for package
directory as it's very much Go anti-idiomatic - _test is the
suffix used by test packages, not directories. Plus, CLI test
cases can and should live alongside other testcases that don't
require binaries to be built beforehand. Thus:

x/module/client/cli_test/*.go -> x/module/client/cli/

Test files that require sim{cli,d} shall be tagged with // +build cli_test

With regard to cli test auxiliary functions, they should live in:

x/module/client/testutil/

Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
2020-05-04 13:55:16 +00:00
Aaron Craelius bb4642ad0d
Decouple client/tx from x/auth (#5992)
As part of #5864 part 2), this PR decouples the new client/tx
package from x/auth (as an incremental step to deprecating
all the tx logic in x/auth) and adds StdFee, StdSignature,
StdSignMsgBase and StdTxBase to codec/std, while
deprecating the corresponding types in x/auth.
2020-04-15 23:55:02 +02:00
Alessio Treglia b75406534d
add missing keyring-backend flag (#5985)
Query commands that don't append all `get` flags would
panic otherwise.
2020-04-11 18:52:36 +02:00
Jonathan Gimeno 8eb4808b0e
Add flag to FlagKeyringBackend to QueryTxsByEventsCmd (#5957) 2020-04-08 17:17:55 +02:00
Alessio Treglia a1feca39c2
Enter the new keyring interface (#5904)
crypto/keyring:

`Keybase` interface gives way to its successor: `Keyring`. `LegacyKeybase`
interface is added in order to guarantee limited backward compatibility with
the old `Keybase` interface for the sole purpose of migrating keys across
the new keyring backends.

The package no longer depends on the `github.com/types.Config`
singleton.

`SupportedAlgos` and `SupportedLedgerAlgos` methods have been removed.
The keyring just fails when trying to perform an action with an unsupported
algorithm.

crypto/ subdirs reorganization:

`crypto/keys/hd` was moved to `crypto/hd`, which now groups together
all HD wallets related types and utilities.

client/input:

* Removal of unnecessary `GetCheckPassword`, `PrintPrefixed` functions.
* `GetConfirmation`'s signature changed to take in a io.Writer for better integration
  with `cobra.Command` types.

client/context:

* In-memory keyring is allocated in the context when `--gen-only` flag is passed
  in. `GetFromFields` does no longer silently allocate a keyring, it takes one as
  argument.

Co-authored with @jgimeno

Co-authored-by: Jonathan Gimeno <jgimeno@gmail.com>
2020-04-08 11:38:28 +02:00
Alexander Bezobchuk 22422c6de1
Merge PR #5927: Fix parseQueryResponse 2020-04-03 10:59:46 -04:00
Alessio Treglia ca19fbc5f8
types/rest: add convenience functions for error checking (#5900) 2020-04-01 09:50:22 +02:00
Federico Kunze 9cce836c08
crypto/keys: move keybase and keyring to crypto/keyring/ dir (#5866)
* crypto/keys: move keybase and keyring to crypto/keyring/ dir

* Update client/keys/root.go

* Update crypto/keyring/errors.go

* Update crypto/keyring/keybase.go

* Update crypto/keyring/options.go

* format

* changelog

* fix build

* format

* lint
2020-03-25 15:20:36 +00:00
Marko d657513741
lint: various linting fixs (#5825)
* lint: various linting fixs

Signed-off-by: Marko Baricevic <marbar3778@yahoo.com>

* more linting

* more linting fixes

* more errchecking

* comment out errcheck for now

* undo error check

* address some comments

* remore require error

* change delete to batch delete

Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
2020-03-20 19:24:18 +00:00
Federico Kunze 2cf816d457
minor test change 2020-03-19 22:48:20 -03:00
Federico Kunze 51d9045152
authclient: fix tests 2020-03-19 22:46:35 -03:00
Federico Kunze 38f4b084c1
authclient: update godoc for gas adjusted 2020-03-19 22:42:34 -03:00
Federico Kunze 3d2746434f
authclient: update txBuilder to return sdk.SimulationResponse 2020-03-19 22:40:07 -03:00
Jonathan Gimeno 8c7bb89549
Implementing --offline flag (#5810)
Closes: #5448
2020-03-19 02:49:33 +01:00
Aleksandr Bezobchuk f60cd5a2b5
Merge branch 'master' into bez/proto-client-init 2020-03-14 12:34:34 -04:00
Jonathan Gimeno 2e42f9cb74
Favor marshal unmashal binare bare (#5799)
* change abci file to use BinaryBare

* change all calls to EncodeLengthPrefixed to BinaryBare in distribution keeper store.

* change all calls to EncodeLengthPrefixed to BinaryBare in mint keeper store.

* change all calls to EncodeLengthPrefixed to BinaryBare in auth keeper store.

* change all calls to EncodeLengthPrefixed to BinaryBare in distribution keeper store.

* change all calls to EncodeLengthPrefixed to BinaryBare in staking keeper store.

* change all calls to EncodeLengthPrefixed to BinaryBare in staking keeper store.

* change all calls to EncodeLengthPrefixed to BinaryBare in gov keeper store.

* change all calls to EncodeLengthPrefixed to BinaryBare in slashing keeper store.

* update decoder test

* migrate decoder

* migrate gov simulation decoder

* migrate baseapp_test

* refactor QuerySubspace

* refactor coedc std codec

* migrate keybase

* migrate iavl store

* migrate root multi

* migrate ante basic

* migrate tx type to bare

* migrate auth client

* update auth types

* update decoder

* migrate supply decoder

* migrate stake encoding

* migrate staking simulation

* migrate genutil

* migrate simapp test helpers

* migrate docs

* upgrade changelog

* Update CHANGELOG.md

Co-Authored-By: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>

Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
2020-03-13 19:58:43 +00:00
Aleksandr Bezobchuk 3a94f42e11
Implement app-level tx 2020-03-12 10:53:27 -04:00
Alexander Bezobchuk 1b51a043e2
Fix x/auth GET commands (#5756)
Fix x/auth GET commands.

Fix QueryParamsCmd.
2020-03-06 15:16:30 +00:00
Alexander Bezobchuk 8cab43c812
Merge PR #5702: Add Param Querying to x/auth 2020-02-26 10:33:56 -05:00
Alexander Bezobchuk 794a496892
Merge PR #5533: Protobuf: x/auth & x/supply 2020-02-18 13:50:13 +01:00
Marko e44f914893
dep: bump tendermint version to 0.33.1 (#5645)
* dep: bump tendermint version to 0.33.1

Signed-off-by: Marko Baricevic <marbar3778@yahoo.com>

* minor touch up

Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
2020-02-14 09:04:05 -05:00
Alexander Bezobchuk 6890feb3d2
Merge PR #5572: ADR 004 Implementation 2020-01-30 16:31:16 -05:00
Alessio Treglia b647824716
Refactor x/auth/client/utils/ (#5555)
Packages named utils, common, or misc provide clients with no
sense of what the package contains. This makes it harder for
clients to use the package and makes it harder for maintainers
to keep the package focused. Over time, they accumulate dependencies
that can make compilation significantly and unnecessarily slower,
especially in large programs. And since such package names are
generic, they are more likely to collide with other packages
imported by client code, forcing clients to invent names to
distinguish them.

 cit. https://blog.golang.org/package-names
2020-01-24 16:40:56 +00:00
Alessio Treglia d0ff973386 Merge PR #5562: Remove KeyringServiceName from the sdk.Config struct 2020-01-23 13:47:11 -05:00
Alessio Treglia 415eab7a56
Create new generic keyring constructor: NewKeyring (#5547)
Remove other convenience constructors:
 * Remove NewKeyBaseFromHomeFlag
 * Remove NewKeyringFromDir
 * Remove NewKeyringFromHomeFlag
2020-01-22 17:54:56 +00:00
Alexander Bezobchuk c1991e31bd Merge PR #5527: Bump Tendermint Version to v0.33.0
* Bump Tendermint version to v0.33.0

* Deprecate old cmn package with new packages

* Update update DB APIs

* More DB updates

* Bump IAVL to v0.13.0

* Handle error returned by iavl.NewMutableTree

* Fix some IAVL stuffs

* Update IAVL

* More updates

* Passing tests

* Fix unit tests

Co-authored-by: Jack Zampolin <jack.zampolin@gmail.com>
2020-01-16 13:46:51 -08:00
Alexander Bezobchuk 25be589af6
Merge PR #5482: Update Query Txs by Events Command 2020-01-06 11:49:31 -05:00
Alexander Bezobchuk 9a183ffbcc
Merge PR #5421: Refactor Error Handling 2019-12-27 12:57:54 -05:00
Alessio Treglia 3c82b66347 Merge PR #5427: Remove code duplication in x/auth/client/cli 2019-12-27 10:23:18 -05:00
Ferenc Fabian 8353680115 Merge PR #5442: Remove of the client/alias.go 2019-12-23 11:05:47 -05:00
Alexander Bezobchuk 82a5238a46
Merge PR #5348: Fix Ignored Error During Tx Generate Only Mode 2019-12-01 10:06:34 -05:00
Alessio Treglia d4c831e63a Drop on-disk keybase in favor of keyring (#5180)
* Switch keys commands to keyring

* Replace NewKeybase with NewKeyring

* Fix delete test

* Purge dead code

* Override COSMOS_SDK_TEST_KEYRING envvar to switch to a test keyring

* s/unningOnServer/unningUnattended/

C'ing @tnachen

* Add deprecated warning, output looks like the following:

```
$ gaiacli keys update --help
Command "update" is deprecated, it takes no effect with the new keyring
based backend and is provided only for backward compatibility with the
legacy LevelDB based backend.
Refer to your operating system's manual to learn how to change your
keyring's password.

Change the password used to protect private key

Usage:
  gaiacli keys update <name> [flags]

Flags:
  -h, --help   help for update

Global Flags:
      --chain-id string   Chain ID of tendermint node
  -e, --encoding string   Binary encoding (hex|b64|btc) (default "hex")
      --home string       directory for config and data (default "/home/alessio/.gaiacli")
  -o, --output string     Output format (text|json) (default "text")
      --trace             print out full stack trace on errors
```

* Update multisign command

* Modify server.GenerateSaveCoinKey()

* GenerateSaveCoinKey more modifications

* Update docs

* Update upgrade module
2019-11-14 15:17:21 +01:00
Marko 92d2dbe3ff Merge PR #5244: Add debug commands 2019-11-11 09:54:32 -05:00
Marko b9490f2d93 Merge PR #5203: Add more linters 2019-10-17 09:47:35 -04:00
Marko 9f3789157e Merge PR #5192: golangcI-lint updates & set static version to 1.19 2019-10-14 11:43:19 -04:00
Kevin Davis 64a2741250 Merge PR #5040: Separate vesting from auth, add custom vesting schedules 2019-10-10 11:53:30 -04:00
Aditya c0223a4414 Merge PR #5006: Modular AnteDecorator 2019-10-10 08:46:09 -04:00
Alexander Bezobchuk d010b68c61
Merge PR #5114: Fix offline flag description 2019-09-30 11:21:38 -04:00
Marko 01d8a230b2 Merge PR #5068: Add linter Nakedret 2019-09-19 09:21:38 -04:00
Timothy Chen ab6d0a0bae Merge PR #5023: Implement Gaia Tx Decode 2019-09-17 17:08:09 -04:00
Marko 6684cdf3e5 Merge PR #5048: Fix linters and add golint 2019-09-16 13:11:17 -04:00
Xuefeng Zhu 8ae834727a Merge PR #5026: Remove unnecessary account check 2019-09-10 16:07:30 -04:00
Marko 3a4f1fc4d4 Merge PR #4881: Linting Galore 2019-08-19 12:06:27 -04:00
Alexander Bezobchuk 89b1220398
Merge PR #4924: Return Height on Query Errors + Update Account Endpoint 2019-08-19 10:58:11 -04:00
Alexander Bezobchuk 4b354a782b
Merge PR #4840: Various Updates for Gaia 2019-08-03 09:56:15 -04:00
colin axner 2e3c52bae1 Merge PR #4788: Query genesis transactions 2019-08-01 14:56:50 -04:00
Aayushi Jain 1a7f31f7c8 Merge PR #4678: Clean YAML output 2019-07-05 19:25:56 -04:00
colin axner 8d8fd9df1a generalize query response with height (#4573)
Addition to #4536, no longer specific to account queries.
Allows for validator endpoints to return height in the response.

Closes: #4609
2019-07-01 17:48:13 +01:00
Alexander Bezobchuk 3a39e9d558
Merge PR #4637: Update Search Txs by Events APIs 2019-06-28 09:32:47 -04:00
Alexander Bezobchuk b78c359a23
Merge PR #4605: x/bank: Expected Keeeper 2019-06-24 16:45:09 -04:00
Alessio Treglia 7b5e6cee07
Remove client/input.{Buffer,Override}Stdin() functions (#4602)
Cobra's new release made them redundant.

Thanks: Juan Leni <juan.leni@zondax.ch> for the original patch.
2019-06-22 11:24:59 +02:00
Alessio Treglia c530c1cbb7
Remove auth's AccountDecoder type (#4588)
AccountDecoder is now entirely redundant.
client package now does no longer depend on x/auth.

Context: #4488
2019-06-19 16:20:27 +02:00
Alessio Treglia 1eb7706c28
Separate account getters from client/context (#4579)
Account getters are removed from client context. x/auth has the
queriers necessary for retrieving account information.
These functions should be removed since they are currently
redundant and don't provide any extra value.

Closes: #4543
2019-06-19 14:24:11 +02:00
Alessio Treglia 1e7c4dd58a
Move /bank/balances/{address} REST endpoint into /x/bank (#4570)
Closes: #4560
2019-06-18 15:44:09 +02:00
Alexander Bezobchuk ac2e765607
Merge PR #4561: Add account JSON tag to AccountWithHeight 2019-06-15 16:17:39 +02:00
Alessio Treglia 73700df8c3 Merge PR #4555: Move client/{tx,rest,utils} into x/auth/client 2019-06-15 14:34:11 +02:00
Alexander Bezobchuk d5fe9b7eef
Merge PR #4550: Minor Cleanup 2019-06-14 11:52:28 +02:00
colin axner 95f3d32250 Merge PR #4536: Return account queries with height 2019-06-13 15:54:17 +02:00
Alexander Bezobchuk dc84c99dee Revert "Generalize auth/types.StdSignature (#4507)" (#4512)
This reverts commit a32d5a46d7.
2019-06-08 11:04:52 +01:00
Alessio Treglia a32d5a46d7
Generalize auth/types.StdSignature (#4507)
New Signature interface available in the top level types package.
auth.StdSignature implements such interface. User defined auth
module can now define their own custom signature types.

Work carried out in the context of the following issues:
- #4488
- #4487
2019-06-07 14:21:35 +01:00
colin axner c777fb9108 Merge PR #4505: Support height queries in REST client 2019-06-07 09:02:07 -04:00
Alexander Bezobchuk 3180e68c7b
Merge PR #4499: Remove Client Codec Redundancy 2019-06-06 11:43:15 -04:00
frog power 4000 5f9c3fdf88 Merge PR #4451: Client and Module Modularization 2019-06-05 19:26:16 -04:00
frog power 4000 73e5ef7c13 reduce module interdependancy, /client refactor (#4415)
* abstract staking BuildCreateValidatorMsg, genutil defines its own flags

* client/ refactor

* staking move keys from keeper to types
2019-05-28 09:44:04 +01:00
Alexander Bezobchuk cfe31c4090
Merge PR #4372: Use Build's Client/Server Name 2019-05-18 19:06:08 -04:00
Alessio Treglia 71d71f2206
Remove gaia (#4347)
Gaia is removed from cosmos-sdk repository.

Few changes were required to make sure no packages depend on gaia subpackages.

CI config is amended accordingly.

Unnecessary targets are removed from Makefile.

Simulations run through a lightweight version of gaia renamed to simapp.

Closes: #4104
2019-05-18 10:42:24 +02:00
frog power 4000 5b7690e5e9
Merge PR #4346: report card minor fixes
* report card minor fixes

* fix
2019-05-16 21:32:20 -04:00
Frank Yang 7558f76079 Merge PR #4321: Improve offline flag doc 2019-05-13 10:51:48 -04:00
Alessio Treglia 3c88ddc2f5 Merge PR #4083: Replace gaiad --assert-invariants-blockly with --inv-check-period
* Remove old broken flag
* Support --inv-check-period which asserts invariants every nth period
2019-04-10 19:33:50 -04:00
Marin Basic b50b25d0a9 Replace all REST query empty result HTTP Status codes to 200 (#4065)
All query params that are empty now returns success
(http.StatusOK) instead of mixed http status codes
(http.StatusNoContent/http.StatusBadRequest/
http.StatusInternalServerError)

Closes: #2007
2019-04-10 18:07:21 +01:00
wangjj9219 65338f6642 There's no check for chain-id in TxBuilder.SignStdTx #3945 (#3946)
Close: #3945
2019-04-09 13:46:13 +01:00
Alexander Bezobchuk ea46da7126
Merge PR #3970: Fix Tx Sign Offline Mode
- Add shorthand flags `-a` and `-s` for the account and sequence numbers respectively
- Mark the account and sequence numbers required during "offline" mode
- Always do an RPC query for account and sequence number during "online" mode
  - If clients wish to provide such values, they must use `--offline`. This makes the whole flow/UX easier to reason about.

closes: #3893
2019-03-26 10:36:10 -04:00
Alessio Treglia cdf2b7a7c5
gometalinter -> golangci-lint migration (#3933)
{,scripts/}Makefile:
- Remove gometalinter, install golangci-lint.
- Remove distinction between tools and devtools.
  Just tools is enough.
- test_lint -> lint
  Migrating away from underscore separated names.
- Remove unnecessary targets.
- Drop tendermint/lint. Incompatbile with golangci-lint
  and no longer necessary anyway.
- Fix misleading message in go-mod-cache.
- New ci-target to avoid download tools twice.
- Run tests with -mod=readonly.

Port tools/gometalinter.json to .golangci.yml
Update CircleCI config accordingly.

Closes: #3896
2019-03-19 17:52:43 +01:00
Alexander Bezobchuk 47a44fb580 Merge PR #3748: Multisig Display UX Improvements 2019-03-01 13:29:33 -08:00
Alexander Bezobchuk 6ace1fada2 Merge PR #3696: Cleanup Tx Broadcasting and Encoding 2019-02-26 12:34:27 +01:00
Alexander Bezobchuk feb98bcd05 Merge PR #3698: Prompt User Confirmation Prior to Signing & Broadcasting
* Prompt user confirmation prior to sign & broadcasting
* Update confirmation message
* Update and fix existing CLI integration tests
* Implement CLI integration test for tx confirmation
* Fix order of input into tx send
2019-02-26 12:34:01 +01:00
Alexander Bezobchuk c96d8f3e81 Merge PR #3713: Use from instead of name CLI flag for the tx sign cmd
* Use from instead of name CLI flag for the tx sign cmd
* Use cliCtx.GetFromName() instead of direct from value
2019-02-22 17:15:36 +01:00
Alexander Bezobchuk e39debd359 Merge PR #3674: Remove password/keybase from REST Client 2019-02-19 10:15:39 -08:00
Alessio Treglia 1aa6c197ff Merge PR #3580: Code cleanup of client types 2019-02-14 08:53:36 -08:00
frog power 4000 d66db6a772 Merge PR #3621: module inter-dependency cleanup 2019-02-13 15:01:50 -08:00
Jack Zampolin 2c9a5bc308 Merge PR #3554: x/auth and x/bank review results 2019-02-08 22:35:19 +01:00
Ducem Barr 9348750eb4 Merge PR #3523: Add tx/encode endpoint and CLI command 2019-02-08 13:17:25 -08:00
Juan Leni ba63eb1801 Merge PR #3557: Removing pkg/errors when not necessary 2019-02-08 11:37:46 -08:00
Jack Zampolin 408484e6d4
Merge PR #3503: CLI flags to args 2019-02-06 16:15:37 -08:00
Alessio Treglia 9a57ce0214 Merge PR #3514: don't lock keybase on lcd startup 2019-02-06 11:23:49 -08:00
frog power 4000 52f2ec71a9
Merge PR #3400: power reduction for Tendermint
* add uncompiled power functionality

* fix some compile errors

* Power -> TendermintPower

* tests rename GetTendermintPower

* test fix

* working

* fix delegation tests

* fix slash tests

* staking/keeper tests passing

* docs reversion

* debuggin workin

* x/staking test pass

* fix gov tests

* fix x/slashing tests

* working distribution test fixes

* fix distribution tests

* lint

* fix lcd tests

* fix gov test

* lint

* CLI fixes, rm stakingTypes

* typos

* working cli fixes

* cli test fix

* cli tests fixed

* testnet creation modification

* typo

* pending

* Sanitize Dec.Roundint64 (#3475)

* merge fixes

* @cwgoes comments

* fix tests

* change power reduction to 10^-6

* option to turn off minting for LCD tests
2019-02-05 21:30:48 -08:00
Alessio Treglia a2b73c8ab4 Merge PR #3460: Implement fee distribution RESTful endpoints 2019-02-04 16:45:18 -08:00
Alessio Treglia c04c69648e client/utils/ reorganization (#3487) 2019-02-04 07:48:26 -08:00
Alexander Bezobchuk 097a640412 Allow Simulation and Gen Only in REST Client (#3467) 2019-02-01 17:04:13 -08:00
Alexander Bezobchuk 90797f5e09 Gaia Lite Generate Only Support (w/o Keybase) (#3396) 2019-01-29 11:22:47 -08:00
Jack Zampolin 9f50c9f5b6
R4R: Ensure all CLI queries respect output flags (#3320) 2019-01-22 09:28:39 -08:00
Alexander Bezobchuk 36d1736a08 Refactor Gas/Fee Model (#3258) 2019-01-18 08:45:20 -08:00
Alessio Treglia 26cb0a125a Multi-signature workflow support (#3264)
- New keys add --multisig flag to store multisig keys
  locally.
- New multisign command to generate multisig
  signatures.
- New sign --multisig flag to enable multisig mode.
- Add multisig transactions support in ante handler.
- gaiad add-genesis-account can now take both account
  addresses and key names.

Closes: #3198
2019-01-16 09:30:57 -08:00
frog power 4000 78a21353da Rename stake/ to staking/ (#3280) 2019-01-11 12:08:01 -08:00
frog power 4000 5448824efb
Update x/auth/client/rest/sign.go
Co-Authored-By: alessio <quadrispro@ubuntu.com>
2019-01-02 20:51:11 +00:00
Alessio Treglia d78db91944 Fix tests 2019-01-02 10:53:24 +00:00
Alessio Treglia 1ebe1844d2 validate sign tx request's body
Closes: #3176
2018-12-27 14:43:23 +01:00
Federico Kunze f02f7aa5a0 Add fees and memo to REST, updated CLI to receive coins as fees (#3069) 2018-12-19 16:26:33 -08:00
Alessio Treglia eac7d6939d Merge PR #3127: Don't fallback to any default values for chain id
- Remove DefaultChainID(). User needs to suplly chain ID
  via either config or flag.
- Mark --chain-id as required by all tx commands.
- Fix gaiacli config values containing underscores.
  Underscore '_' character is not automagically translated
  into hyphen '-'. Viper values wouldn't be affected.
- Refresh gaiacli config tests

Closes: #810
2018-12-18 19:40:01 +01:00
Artur Albov 0c6d53dc07 Merge PR #2959: Add TxEncoder to client TxBuilder 2018-12-12 22:29:42 +01:00
Alessio Treglia 24a1670cf0 Run make format 2018-12-10 14:27:25 +00:00
Alexander Bezobchuk 5b42e83bc2 Merge PR #2995: Fully verify the signature in `gaiacli tx sign`
* Implement auxiliary methods/functions for just building a tx sig bytes

* Undo auxiliary methods/functions

* Validate signature

* Remove redundant comment

* Add pending log entry

* Minor cleanup

* Update sign cli doc

* Update cli sign offline flag doc

* Update printAndValidateSigs

* Implement TestGaiaCLIValidateSignatures

* Minor cleanup

* Fix linting

* Update x/auth/client/cli/sign.go

Co-Authored-By: alexanderbez <alexanderbez@users.noreply.github.com>

* Minor reformatting
2018-12-06 02:02:04 -05:00
Dev Ojha 13e78166ee Merge PR #2977: Don't serialize Account Number and Sequence Number in signatures
* Don't serialize Account Number and Sequence Number in signatures

This was not needed to be included within the tx body, as its in the
state.

* fix lint
2018-12-03 18:29:50 +01:00
Alessio Treglia 4c36b0fe05 Merge PR #2881: Don't call gaiacli tx sign. Use utils.SignStdTx() instead.
This is to avoid command redirection and reduce the use
of viper's global variables.

Closes: #2875
2018-11-26 12:50:33 +01:00
Sunny Aggarwal b7da2eaa33 Merge PR #2799: Account numbers and sequences to uint64 2018-11-26 12:29:21 +01:00
Alessio Treglia 3e68e44063 Merge PR #2874: gaiad gentx subcommands refactoring
* gaiad gentx subcommands refactoring

- Replace STDIN/STDOUT redirection in `gaiad gentx` with subcommands
  command line options to redirect streams to file since viper does
  not handle redirection well.
- Use `BuildCreateValidatorMsg` to build a `MsgCreateValidator` rather
  than redirecting to `gaiacli tx stake create-validator`.
- `PrintUnsignedStdTx` now takes an `io.Writer` object.
- Mark `--pubkey`, `--amount` and `--moniker` as required flags
  instead of validating them manually.
- Use stake.NewDescription() to make a new Description - ref #2835

* Refresh PENDING.md
2018-11-22 00:44:13 +01:00
Alexander Bezobchuk 6e813ab3a8 Change gas & related fields to unsigned integer type (#2839)
* Change gas & related fields to unsigned integer type
* Implement AddUint64Overflow
2018-11-19 09:13:45 -08:00
Jack Zampolin f525717054
Standardize CLI Exports from Modules (#2840)
* Move query and tx commands to modules
* Move GetAccountDecoder to prevent import cycle and replace calls to it with one call in WithAccountDecoder
* Add moduleClients interface and implement in all applicable modules
* Use module clients in cli initialization
2018-11-19 09:02:34 -08:00
Alessio Treglia 70826495b8 Merge PR #2752: Don't hardcode bondable denom 2018-11-12 19:54:18 +01: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
Alessio Treglia dbbf0647f0
Document what --validate-signatures does 2018-10-31 13:50:01 +00:00
Alessio Treglia 6c8791f505
Nest switches 2018-10-31 13:43:20 +00:00
Alessio Treglia 84aef0d106
Apply suggestions from bez 2018-10-31 13:43:20 +00:00
Alessio Treglia 44d2347109
Set success = false when it fails 2018-10-31 13:43:20 +00:00
Alessio Treglia 9e397907be
Rename append, it's go builtin 2018-10-31 13:43:20 +00:00
Alessio Treglia f752525d54
s/--sig-only/--signature-only/ 2018-10-31 13:42:42 +00:00
Alessio Treglia 53f1233f0a
s/--print-sigs/--validate-signatures/ 2018-10-31 13:42:42 +00:00
Alessio Treglia 31c062689d
Validate --name 2018-10-31 13:42:42 +00:00
Alessio Treglia 69a7c06ef7
Find better name for --print-signature-only 2018-10-31 13:42:42 +00:00
Alessio Treglia 62974e627e
Improve online docs 2018-10-31 13:41:26 +00:00
Alessio Treglia 4bf17e82b4
Improve errors reporting 2018-10-31 13:41:26 +00:00
Alessio Treglia 933592d052
Check sanity of signatures and report errors when run with --print-sigs 2018-10-31 13:41:26 +00:00
Alessio Treglia bc583ab1d0
Various sign command improvements
- Exit with error if the user is attempting to sign with a key
  whose address is not among those who are expected to sign
  the transaction.

- Add --print-signature-only to output only the generated
  signature.
2018-10-31 13:41:26 +00:00
Christopher Goes 234262160e 'make format' 2018-10-24 15:37:06 +02:00
HaoyangLiu 9ee9e28439 Merge PR #2462: Add swagger-ui for gov, stake and slashing 2018-10-24 15:19:48 +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
HaoyangLiu 8e1bfee6ca Add swagger-ui for key management 2018-10-04 20:36:24 +08:00
HaoyangLiu 9830acc5b9 Add indent option to context and fix a bug in node status command 2018-10-02 23:38:18 +08: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 bd274db7a7 Add application/json to response header 2018-10-01 09:07:41 +08:00
HaoyangLiu 019b1d95cf unminify JS files according to cwgoes 2018-09-30 18:50:31 +08:00
HaoyangLiu 6e8b8e47ee Add swagger-ui for ICS0 and ICS20 2018-09-30 11:42:12 +08:00
Alessio Treglia a2caefc8ae Merge PR #2390: CLI subcommands reorganization 2018-09-26 22:00:49 +08:00
Dev Ojha e6a8b2278e Merge PR #2377: auth: Move stdsignmsg to txbuilder, add tests 2018-09-26 21:39:05 +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
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
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
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
Jae Kwon 2abc90e92b Merge remote-tracking branch 'origin/develop' into alessio/auth-txcontext-to-txbuilder 2018-09-07 10:49:12 -07:00
Jae Kwon a27d83911a bld -> bldr in txbuilder.go 2018-09-07 10:34:44 -07:00
Jae Kwon acd125029d x/auth/client/context -> x/auth/client/txbuilder 2018-09-07 10:04:58 -07:00
Alessio Treglia f5a7f2524f
ACK and incorporate @cwgoes comments 2018-09-07 15:27:06 +01:00
Alessio Treglia 3b6da7af18
TxContext -> TxBuilder 2018-09-07 14:36:21 +01: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