Robert Zaremba
7568b6680a
Remove bech32 PubKey support ( #7477 )
...
* Move PubKey bech32 to legacy package and migrate the usage where possible
* update /server
* wip
* move proto json encoding helper functions to internal
* update internal/marshal
* wip
* update sections which needs legacybech32
* update validators output
* fix conflicts
* slashing update
* add more tests and helper function for ANY JSON serialization
* update slashing
* Update function documentation
* Rename code any-marshal helper functions
* Update pubkey unpacking test
* Update test comments
* solve TestDecodeStore
* solve legacytx issues
* all code compiles
* keyring tests
* keyring cleanup
* remove AssertMsg
* fix some tests
* fix add_ledger_test.go
* update cli tests
* debug cli test
* rename clashed bech32 names
* linter fixes
* update tmservice tests
* linter: update legacy deprecated checks
* fix names
* linting
* legacybech32 pubkey type rename
* fix staking client
* fix test compilation
* fix TestGetCmdQuerySigningInfo
* rename NewIfcJSONAnyMarshaler
* keyring: remove duplicated information from multinfo structure
* todo cleanups
* Update Changelog
* remove some legacybech32 from tests
* remove todos
* remove printlnJSON from /server CLI and amino encoding
* remove protocdc.MarshalJSON
* client/show remove duplicated function
* remove protocdc package
* comment update
* remove legacybech32.MustMarshalPubKey from a test
* add todo
* fix TestPublicKeyUnsafe test
* review update
* fix bech32 UnmarshalPubKey
* Use codec.MarshalIfcJSON
* fix linter issues
* merging conflict: fix codec.Unmarshal calls
* cleanups
* Update CHANGELOG.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Reword changelog updates
* use pubkey.String for comparison in Test_runAddCmdLedgerWithCustomCoinType
* Update GetCmdQuerySigningInfo example
* cli: update keys add docs
* Add errors AsOf and errors.ErrIO type
* restore multisigPubKeyInfo structure bring it back to multiInfo struct
* Update codec/proto_codec.go
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
* Update crypto/keys/ed25519/ed25519_test.go
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
* Update codec/proto_codec.go
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
* move pubkey any marshaling tests
* Apply suggestions from code review
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
* review updates
* adding missing return
* errors: use IsOf instead of AsOf
* keyring: add a correct check for key not found in keyring.Get
* add checkKeyNotFound
* fix linter issues
* fix: keyring key not found check
* fix keyring tests
* fix linting issues
* cli tests
* fix: 'simd keys show <key> -p'
* fix: TestVerifyMultisignature
* rename keyring Bech32... functions to Mk...
* fix RunAddCmd
* Update pubkey display
* wip
* add more tests
* udate keyring output tests
* remove todo from ledger tests
* rename MkKeyOutput
* Changelog update
* solve liner issues
* add link to github issue
Co-authored-by: Aaron Craelius <aaron@regen.network>
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
2021-03-25 14:53:22 +00:00
Robert Zaremba
0c824f11e9
fix race condition on address.String ( #8997 )
2021-03-25 13:51:34 +00:00
Amaury
1fa2c22d8a
Prefer sending tx_bytes to Simulate gRPC endpoint ( #8926 )
...
* First run
* Remove dead code
* Make test pass
* Proto gen
* Fix lint
* Add changelog
* Fix tests
* Fix test
* Update x/auth/tx/service.go
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
* Remove protoTxProvider
* Add grpc-gateway test
* Add comment
* move to api breaking
* lesser diff
* remove conflict
* empty commit to rerun CI
* empty commit to rerun CI
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-03-25 10:52:54 +00:00
Hanjun Kim
8ee9da775e
types: add Abs() method to sdk.Int ( #8963 )
...
Fixes #8962
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
2021-03-24 16:33:55 +00:00
MD Aleem
a78f777ea8
add reverse iteration to pagination ( #8875 )
...
* WIP
* add tests
* add tests
* fix lint
* fix pagination
* add proto message doc
* fix filtered_pagination
* fix test
* cleanup
* add reverse flag to pagination
* changelog
* Update client/flags/flags.go
* Update CHANGELOG.md
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
2021-03-23 09:28:20 +00:00
Sunny Aggarwal
b54e2763db
simply default power reduction definition
2021-03-21 20:29:39 -04:00
Sunny Aggarwal
1f99aa3fb2
merged in master
2021-03-21 16:37:06 -04:00
technicallyty
5bd93bfe7b
x/upgrade: added consensus version tracking (part of ADR-041) ( #8743 )
...
* -added consensus version tracking to x/upgrade
* -added interface to module manager -added e2e test for migrations using consensus version store in x/upgrade -cleaned up x/upgrade Keeper -handler in apply upgrade now handles errors and setting consensus versions -cleaned up migration map keys -removed init chainer method -simapp now implements GetConsensusVersions to assist with testing
* Changed MigrationMap identifier to VersionMap
removed module_test
* updated docs
* forgot this
* added line to changelog for this PR
* Change set consensus version function to match adr 041 spec
* add documentation
* remove newline from changelog
unnecessary newline removed
* updated example in simapp for RunMigrations, SetCurrentConsensusVersions now returns an error
* switch TestMigrations to use Require instead of t.Fatal
* Update CHANGELOG.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* docs for SetVersionManager
* -init genesis method added -removed panics/fails from setting consensus versions
* update identifiers to be more go-like
* update docs and UpgradeHandler fnc sig
* Upgrade Keeper now takes a VersionMap instead of a VersionManager interface
* upgrade keeper transition to Version Map
* cleanup, added versionmap return to RunMigrations
* quick fix
* Update docs/architecture/adr-041-in-place-store-migrations.md
Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com>
* remove support for versionmap field on upgrade keeper
* cleanup
* rename get/set version map keeper functions
* update adr doc to match name changes
* remove redudant line
Co-authored-by: technicallyty <48813565+tytech3@users.noreply.github.com>
Co-authored-by: Aaron Craelius <aaron@regen.network>
Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-03-19 22:01:29 +00:00
Robert Zaremba
05d4e43d1c
account.Address: use RWLocker ( #8774 )
...
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
2021-03-16 17:48:54 +00:00
Robert Zaremba
4bd695de4e
errors: Add Wrap handy method ( #8845 )
...
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-03-16 01:09:31 +00:00
MD Aleem
adf5f625c1
add orderBy parameter to TxsByEvents ( #8815 )
...
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
Co-authored-by: Jonathan Gimeno <jgimeno@gmail.com>
2021-03-12 18:47:10 +00:00
Emmanuel T Odeke
b9f3db1be8
all: skip noisy/faulty benchmarks + add b.ReportAllocs for every benchmark ( #8856 )
...
* Skips very noisy benchmarks that end up running only for b.N=1 because
their entire time is spent in setup, and varying parameters doesn't change
much given that the number of stores is what dominates the expense. To
ensure we can provide reliable benchmarks, progressively for the project,
skip these until there is a proper re-work of what the benchmarks need to do
* Previously sub-benchmarks: b.Run(...) did not b.ReportAllocs() due to a faulty
assumption that invoking b.ReportAllocs() at the top would be inherited by
all sub-benchmarks. This change fixes that
Fixes #8779
Fixes #8855
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-03-11 15:59:13 +00:00
Frojdi Dymylja
288f8dda4b
[rosetta] implement balance tracking and redo tx construction ( #8729 )
...
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
2021-03-11 15:01:29 +00:00
Emmanuel T Odeke
c2d5b24f58
store/cachekv: use typed types/kv.List instead of container/list.List ( #8811 )
...
Reduces CPU burn by using a typed List to avoid the expensive type
assertions from using an interface. This is the only option for now
until Go makes generics generally available.
The change brings time spent on the time assertion cummulatively to:
580ms down from 6.88s
Explanation:
The type assertions were showing up heavily in profiles:
* Before this commit
```shell
Total: 42.18s
ROUTINE ======================== github.com/cosmos/cosmos-sdk/store/cachekv.newMemIterator
in /Users/emmanuelodeke/go/src/github.com/cosmos/cosmos-sdk/store/cachekv/memiterator.go
14.01s 18.87s (flat, cum) 44.74% of Total
. . 17: items []*kv.Pair
. . 18: ascending bool
. . 19:}
. . 20:
. . 21:func newMemIterator(start, end []byte, items *list.List, ascending bool) *memIterator {
. 620ms 22: itemsInDomain := make([]*kv.Pair, 0, items.Len())
. . 23:
. . 24: var entered bool
. . 25:
510ms 870ms 26: for e := items.Front(); e != nil; e = e.Next() {
6.85s 6.88s 27: item := e.Value.(*kv.Pair)
5.71s 8.19s 28: if !dbm.IsKeyInDomain(item.Key, start, end) {
120ms 120ms 29: if entered {
. . 30: break
. . 31: }
. . 32:
. . 33: continue
. . 34: }
. . 35:
820ms 980ms 36: itemsInDomain = append(itemsInDomain, item)
. . 37: entered = true
. . 38: }
. . 39:
. 1.21s 40: return &memIterator{
. . 41: start: start,
. . 42: end: end,
. . 43: items: itemsInDomain,
. . 44: ascending: ascending,
. . 45: }
```
and given that the list only uses that type, it is only right to lift the
code from container/list.List, and only modify Element.Value's type.
For emphasis, the code is basically just a retrofit of
container/list/list.go but with a typing, and we'll keep it as is
until perhaps Go1.17 or Go1.18 or when everyone uses Go1.17+ after
generics have landed.
* After this commit
```shell
Total: 45.25s
ROUTINE ======================== github.com/cosmos/cosmos-sdk/store/cachekv.newMemIterator
in /Users/emmanuelodeke/go/src/github.com/cosmos/cosmos-sdk/store/cachekv/memiterator.go
4.84s 6.77s (flat, cum) 14.96% of Total
. . 16: items []*kv.Pair
. . 17: ascending bool
. . 18:}
. . 19:
. . 20:func newMemIterator(start, end []byte, items *kv.List, ascending bool) *memIterator {
. 330ms 21: itemsInDomain := make([]*kv.Pair, 0, items.Len())
. . 22:
. . 23: var entered bool
. . 24:
60ms 160ms 25: for e := items.Front(); e != nil; e = e.Next() {
580ms 580ms 26: item := e.Value
3.68s 4.78s 27: if !dbm.IsKeyInDomain(item.Key, start, end) {
80ms 80ms 28: if entered {
. . 29: break
. . 30: }
. . 31:
. . 32: continue
. . 33: }
. . 34:
440ms 580ms 35: itemsInDomain = append(itemsInDomain, item)
. . 36: entered = true
. . 37: }
. . 38:
. 260ms 39: return &memIterator{
. . 40: start: start,
. . 41: end: end,
. . 42: items: itemsInDomain,
. . 43: ascending: ascending,
. . 44: }
```
Fixes #8810
2021-03-08 09:16:23 -08:00
Robert Zaremba
0b6833c333
Lock mutex on getting element from cache ( #8767 )
2021-03-03 15:52:38 +00:00
Cuong Manh Le
91affb5167
simapp, types: fix benchmarks panics by honoring skip if set ( #8763 )
...
- BenchmarkAccAddressString must initialize the index less than ed25519.PubKeySize to avoid panics
- BenchmarkFullAppSimulation should be skipped as it has the same logic as tests
Fixes #8762
2021-03-03 03:54:14 -08:00
Robert Zaremba
2864eb69a3
Robert/addr memory leak ( #8717 )
...
* address: adding cache address.String() cache benchmark
* address: use LRU cache for .String()
* optimize address.Empty
* move cache initialization to init function
* Use UnsafeBytesToStr convertion with Addr cache
* add cache for other address String() methods
* fix linter issue
* add a non trivial address for Address.String benchmark
* add comment about cache size and update cashe size to 60k
* fix syntax
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
2021-03-03 03:53:28 +00:00
Robert Zaremba
5f2b90c3c7
internal: create package for unsafe bytes convertion ( #8733 )
...
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
2021-03-01 15:10:22 +00:00
Emmanuel T Odeke
929b62cd46
types: intern AccAddress.String() to gut wasted expensive recomputations ( #8694 )
...
Given that AccAddress is a []byte type, and its .String() method is
quite expensive, continuously invoking the method doesn't easily provide
a way for the result to be memoized. In memory profiles from
benchmarking OneBankSendTxPerBlock and run for a while, it showed >2GiB burnt
and SendCoins consuming a bunch of memory: >2GiB.
This change introduces a simple global cache with a map to intern
AccAddress values, so that we quickly look up the expensively computed
values. With it, the prior memory profiles are erased, and benchmarks
show improvements:
```shell
$ benchstat before.txt after.txt
name old time/op new time/op delta
OneBankSendTxPerBlock-8 1.94ms ± 9% 1.92ms ±11% -1.34% (p=0.011 n=58+57)
name old alloc/op new alloc/op delta
OneBankSendTxPerBlock-8 428kB ± 0% 365kB ± 0% -14.67% (p=0.000 n=58+54)
name old allocs/op new allocs/op delta
OneBankSendTxPerBlock-8 6.34k ± 0% 5.90k ± 0% -7.06% (p=0.000 n=58+57)
```
Fixes #8693
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
2021-02-25 03:01:03 -08:00
Amaury
ba74a7c737
x{stake,slash,gov,distrib} In-place Store Migrations ( #8504 )
...
* Add 1st version of migrate
* Put migration logic into Configurator
* add test to bank store migration
* add test for configurator
* Error if no migration found
* Remove RunMigrations from Configurator interface
* Update spec
* Rename folders
* copy-paste from keys.go
* Fix nil map
* rename function
* Update simapp/app.go
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
* Update simapp/app_test.go
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
* Adderss reviews
* Fix tests
* Update testutil/context.go
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
* Update docs for ConsensusVersion
* Rename to forVersion
* Fix tests
* Check error early
* Return 1 for intiial version
* Use MigrationKeeper
* Fix test
* Revert adding marshaler to Configurator
* Godoc updates
* Update docs
* Add distrib legacy folder
* Add tests for distrib migration
* Add gov migrations
* Copy paste whole keys file
* Add gov migrations
* Add staking
* Fix staking tests
* Update spec and module.go
* Update to latest changes
* Update migration scripts
* capability to 1
* Fix tests
* Add package godoc
* Remove whitespace
* Remove global
* Use Migrator
* Remove 042 keys files
* Fix build
* Unlambda
* Rename to Migrate1to2
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
2021-02-25 10:43:31 +00:00
Robert Zaremba
7969135abc
rework unsafe string -> bytes conversion #8674 ( #8684 )
...
Changing the unsafe string -> bytes conversion to fix
a security concern.
Closes : #8670
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
2021-02-24 12:47:32 +00:00
Robert Zaremba
8db9bbba04
linter: ignore false positives in types/address ( #8674 )
2021-02-23 13:38:37 +00:00
Alessio Treglia
f2ee972e31
various linter fixes ( #8666 )
2021-02-23 08:46:01 +00:00
Riccardo Montagnin
f49e1554e6
Deprecate SetFullFundraiserPath in favor of SetPurpose and SetCoinType ( #8629 )
...
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
2021-02-22 15:14:09 +00:00
MD Aleem
81cc5c1194
gRPC gateway issue with colons in the account url path ( #8649 )
...
* add allow_colon_final_segments flag
* add test
* Update x/auth/client/rest/rest_test.go
Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-02-22 11:30:45 +00:00
Alessio Treglia
9b7a12f7db
run make format ( #8642 )
...
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-02-19 15:02:53 +00:00
Amaury
73e38e4009
Use service Msgs in CLI tx commands ( #8512 )
...
* Use service Msgs in CLI tx commands
* Update comment
* Gracefully support amino signing
* CLI to use svc msg
* Fix lint
* Use fq method name in events
* Update tests
* Fix quering events
* Add docs
* Fix test build
* Fix events
* Fix search for events
* Handle old andd new event quering
* Use merge events
* Better encCfg
* Add page in search
* Fix tests
* Update test and comments
* Update x/auth/legacy/legacytx/stdsign.go
Co-authored-by: atheeshp <59333759+atheeshp@users.noreply.github.com>
* Fix conflict for weighted vote
* Make CopyTx actually run
* Fix CopyTx
* Fix test
* Add changelog entry
* Remove useless code
* Add msgs tests
* Remove testing proto Msg via CLI
* Fix lint
* Fix test
* Implement GetSignBytes on ServiceMsg
* Fix %T
Co-authored-by: atheeshp <59333759+atheeshp@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-02-18 18:00:19 +00:00
Jonathan Gimeno
abb3dfefa0
[Bank] Remove the unsafe balance changing API ( #8473 )
...
* temp commit
* setbalance now is internal
* remove set balances in genesis
* feedback test commit
* update tests
* fix: genesis panic message
* fix not bonded pool
* fix(staking): genesis test
* fix(simapp): rollback state fix change
* fix(staking): genesis large val set test
* [Bank Refactor] Frojdi jonathan/remove setsupply (#8491 )
* init supply in a different way
* remove external usage of set supply
* change(staking): replace SetSupply with MintCoins in tests
* change(evidence): replace SetSupply with MintCoins in tests
* change(crisis): remove SetSupply in tests
* change(bank): remove set supply from genesis tests
* change(bank): remove set supply from keeper tests
* change(bank): remove remaining set supply usage from keeper tests
* change(bank): remove set supply usage from grpc query and querier tests
* change(bank): remove SetSupply from keeper interface
Co-authored-by: Frojdi Dymylja <frojdi.dymylja@gmail.com>
* remove setbalances from genesis in gov
* remove keyring
* add init genesis state
* change(staking): make genesis checks coherent and add tests
* remove setbalances on distribution
* fix(staking): genesis tests
* [Bank Refactor]: Remove SetBalances usage from the code and tests (#8509 )
* change(distribution): remove SetBalances usage from keeper tests
* add(simapp): FundAccount utility function
* chore(staking): use FundAccount in keeper tests
* change(staking): remove usage of SetBalance in allocation tests
* change(staking): remove usage of SetBalance in delegation tests
* change(staking): remove usage of SetBalance in proposal handler tests
* change(staking): remove usage of SetBalances in grpc query tests
* change(staking): remove usage of SetBalances in operations tests
* change(distribution): remove usage of SetBalances in genesis
* change(authz): remove usage of SetBalances keeper and operations test
* fix(authz): TestKeeperFees failing test
* change(slashing): remove SetBalances from expected BankKeeper
* change(slashing): remove usage of SetBalances in tests
* change(distribution): remove SetBalances from expected BankKeeper
* change(genutil): remove usage of SetBalances from tests
* change(gov): remove SetBalances from expected BankKeeper
* change(gov): remove usage of SetBalances from tests
* change(staking): remove usage of SetBalances from slash tests
* change(staking): remove SetBalances from expected BankKeeper
* change(staking): remove usage of SetBalances from delegation tests
* change(staking): remove usage of SetBalances from operations tests
* change(staking): remove usage of SetBalances from validator tests
* change(bank): remove usage of SetBalances from app tests
* change(bank): remove usage of SetBalances from bench tests
* change(bank): remove usage of SetBalances from querier tests
* change(bank): remove usage of SetBalances from grpc query tests
* change(bank): remove usage of SetBalances from operations tests
* change(bank): partially remove usage of SetBalances from keeper tests
* change(bank): finalize removal of usage of SetBalances from keeper tests
* change(auth): remove usage of SetBalances from verify tests
* change(auth): partially remove usage of SetBalances from tests
* [Bank refactor]: finalize removal of setbalances from auth (#8527 )
* add tests with is check tx
* temp commit
* fix test
* fix other test and remove setbalances
* change(auth): remove usage of SetBalances is vesting tests
Co-authored-by: Jonathan Gimeno <jgimeno@gmail.com>
* change(types): remove usage of SetBalances in queries
* fix(types): pagination tests
* [Bank refactor] fix pagination tests (#8550 )
* fix tests
* lint
* change(bank): remove SetBalances from keeper public API
Co-authored-by: Jonathan Gimeno <jgimeno@gmail.com>
Co-authored-by: SaReN <sahithnarahari@gmail.com>
* change(bank): remove SubtractCoins from keeper public API
* change(ibc/transfer): remove AddCoins from relay tests
* change(bank): remove AddCoins from public keeper API
* fix imports
* remove set balances
* fix fee test
* remove set balances
* fix(staking): remove dependency on minter authorization for staking pools
* chore: update CHANGELOG.md
* update: x/distribution/keeper/keeper_test.go
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
* Update simapp/test_helpers.go
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
* Update x/staking/genesis_test.go
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
* fix(simapp): FundAccount amount variable name
* fix some PR issues
Co-authored-by: Frojdi Dymylja <frojdi.dymylja@gmail.com>
Co-authored-by: Frojdi Dymylja <33157909+fdymylja@users.noreply.github.com>
Co-authored-by: SaReN <sahithnarahari@gmail.com>
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
2021-02-17 18:20:33 +00:00
Robert Zaremba
adbf5a71e6
adr-028 address generation ( #8415 )
...
* Optimize secp256k1 hashing
* Add ADR-028 related functions
* Update ed25519
* fix errors/handle
* fix build
* fix build
* Add tests and update function names
* wip
* Use LengthPrefix for composed addresses
* add tests for NewComposed
* add module hash function
* fix append
* rollback ed25519 ADR-28 update
* rollback ed25519 ADR-28 test
* Adding Module tests and convert tests to test suite
* convert store_key_test.go to test suite
* rollback test check comment
* Rename assert.Panic and add comment
* add note to ed25519 about SDK support with regards to ADR-28
* Update ed25519 TestAddress
* Adding Deprecated notes for ed25519.PrivKey
* Update crypto/keys/ed25519/ed25519.go
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
* Update types/address/hash_test.go
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
* solve linter issues
* linter: remove gocritic
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
2021-02-15 15:32:51 +00:00
Emmanuel T Odeke
a534a960db
types: use (*math/big.Int).BitLen() == 0 to check if value is 0 ( #8580 )
...
Instead of using len((*math/big.Int).Bytes()) == 0, which expensively
creates a byte slice and marshals a value, on the majority hot path,
instead use the cheaper method .BitLen() to check if 0.
Benchmarking results, just from types:
name old time/op new time/op delta
CoinsAdditionIntersect/sizes:_A_1,_B_1-8 132ns ± 2% 126ns ±13% -4.55% (p=0.050 n=10+10)
CoinsAdditionIntersect/sizes:_A_5,_B_5-8 1.41µs ± 3% 1.41µs ± 2% ~ (p=1.000 n=10+10)
CoinsAdditionIntersect/sizes:_A_5,_B_20-8 2.30µs ± 1% 2.27µs ± 3% ~ (p=0.066 n=10+10)
CoinsAdditionIntersect/sizes:_A_1,_B_1000-8 30.9µs ± 3% 30.7µs ± 1% ~ (p=0.218 n=10+10)
CoinsAdditionIntersect/sizes:_A_2,_B_1000-8 31.4µs ± 3% 30.8µs ± 2% -1.94% (p=0.015 n=10+10)
CoinsAdditionNoIntersect/sizes:_A_1,_B_1-8 116ns ± 1% 114ns ± 4% ~ (p=0.142 n=10+10)
CoinsAdditionNoIntersect/sizes:_A_5,_B_5-8 1.11µs ± 1% 1.08µs ± 3% -2.36% (p=0.003 n=8+10)
CoinsAdditionNoIntersect/sizes:_A_5,_B_20-8 1.85µs ± 2% 1.82µs ± 1% -1.38% (p=0.001 n=10+9)
CoinsAdditionNoIntersect/sizes:_A_1,_B_1000-8 30.7µs ± 1% 30.6µs ± 3% ~ (p=0.393 n=10+10)
CoinsAdditionNoIntersect/sizes:_A_2,_B_1000-8 31.1µs ± 1% 30.7µs ± 2% -1.32% (p=0.015 n=10+10)
CoinsAdditionNoIntersect/sizes:_A_1000,_B_2-8 31.0µs ± 2% 30.7µs ± 2% ~ (p=0.190 n=10+10)
Bech32ifyPubKey-8 28.8µs ± 5% 28.8µs ± 3% ~ (p=0.965 n=10+8)
GetPubKeyFromBech32-8 38.8µs ± 3% 39.4µs ± 2% +1.70% (p=0.013 n=9+10)
ParseCoin-8 16.7µs ± 6% 15.8µs ± 4% -5.21% (p=0.001 n=10+10)
MarshalTo-8 521ns ± 5% 508ns ± 3% -2.56% (p=0.029 n=10+10)
UintMarshal-8 3.10µs ±17% 2.56µs ± 3% -17.45% (p=0.000 n=10+9)
IntMarshal-8 2.52µs ±10% 1.94µs ± 2% -23.10% (p=0.000 n=10+10)
name old alloc/op new alloc/op delta
Bech32ifyPubKey-8 4.02kB ± 0% 4.02kB ± 0% ~ (all equal)
GetPubKeyFromBech32-8 2.48kB ± 0% 2.48kB ± 0% ~ (all equal)
ParseCoin-8 2.21kB ± 0% 2.21kB ± 0% ~ (all equal)
MarshalTo-8 80.0B ± 0% 80.0B ± 0% ~ (all equal)
UintMarshal-8 440B ± 0% 392B ± 0% -10.91% (p=0.000 n=10+10)
IntMarshal-8 216B ± 0% 168B ± 0% -22.22% (p=0.000 n=10+10)
name old allocs/op new allocs/op delta
Bech32ifyPubKey-8 25.0 ± 0% 25.0 ± 0% ~ (all equal)
GetPubKeyFromBech32-8 85.0 ± 0% 85.0 ± 0% ~ (all equal)
ParseCoin-8 71.0 ± 0% 71.0 ± 0% ~ (all equal)
MarshalTo-8 2.00 ± 0% 2.00 ± 0% ~ (all equal)
UintMarshal-8 31.0 ± 0% 25.0 ± 0% -19.35% (p=0.000 n=10+10)
IntMarshal-8 24.0 ± 0% 18.0 ± 0% -25.00% (p=0.000 n=10+10)
name old speed new speed delta
UintMarshal-8 2.27MB/s ±15% 2.75MB/s ± 2% +20.87% (p=0.000 n=10+8)
IntMarshal-8 2.78MB/s ± 9% 3.60MB/s ± 2% +29.69% (p=0.000 n=10+10)
Fixes #8575
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-02-15 10:53:10 +00:00
SaReN
bddbc131fd
update pagination tests ( #8565 )
2021-02-11 09:49:26 +00:00
Amaury
dfc8dd813e
Add in-place store migrations ( #8485 )
...
* Add 1st version of migrate
* Put migration logic into Configurator
* add test to bank store migration
* add test for configurator
* Error if no migration found
* Remove RunMigrations from Configurator interface
* Update spec
* Rename folders
* copy-paste from keys.go
* Fix nil map
* rename function
* Update simapp/app.go
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
* Update simapp/app_test.go
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
* Adderss reviews
* Fix tests
* Update testutil/context.go
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
* Update docs for ConsensusVersion
* Rename to forVersion
* Fix tests
* Check error early
* Return 1 for intiial version
* Use MigrationKeeper
* Fix test
* Revert adding marshaler to Configurator
* Godoc updates
* Update docs
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
Co-authored-by: Aaron Craelius <aaron@regen.network>
2021-02-10 17:49:31 +00:00
psaradev
cc4ef50d2a
Merge cosmos-sdk master
2021-02-03 22:36:29 +10:00
Amaury
c1b567f44c
Refactor store keys for variable-length addresses ( #8363 )
...
* Change account store key in x/bank
* Fix pagination test
* Fix merge master
* Fix staking keys.go
* Use bech32 in val state change map
* Fix sortNoLongerBonded
* Use length-prefix function
* Use length prefix function
* Fix test accountStore
* Fix ExamplePaginate
* Fix staking keys
* Use shorter balances prefix
* Do slashing keys
* Fix gov keys
* Fix x/gov tests
* Fix x/distrib
* Address reviews
* add change log entry
* Add changelog
* Fix failing tests
* Fix sim tests
* fix after-export sim
* Fix lint
* Address review
* Fix x/authz
* Fix global config in test
* Update x/staking/keeper/val_state_change.go
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
* Address comments
* Fix comments
* Address review
* Fix authz test
* Update comment
* Rename to LengthPrefixedAddressStoreKey
* Use variable
* Rename function
* Fix test build
* chore: update rosetta CI (#8453 )
* Rename again
* Rename yet again
* Update feegrant keys
* Add function to create prefix
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
Co-authored-by: Frojdi Dymylja <33157909+fdymylja@users.noreply.github.com>
Co-authored-by: Aaron Craelius <aaron@regen.network>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-02-01 13:17:44 +00:00
Emmanuel T Odeke
784a9a69a1
all: ensure b.ReportAllocs() in all the benchmarks ( #8460 )
...
With this change, we'll get details on the number of
allocations performed by code. Later on when we have
continuous benchmarking infrastructure, this change
will prove useful to flag regressions.
Fixes #8459
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
2021-01-27 23:52:08 -08:00
Emmanuel T Odeke
580e9681a5
types: use proper lowercase syntax for coins in benchmarks ( #8435 )
...
Instead of
COINZ_%d
use
coinZ%d
which is the syntax accepted by types.ParseCoin, to generate
coins to use in benchmarking.
Fixes #8433
2021-01-28 06:40:56 +00:00
psaradev
4f476d6890
on-chain power reduction param conversion basic work
2021-01-27 20:24:00 +10:00
MD Aleem
c95de9c417
implement x/authz module ( #7629 )
...
* WIP: Msg authorization module added
* fixing errors
* fixed errors
* fixed module.go
* Add msg_tests
* fixes compile issues
* fix test
* fix test
* Add msg types tests
* Fix Getmsgs
* fixed codec issue
* Fix syntax issues
* Fix keeper
* fixed proto issues
* Fix keeper tests
* fixed router in keeper
* Fix query proto
* Fix cli txs
* Add grpc query client implementation
* Add grpc-keeper test
* Add grpc query tests
Add revoke and exec authorization cli commands
* Fix linting issues
* Fix cli query
* fix lint errors
* Add Genesis state
* Fix query authorization
* Review changes
* Fix grant authorization handler
* Add cli tests
* Add cli tests
* Fix genesis test
* Fix issues
* update module to use proto msg services
* Add simultion tests
* Fix lint
* fix lint
* WIP simulations
* WIP simulations
* add msg tests
* Fix simulation
* Fix errors
* fix genesis import export
* fix sim tests
* fix sim
* fix test
* Register RegisterMsgServer
* WIP
* WIP
* Update keeper test
* change msg_authorization module name to authz
* changed type conversion for serviceMsg
* serviceMsg change to any
* Fix issues
* fix msg tests
* fix errors
* proto format
* remove LegacyQuerierHandler
* Use MsgServiceRouter
* fix keeper-test
* fix query authorizations
* fix NewCmdSendAs
* fix simtests
* fix error
* fix lint
* fix lint
* add tests for generic authorization
* fix imports
* format
* Update error message
* remove println
* add query all grants
* Add pagination for queries
* format
* fix lint
* review changes
* fix grpc tests
* add pagination to cli query
* review changes
* replace panic with error
* lint
* fix errors
* fix tests
* remove gogoproto extensions
* update function doc
* review changes
* fix errors
* fix query flags
* fix grpc query test
* init service-msg
* remove unsed field
* add proto-codec for simulations
* fix codec issue
* update authz simulations
* change msgauth to authz
* add check for invalid msg-type
* change expiration flag to Unix
* doc
* update module.go
* fix sims
* fix grant-authorization sims
* fix error
* fix error
* add build flag
* fix codec issue
* rename
* review changes
* format
* review changes
* go.mod
* refactor
* proto-gen
* Update x/authz/keeper/grpc_query_test.go
Co-authored-by: Amaury <amaury.martiny@protonmail.com>
* Update x/authz/keeper/grpc_query_test.go
Co-authored-by: Amaury <amaury.martiny@protonmail.com>
* Update x/authz/keeper/grpc_query_test.go
Co-authored-by: Amaury <amaury.martiny@protonmail.com>
* Fix review comments
* fix protogen
* Follow Msg...Request style for msg requests
* update comment
* Fix error codes
* fix review comment
* improve msg validations
* Handle error in casting msgs
* rename actor => grantStoreKey
* add godoc
* add godoc
* Fix simulations
* Fix cli, cli_tests
* Fix simulations
* rename to GetOrRevokeAuthorization
* Move events to keeper
* Fix fmt
* Update x/authz/client/cli/tx.go
Co-authored-by: Amaury <amaury.martiny@protonmail.com>
* rename actor
* fix lint
Co-authored-by: atheesh <atheesh@vitwit.com>
Co-authored-by: atheeshp <59333759+atheeshp@users.noreply.github.com>
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
Co-authored-by: MD Aleem <72057206+aleem1413@users.noreply.github.com>
Co-authored-by: Anil Kumar Kammari <anil@vitwit.com>
2021-01-25 16:41:30 +00:00
SaReN
57f5e96570
Rosetta API implementation ( #7695 )
...
Ref: #7492
Co-authored-by: Jonathan Gimeno <jgimeno@gmail.com>
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
Co-authored-by: Frojdi Dymylja <33157909+fdymylja@users.noreply.github.com>
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
2021-01-21 09:33:02 +00:00
Robert Zaremba
e8d47bb93b
fix: wrappedError.Is ( #8355 )
...
* fix: wrappedError.Is
Is method should return true when used on 2 same errors.
* Changelog update
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-01-18 17:00:04 +00:00
Marko
ce5db9e4bd
fix proto generation ( #8361 )
...
* fix proto generation
* merge grpc_gateway into gocosmos_out
* change env variable names
2021-01-18 12:41:34 -03:00
Aaron Craelius
2521964d50
Update gogo proto deps with v1.3.2 security fixes ( #8350 )
...
* Update gogo proto deps with v1.3.2 security fixes
* Regenerate proto files
2021-01-15 19:45:34 +00:00
MD Aleem
ed7bd245b8
Add script to generate proto-docs ( #8238 )
...
* init protobuf-docs
* update template
* update docs/core/README.md
* update proto files
* update template
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
2020-12-31 16:10:13 +00:00
likhita809
d316013f77
Update randomfees selection of non-zero coins ( #8209 )
...
* Update randomfees selection of non-zero coins
* fix randomfees
* fixing account test
* fix broadcast.go
* fixing
* Revert "fixing"
This reverts commit b6eaa8d281977451d95e3f5e17792bef642ff65c.
* Revert "fix broadcast.go"
This reverts commit 2275ea1303b3f5f8c61774a42f17d8a539c3c00a.
* Revert "fixing account test"
This reverts commit d0d4aa7d5d9421b810bd6582db33ea7dda66a008.
* fix randomfees
* fix randomfees
* remove commented code
Co-authored-by: Likhita Polavarapu <likhita@vitwit.xyz>
Co-authored-by: Anil Kumar Kammari <anil@vitwit.com>
2020-12-29 16:08:07 +00:00
Emmanuel T Odeke
21716644d4
types: unconditionally divide by 2 because of integer truncation ⌊x/2⌋ ( #8202 )
...
Simplify the code in Dec.Power to unconditionally divide by 2, since:
x /= 2
is the same result for both even and odd integers, and produces the
floor of the result of x/2 -> ⌊x/2⌋:
99/2 ~> 49.5 ⌊49.5⌋ = 49
98/2 ~> 49.0 ⌊49.0⌋ = 49
aka "integer truncation".
Fixes #7924
2020-12-20 10:41:59 -08:00
Robert Zaremba
3a9e696bbf
fix: Signature only flag bug on tx sign command 7632 ( #8106 )
...
* fix: Signature only flag bug on tx sign command 7632
* Update client/context.go
Co-authored-by: Cory <cjlevinson@gmail.com>
* Update client/context.go
Co-authored-by: Cory <cjlevinson@gmail.com>
* use named return value and closure (#8111 )
This is to correctly handle deferred Close()
calls on writable files.
* set the right 'append' logic for signing transactions
* cleanup
* update tx.Sign interface by adding overwrite option
* Update Changelog
* sign command cleanup
* implementation and changelog update
* fix SignTx and tx.Sign calls
* fix: sign didn't write to a file
* update flags description
* Add tx.Sign tests
* fix grpc/server_test.go
* Update client/tx/tx.go
Co-authored-by: Cory <cjlevinson@gmail.com>
* changelog update
* Add test to verify matching signatures
* cli_test: add integration tests for sign CMD
* add output-file flag test
* add flagAmino test
* Update x/auth/client/cli/tx_sign.go
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
* Update x/auth/client/cli/tx_sign.go
* update amino serialization test
* TestSign: adding unit test for signing with different modes
* Add test with Multi Signers into Robert's TxSign PR (#8142 )
* Add test with Multi Signers
* remove true false
* Use SIGN_MODE_DIRECT
* Fix litn
* Use correct pubkeys
* Correct accNum and seq
* Use amino
* cleanups
* client.Sign: raise error when signing tx with multiple signers in Direct
+ added more unit tests
* add more tests
* Update client/tx/tx_test.go
Co-authored-by: Cory <cjlevinson@gmail.com>
* fix TestGetBroadcastCommand_WithoutOfflineFlag
* Any.UnsafeSetCachedValue
* fix note packed messages in tx builder
* reorder unit tests
* Changelog update
* cleaning / linting
* cli_tes: copy validator object instead of modifying it's shared codec
* x/auth cli_test: remove custom codec creation in tests
* Update CHANGELOG.md
* updates to CHANGELOG.md
* remove unused method
* add new instance of transaction builder for TestSign
Co-authored-by: Cory <cjlevinson@gmail.com>
Co-authored-by: SaReN <sahithnarahari@gmail.com>
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
Co-authored-by: Amaury <amaury.martiny@protonmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-12-14 21:44:15 +00:00
Emmanuel T Odeke
a8c3b4414d
x/bank/keeper: fix a missing gRPC error in AllBalances ( #8085 )
...
* x/bank/keeper: fix a missing gRPC error in AllBalances
Fixes an incoherent return which had:
(non-nil value, non-nil-non-grpc error)
to
(nil value, non-nil-gRPC error)
and it is a follow-up of PR #7814 .
* types/query: fix pagination test (#8096 )
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
2020-12-07 01:32:59 -08:00
Anil Kumar Kammari
4a233b8dcf
Rename GRPCRouter ( #8079 )
...
* rename GRPCRouter
* Update store/types/store.go
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
* Fix gofmt
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
2020-12-04 15:06:50 +00:00
MD Aleem
b6c8d5ea9f
Add tx broadcast gRPC endpoint ( #7852 )
...
* WIP tx/broadcast grpc endpoint
* fix lint
* fix proto lint
* Update service.proto
* resolve conflicts
* update service.proto
* Update service.proto
* review changes
* proto lint
* Switch to txraw
* Add check breaking at the end
* Fix broadcast
* Send Msg on SetupSuite
* Remove proto-check-breaking
* 1 validator in test
* Add grpc server tests for broadcast
* Fix grpc server tests
* Add some changes
* Add ress comments
* Add table tests for tx service
* Add test for mode
* Add simulate tests
* Add build flag back
* Revert custom stringer for enum
* Remove stray logs
* Use /txs/{hash}
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
2020-12-02 17:50:40 +00:00
vincent
f57828c091
Fix CryptoCdc inconsistent ( #7987 )
...
* simple fix
* refactor crypto
* just use codec/legacy.Cdc
* revert armor
* add changelog entry
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
2020-12-02 14:50:50 +01:00
MD Aleem
a51eac4f15
Fix QueryByEvents with multiple events and empty pagination request ( #8029 )
...
* fix pagination issue
* Fix querying with multiple events
* reuse ParsePagination
* update tests
* change event type to array
* fix test
* review changes
* add test case for escape params
* review changes
* resolve conflicts
* fix test
* fix test
Co-authored-by: anilCSE <anil@vitwit.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-12-01 04:18:35 +00:00
Amaury
7ad2aab2c4
Add panic handler on queries ( #8039 )
...
* Add test that panics
* Add panic in abci query
* Move proto gen files to correct place
* Add panic handler in grpc server
* Fix test
* Fix build
* Use %v
* Better panic message
* Fix tests
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
2020-11-30 16:59:35 +00:00
colin axnér
bcb3240d06
Use generated client identifiers ( #8034 )
...
* add client identifier generation
* update proto and start fixing tests
* fix ibc tests
* fix auth rest test
* update spec
* fix lint
* add parsing tests and fix bugs
* fix regexp
* add godoc
* address @AdityaSripal review suggestions for identifier parsing
* address rest of @AdityaSripal's review comments
* remove unnecessary comment
* typos
* fix lint
* Apply suggestions from code review
Co-authored-by: Aditya <adityasripal@gmail.com>
* add more heigh tests as per @AdityaSripal suggestion
Co-authored-by: Aditya <adityasripal@gmail.com>
2020-11-30 15:52:45 +00:00
yihuang
512b533242
cli: ParseCoin doesn't do normalize ( #7954 )
...
follow up on https://github.com/cosmos/cosmos-sdk/pull/7777
ParseCoin need to be treated similarly.
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-11-25 18:02:10 +00:00
MD Aleem
c58a8923a0
gRPC-gateway routes as alternative to legacy tendermint REST endpoints ( #7965 )
...
* WIP
* WIP setup
* WIP setup testsuite
* add node_info
* add GetLatestBlock,GetBlockByHeight grpc endpoints
* add GetValidatorSetByHeight, GetLatestValidatorSet
* fix lint
* fix tests
* proto format
* Update Makefile
* review changes
* Makefile format
* handle nil pagination
* rename query.go to service.go
* format Makefile
* format Makefile
* review changes
* review changes
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-11-25 15:58:11 +00:00
Emmanuel T Odeke
6344d626db
types/Coin: compile and reuse Regexps to reduce massive RAM+CPU burn ( #7989 )
...
* types/Coin: compile and reuse Regexps to reduce massive RAM+CPU burn
Fixes a resource (CPU+RAM) burn from recompiling Regexps which would
consume 1.2+MiB of RAM and 1.1ms per ParseCoin invocation, which means
that 1,000 invocations would consume 1.2GiB of RAM and >1second.
With the change, ParseCoin now takes 3.2us down from 1.1ms, with
dramatic results:
name old time/op new time/op delta
ParseCoin-8 1.04ms ± 4% 0.00ms ± 1% -99.69% (p=0.000 n=9+10)
name old alloc/op new alloc/op delta
ParseCoin-8 1.20MB ± 0% 0.00MB ± 0% -99.94% (p=0.000 n=10+10)
name old allocs/op new allocs/op delta
ParseCoin-8 17.8k ± 0% 0.0k ± 0% -99.89% (p=0.000 n=10+10)
Fixes #7986 .
* replace the CoinDenomRegex variable with SetCoinDenomRegex() (#7998 )
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
2020-11-20 19:37:45 +00:00
Federico Kunze
97d96612c9
crypto/hd: add 'm/' prefix to hd path ( #7970 )
...
* crypto/hd: add 'm/' prefix to hd path
* update fundraiser path
* fix some tests
* tests
* fix test case
* changelog
* fix ledger tests
2020-11-18 18:42:45 +00:00
Marie Gauthier
1cc8af8d9b
[docs]: update building modules section to reflect ADR31 ( #7702 )
...
* Revert "Revert "Update old ref of RegisterQueryService""
This reverts commit 03e4c56de53938ccbf025a441e54b9842f7c4544.
* Update intro, module-manager and messages-and-queries
* Update messages-and-queries
* Update handler
* Update structure
* Add doc related to RegisterMsgServiceDesc
* Update docs/building-modules/handler.md
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
* Update docs/building-modules/handler.md
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
* Update docs/building-modules/handler.md
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
* Update docs/building-modules/messages-and-queries.md
* Update handler.md
* Rename handler.md to msg-services.md
* Update legacy msgs wording
* Update messages-and-queries.md
* Update docs/building-modules/msg-services.md
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
* Update docs/building-modules/intro.md
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
* Remove handler mention from intro.md
* Update docs/building-modules/messages-and-queries.md
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
* Update docs/building-modules/messages-and-queries.md
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
* Update docs/building-modules/msg-services.md
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
* Update docs/building-modules/keeper.md
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
* Update docs/building-modules/msg-services.md
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
* Address review comments
* Use tag
* Update docs/building-modules/intro.md
Co-authored-by: Cory <cjlevinson@gmail.com>
* Update docs/building-modules/intro.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Update docs/building-modules/messages-and-queries.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Update docs/building-modules/messages-and-queries.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Update docs/building-modules/messages-and-queries.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Update docs/core/transactions.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Update docs/building-modules/messages-and-queries.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Update docs/building-modules/messages-and-queries.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Update docs/building-modules/messages-and-queries.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Update docs/building-modules/messages-and-queries.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Remove framework related explanation from docs
* Update docs/building-modules/messages-and-queries.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Update docs/building-modules/module-manager.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Update docs/building-modules/module-manager.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Update docs/building-modules/msg-services.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Update docs/building-modules/msg-services.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Update docs/building-modules/msg-services.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Update docs/building-modules/msg-services.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Update docs/building-modules/msg-services.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Update docs/building-modules/msg-services.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Update docs/building-modules/msg-services.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Update docs/core/baseapp.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Update docs/core/baseapp.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Update beginblock-endblock.md
* Update docs/core/baseapp.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Update docs/core/transactions.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Add deprecated notice
* Update tx-lifecycle.md
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
Co-authored-by: Aaron Craelius <aaron@regen.network>
Co-authored-by: Cory <cjlevinson@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-11-17 20:41:43 +00:00
yihuang
54201d11e6
cli: convert coins to smallest unit registered ( #7777 )
...
* cli: convert coins to smallest unit registered
fixes : #7623
- test order of decimal operations
- support both int and decimal coins, truncate when normalizing to
base unit
* Update types/coin_test.go
* Update types/coin_test.go
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
Co-authored-by: Amaury <amaury.martiny@protonmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-11-16 11:34:54 +00:00
MD Aleem
f3e4964f2f
Add TxsByEvent gRPC endpoint ( #7842 )
...
* add service definition for TxsByEvents
* add TxsByEvent gRPC endpoint
* fix lint
* fix test
* review changes
* review changes
* fix proto descriptions
* review changes
* fix lint
* review changes
* Update proto/cosmos/tx/v1beta1/service.proto
* review changes
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-11-12 14:22:54 +00:00
Marie Gauthier
90e9370bd8
Replace tmcrypto.PubKey by our own cryptotypes.PubKey ( #7419 )
...
* WIP on removing tm pub/privkey
* Fix part of crypto tests
* Add PrivKeyLedgerSecp256K1 proto type
* Use BasePrivKey for ledger priv key type
* Refacto continued
* First round
* x/staking
* Continue porting
* x/* done
* Make build pass
* More conversion
* Remove IntoTmPubKey
* Fix test
* Remove crypto.PubKey in some other places
* Revert ledger changes
* Fix comment
* Remove useless function
* Add To/FromTmPublicKey
* Add migrate tests
* Fix test
* Fix another test
* Rename tm conversion functions
* Less code
* Rename BasePrivKey to LedgerPrivKey
* Add changelog
* Rename functions
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
2020-11-09 16:01:43 +00:00
Amaury Martiny
4309859bf1
Small fixes in docs and error messages ( #7826 )
...
* Small fixes in docs and error messages
* Add chain id
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
2020-11-06 01:25:38 +00:00
yihuang
aff88bbe99
Fix #7640 : tally calculation precision error ( #7641 )
...
Solution:
- change `(a / b) * c` to `a * b / c`
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-11-02 14:50:33 +00:00
Amaury Martiny
1961935fc7
Add GetTx gRPC endpoint ( #7688 )
...
* Add empty TxByHash
* Fix search & replace
* Renname to GetTx
* Make getTx grpc work
* Hash as string
* Add todo comment
* /tx
* Make tests pass
* Put into function
* Add changelog
* Fix lint
* RegisterTxService in server
* Remove comment
* Update proto/cosmos/tx/v1beta1/service.proto
Co-authored-by: Cory <cjlevinson@gmail.com>
* Create new protoCdc
* Move tx service to x/auth
* Small tweaks
* Link gh issue
* Fix lint
* Update x/auth/tx/service.go
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: Cory <cjlevinson@gmail.com>
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: SaReN <sahithnarahari@gmail.com>
2020-10-30 12:32:02 +00:00
Robert Zaremba
e0e16f62f9
Remove duplicated Module.Route calls ( #7716 )
...
* Remove duplicated Module.Route calls
* make a proper test for registering empty route
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-10-29 22:01:09 +00:00
Cory
536eb689dc
Add Deprecation headers for legacy rest endpoints ( #7686 )
...
* add deprecation headers for legacy rest endpoints
* add deprecation headers for missing tx routes
* rm handler-level deprecation headers
* switch to middleware Route.Use method for setting deprecation Headers
* set deprecation headers using subrouter
* cleanup gofmt
* goimports
* Update client/rest/rest.go
* update deprecation headers to be set on each module individually
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-10-29 11:37:46 +00:00
Amaury Martiny
82f15f306e
RegisterInterfaces registers service Msg type_urls ( #7671 )
...
* Add RegisterMsgServiceDesc
* Refactor newSendTxMsgServiceCmd
* Add test
* Register in all modules
* Remove RegisterMsgServiceDesc from baseapp
* Add explicit error message
* Add comment
* Update comment
* Add test
* Update comment
* Remove duplicate import
* Fix lint
* Forgot vesting
* Fix lint
* Fix test
* Put in types/module
* Put in types/msgservice
* Add comment about panic
* Update baseapp/msg_service_router.go
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
* Update baseapp/msg_service_router.go
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
* Update baseapp/msg_service_router.go
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
* Add comment
* Add better test
* Update baseapp/msg_service_router.go
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-10-28 19:20:45 +00:00
Anil Kumar Kammari
51ac6f876b
Rename RegisterGRPCRoutes ( #7696 )
...
* Rename
* Fix missing
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-10-28 11:39:49 +00:00
Akhil Kumar P
c3638adddc
init: Implement ADR 032 typed events ( #7564 )
...
* Add EmitTypedEvent in events
* Add parseTypedEvent method
* Use jsonpb
* Modify unmarshal proto in events
* Add a test for typed events
* Fix reflect issue in parseTypedEvent
* Modify event tests and add comments
* Add EmitTypedEvents and refactor other methods
* Fix golangci-lint issues
* Update ProtoMarshalJSON params
* Address PR comments
Co-authored-by: anilCSE <anil@vitwit.com>
Co-authored-by: Jack Zampolin <jack.zampolin@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-10-28 11:02:39 +00:00
Robert Zaremba
9bd42ace6b
simapp: rename MakeEncodingConfig to MakeTestEncodingConfig ( #7681 )
...
* simapp: rename MakeEncodingConfig to MakeTestEncodingConfig
* Updating the Changelog
+ Adding DEPRECATED attribute.
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-10-27 11:33:48 +00:00
Aaron Craelius
9e7eb0da00
Add MsgServer to Configurator for ADR 031 wiring ( #7584 )
...
* Add MsgServer to Configurator for ADR 031 wiring
* Add docs, wire up evidence & staking
* Add integration test
* Add comments
* Doc strings
* Update types/module/configurator.go
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
* Update types/module/configurator.go
Co-authored-by: Cory <cjlevinson@gmail.com>
* Wire up vesting
* Update CHANGELOG.md
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
Co-authored-by: Cory <cjlevinson@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-10-19 17:46:10 +00:00
Robert Zaremba
8eaf2ececc
Refactor x/staking Validation and Delegation tests based on MsgCreateValidator.Pubkey type change. ( #7526 )
...
* testing: refactore Validation and Delegation handling of x/staking
This Changeset introduces set of improvements for writing tests.
The idea is to create a testing subpackage which will provide functions
to make tests more dev-friendly and wrap higher level use-cases.
Here is a show-up of of creating a service for staking module
for tests.
This PR also changes the `x/staking/types.MsgCreateValidator.Pubkey` from string
to types.Any. This change motivated the other change to show the pattern I'm describing here.
* add validator checks
* type change fixes
* use deprecated
* adding test slashing
* new network comment update
* working on tests
* Fix TestMsgPkDecode test
* Add UnpackInterfaces to MsgCreateValidator
* Fix tests
* Convert bech32 pubkey to proto
* Fix test
* fix v039/migrate_test/TestMigrate
* fix tests
* testslashing: rename Service to Helper
* file rename
* update TestMsgDecode
Co-authored-by: blushi <marie.gauthier63@gmail.com>
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
Co-authored-by: Cory Levinson <cjlevinson@gmail.com>
2020-10-19 13:04:55 +00:00
Cory
8138605aed
Refactor x/auth/vesting to use ADR-031 ( #7551 )
...
* update auth/vesting module to use proto msg services
* rm accidental tmp files
* Update x/auth/vesting/msg_server.go
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
* golangci-lint fix
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
Co-authored-by: Aaron Craelius <aaron@regen.network>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-10-19 09:22:56 +00:00
Amaury Martiny
55242a659c
Add ADR 031 BaseApp and codec infrastructure ( #7519 )
...
* Refactor RegisterQueryServices -> RegisterServices
* Cleaner proto files
* Fix tests
* Add MsgServer
* Fix lint
* Remove MsgServer from configurator for now
* Remove useless file
* Fix build
* typo
* Add router
* Fix test
* WIP
* Add router
* Remove test helper
* Add beginning of test
* Move test to simapp?
* ServiceMsg implement sdk.Msg
* Add handler by MsgServiceRouter
* Correct signature
* Add full test
* use TxEncoder
* Update baseapp/msg_service_router.go
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Push changes
* WIP on ServiceMsg unpacking
* Make TestMsgService test pass
* Fix tests
* Tidying up
* Tidying up
* Tidying up
* Add JSON test
* Add comments
* Tidying
* Lint
* Register MsgRequest interface
* Rename
* Fix tests
* RegisterCustomTypeURL
* Add changelog entries
* Put in features
* Update baseapp/msg_service_router.go
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
* Update baseapp/msg_service_router.go
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
* Update baseapp/msg_service_router.go
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
* Update baseapp/msg_service_router.go
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
* Update baseapp/msg_service_router.go
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
* Update baseapp/msg_service_router.go
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
* Update baseapp/msg_service_router.go
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
* Address review comments
* Address nit
* Fix lint
* Update codec/types/interface_registry.go
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
* godoc
Co-authored-by: Aaron Craelius <aaronc@users.noreply.github.com>
Co-authored-by: Aaron Craelius <aaron@regen.network>
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
2020-10-15 13:07:59 +00:00
Aaron Craelius
9be15a42b9
Refactor x/bank according to ADR 031 ( #7520 )
...
* Refactor x/bank according to ADR 031
* Add comment
* Update comment
* Add comment
* Add tests, address edge cases
* Imports
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-10-13 09:05:46 +00:00
Aaron Craelius
228728cce2
Refactor RegisterQueryServices -> RegisterServices ( #7518 )
...
* Refactor RegisterQueryServices -> RegisterServices
* Fix tests
2020-10-12 16:31:51 +00:00
Amaury Martiny
33e7297c79
Use enum instead of int32 for BondStatus ( #7499 )
...
* Migrate staking module
* Add gov legacy
* Add comments
* Add x/distrib
* x/crisis
* x/mint
* Fix test
* migrate x/genutil
* Fix lint
* Fix staking constants
* Fix test
* Update x/genutil/legacy/v040/migrate.go
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
* Add migrate script instead of change BondStatus constants
* Change staking bondStatus to enum
* Fix test
* Fix another test
* Remove staking exported
* fix references
* Better constants
* Fix build
* Fix lint
* Remove buf version
* Fix tests
* Fix test
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
2020-10-12 13:56:02 +00:00
Alessio Treglia
f8e3fcb524
types: tests -> test suites migration ( #7494 )
2020-10-09 17:49:57 +01:00
Alessio Treglia
1f211aad57
types: keep migrating tests to test suites ( #7478 )
...
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-10-08 11:42:32 +00:00
billy rennekamp
3e6089dc0e
R4R: Add custom validation for denom ( #6755 )
...
Allow ValidateDenom to be customized per application.
closes : #6744
2020-10-06 18:06:41 +01:00
Aaron Craelius
4a1b2fba43
Add Fee granter field ( #7418 )
...
* WIP on adding Fee granter field
* WIP on adding Fee granter field
* WIP on adding Fee granter field
* Update comments, add tests
2020-10-05 21:56:09 +00:00
Amaury Martiny
6a92ed694e
proto register "cosmos.base.v1beta.Msg" interface ( #7433 )
2020-10-01 13:59:32 -03:00
Ethan Frey
d917520092
Add fee payer to protobuf definition ( #7384 )
...
* Add fee payer to protobuf definition
* Compile new tx type
* Use FeePayer from Tx, add it to required signers
* Add unit tests on proper handling of FeePayer field
* Use string address for fee payer field
* Update logic for string feePayer
2020-09-30 09:03:44 +00:00
Alessio Treglia
ddaa3c5176
types: tests -> test suites migration ( #7405 )
2020-09-29 13:29:10 +02:00
Marie Gauthier
489599b70f
Remove the old message PublicKey proto oneof ( #7390 )
...
* Remove unused PublicKey type and update docs
* Update wording
* Update proto/cosmos/base/crypto/v1beta1/crypto.proto
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
* Edit docs
* Move crypto.proto to multisig
* Proto linting
* Update docs/architecture/adr-020-protobuf-transaction-encoding.md
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
* Update wording for Public Key Encoding
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Robert Zaremba <robert@zaremba.ch>
2020-09-29 10:01:54 +00:00
Alessio Treglia
8601dcdbb7
types: tests -> test suites migration ( #7400 )
...
Ref #7362
2020-09-28 12:46:49 +02:00
Alessio Treglia
04ff40a8df
types: start grouping tests in test suites ( #7395 )
...
Ref #7362
2020-09-27 23:51:14 +02:00
Anil Kumar Kammari
d55c1a2665
Change `address` from bytes to bech32 strings ( #7242 )
...
* init
* Fix bank proto messages
* missing conversions
* remove casttype for addresses
* Fix tests
* Fix consaddress
* more test fixes
* Fix tests
* fixed tests
* migrate missing proto declarations
* format
* Fix format
* Fix alignment
* Fix more tests
* Fix ibc merge issue
* Fix fmt
* Fix more tests
* Fix missing address declarations
* Fix staking tests
* Fix more tests
* Fix config
* fixed tests
* Fix more tests
* Update staking grpc tests
* Fix merge issue
* fixed failing tests in x/distr
* fixed sim tests
* fixed failing tests
* Fix bugs
* Add logs
* fixed slashing issue
* Fix staking grpc tests
* Fix all bank tests :)
* Fix tests in distribution
* Fix more tests in distr
* Fix slashing tests
* Fix statking tests
* Fix evidence tests
* Fix gov tests
* Fix bug in create vesting account
* Fix test
* remove fmt
* fixed gov tests
* fixed x/ibc tests
* fixed x/ibc-transfer tests
* fixed staking tests
* fixed staking tests
* fixed test
* fixed distribution issue
* fix pagination test
* fmt
* lint
* fix build
* fix format
* revert tally tests
* revert tally tests
* lint
* Fix sim test
* revert
* revert
* fixed tally issue
* fix tests
* revert
* fmt
* refactor
* remove `GetAddress()`
* remove fmt
* revert fmt.Striger usage
* Fix tests
* Fix rest test
* disable interfacer lint check
* make proto-format
* add nolint rule
* remove stray println
Co-authored-by: aleem1314 <aleem.md789@gmail.com>
Co-authored-by: atheesh <atheesh@vitwit.com>
2020-09-25 10:25:37 +00:00
Marie Gauthier
91ca8ad3c1
Migrate BaseAccount PubKey to use Any ( #7268 )
...
* WIP on BaseAccount protobuf pub_key
* WIP on BaseAccount.PubKey
* WIP on BaseAccount pub key
* Update PubKey
* Update Account
* Docs
* WIP on protobuf keys
* Use Type() and Bytes() in sr25519 pub key Equals
* Add tests
* Add few more tests
* Update other pub/priv key types Equals
* Fix PrivKey's Sign method
* Rename variables in tests
* Fix infinite recursive calls
* Use tm ed25519 keys
* Add Sign and VerifySignature tests
* Remove ed25519 and sr25519 references
* proto linting
* Add proto crypto file
* Implement some of the new multisig proto type methods
* Add tests for MultisigThresholdPubKey
* Add tests for pubkey pb/amino conversion functions
* Move crypto types.go and register new proto pubkeys
* Add missing pointer ref
* Address review comments
* panic in MultisigThresholdPubKey VerifySignature
* Fix compile errors
* Remove pk conversion in ante handler
* Use internal crypto.PubKey in multisig
* Add tests for MultisigThresholdPubKey VerifyMultisignature
* Only keep LegacyAminoMultisigThresholdPubKey and move to proto keys to v1
* Remove conversion functions and introduce internal PubKey type
* Override Amino marshaling for proto pubkeys
* Merge master
* Make proto-gen
* Start removal of old PubKeyMultisigThreshold references
* Fix tests
* Fix solomachine
* Fix ante handler tests
* Pull latest go-amino
* Remove ed25519
* Remove old secp256k1 PubKey and PrivKey
* Uncomment test case
* Fix linting issues
* More linting
* Revert tests keys values
* Add Amino overrides to proto keys
* Add pubkey test
* Fix tests
* Use threshold isntead of K
* Standardize Type
* Revert standardize types commit
* Fix build
* Fix lint
* Fix lint
* Add comment
* Register crypto.PubKey
* Add empty key in BuildSimTx
* Simplify proto names
* Unpack interfaces for signing desc
* Fix IBC tests?
* Format proto
* Use secp256k1 in ibc
* Fixed merge issues
* Uncomment tests
* Update x/ibc/testing/solomachine.go
* UnpackInterfaces for solomachine types
* Remove old multisig
* Add amino marshal for multisig
* Fix lint
* Correctly register amino
* One test left!
* Remove old struct
* Fix test
* Fix test
* Unpack into tmcrypto
* Remove old threshold pubkey tests
* Fix register amino
* Fix lint
* Use sdk crypto PubKey in multisig UnpackInterfaces
* Potential fix?
* Register LegacyAminoPubKey
* Register our own PubKey
* Register tmcrypto PubKey
* Register both PubKeys
* Register interfaces in test
* Refactor fiels
* Add comments
* Remove old cosmos-sdk/crypto/keys reference
* Use anil's suggestion
* Add norace back
* Use our own ed25519
* Fix pubkey types
* Fix network tests
* Fix more tests
* Make ibc work?
* Use TM pubkey in NewValidator
* Fix lint
* Put interface in tpyes
* rerun CI
* Better name register
* Remove stray code
* Add ed25519 tests
* Check nil
* Correct interface impl assert
* rerun CI
* Add fix for Bech32
* Address comments
* FIx lint
* Add tests for solomachine unpack interfaces
* Fix query tx by hash
* Better name in amino register
* Fix lint
* Add back ed25519 test (fixes #7352 )
* go mod tidy
* Fix merge issues
* Sort import
* Add test for backwards-compatibility
* Fix tests
* Fix merge issue
* Update client/context.go
Co-authored-by: Cory <cjlevinson@gmail.com>
* Update types/address.go
Co-authored-by: Cory <cjlevinson@gmail.com>
* Address feedback
* Add comment
* Fix BaseAccount SetPubKey and address further comments
* Lint
* Remove unnecessary use of copy in getPubKeyFromString
* Update comment
Co-authored-by: Aaron Craelius <aaronc@users.noreply.github.com>
Co-authored-by: Aaron Craelius <aaron@regen.network>
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: colin axnér <25233464+colin-axner@users.noreply.github.com>
Co-authored-by: Cory <cjlevinson@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-09-25 08:41:16 +00:00
dauTT
30f9862b4b
Remove zero coins from ParseCoins and ParseDecCoins ( #7348 )
...
* Remove zero coins from ParseCoins and ParseDecCoins
* Implement requested changes
* Update types/coin_test.go
* Revert
* Align the behaviour of NewCoins and ParseCoins (respectively NewDecCoins and ParseDecCoins)
* Amend comments
* Update types/dec_coin.go
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
Co-authored-by: Alessio Treglia <quadrispro@ubuntu.com>
Co-authored-by: SaReN <sahithnarahari@gmail.com>
Co-authored-by: colin axnér <25233464+colin-axner@users.noreply.github.com>
2020-09-25 08:31:31 +00:00
Alessio Treglia
b590094e1d
make format && go mod tidy ( #7378 )
2020-09-23 18:04:26 +01:00
Aleksandr Bezobchuk
4f1f106804
init commit ( #7360 )
2020-09-22 19:46:48 -04:00
Amaury Martiny
7cd25abb87
Proto Tx with Any ( #7276 )
...
* WIP on protobuf keys
* Use Type() and Bytes() in sr25519 pub key Equals
* Add tests
* Add few more tests
* Update other pub/priv key types Equals
* Fix PrivKey's Sign method
* Rename variables in tests
* Fix infinite recursive calls
* Use tm ed25519 keys
* Add Sign and VerifySignature tests
* Remove ed25519 and sr25519 references
* proto linting
* Add proto crypto file
* Implement some of the new multisig proto type methods
* Add tests for MultisigThresholdPubKey
* Add tests for pubkey pb/amino conversion functions
* Move crypto types.go and register new proto pubkeys
* Add missing pointer ref
* Address review comments
* panic in MultisigThresholdPubKey VerifySignature
* Use internal crypto.PubKey in multisig
* Add tests for MultisigThresholdPubKey VerifyMultisignature
* Only keep LegacyAminoMultisigThresholdPubKey and move to proto keys to v1
* Remove conversion functions and introduce internal PubKey type
* Override Amino marshaling for proto pubkeys
* Merge master
* Make proto-gen
* Start removal of old PubKeyMultisigThreshold references
* Fix tests
* Fix solomachine
* Fix ante handler tests
* Pull latest go-amino
* Remove ed25519
* Remove old secp256k1 PubKey and PrivKey
* Uncomment test case
* Fix linting issues
* More linting
* Revert tests keys values
* Add Amino overrides to proto keys
* Add pubkey test
* Fix tests
* Use threshold isntead of K
* Standardize Type
* Revert standardize types commit
* Fix build
* Fix lint
* Fix lint
* Add comment
* Register crypto.PubKey
* Add empty key in BuildSimTx
* Simplify proto names
* Unpack interfaces for signing desc
* Fix IBC tests?
* Format proto
* Use secp256k1 in ibc
* Fixed merge issues
* Uncomment tests
* Update x/ibc/testing/solomachine.go
* UnpackInterfaces for solomachine types
* Remove old multisig
* Add amino marshal for multisig
* Fix lint
* Correctly register amino
* One test left!
* Remove old struct
* Fix test
* Fix test
* Unpack into tmcrypto
* Remove old threshold pubkey tests
* Fix register amino
* Fix lint
* Use sdk crypto PubKey in multisig UnpackInterfaces
* Potential fix?
* Register LegacyAminoPubKey
* Register our own PubKey
* Register tmcrypto PubKey
* Register both PubKeys
* Register interfaces in test
* Refactor fiels
* Add comments
* Use anil's suggestion
* Add norace back
* Check nil
* Address comments
* FIx lint
* Add tests for solomachine unpack interfaces
* Fix query tx by hash
* Better name in amino register
* Display StdTx instead of proto Tx
* Remove useless check
Co-authored-by: Aaron Craelius <aaronc@users.noreply.github.com>
Co-authored-by: blushi <marie.gauthier63@gmail.com>
Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: colin axnér <25233464+colin-axner@users.noreply.github.com>
2020-09-21 16:48:28 +00:00
Cory
62b4aa9a14
Fix sequence number handling for LegacyAmino > SignatureV2 ( #7285 )
...
* add multi-sequence ante_test with explicit amino, test out alternative without SkipSequenceCheck
* add attempt at rest based test for full transactions
* drop extraneous ante_handler explicit amino test
* add rest handler test for multiple broadcasts, remove SkipSequenceCheck flag
* add godoc & cleanups
* add test case for incorrect sequence number
* remove artifact files
* Update x/auth/ante/sigverify.go
Co-authored-by: Zaki Manian <zaki@manian.org>
* Update sigverify.go
Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
Co-authored-by: Zaki Manian <zaki@manian.org>
2020-09-16 19:35:20 +00:00
colin axnér
4d9c32f44f
Remove UNINITIALIZED usage from connection and channel ( #7297 )
...
* remove UNINITALIZED connection state
* remove uninit channel state
* add back uninitalized def in proto file
* fix typo
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-09-14 21:41:23 +00:00
SaReN
b2348180b8
Migrate {x/auth, x/gov, x/staking} missing CLI queries to proto ( #6994 )
...
* Fix error code
* Fix decoder
* Fix typo
* Fix decode
* refactor
* Migrate SearchTxsResult to proto
* fix MarkEventsToIndex
* lint++
* Fix output
* Add QueryTxCmd cli test
* Add fmt
* Put txBuilder in types/tx
* Add GetAnyTx in TxBuilder
* Add new IsAnyTx
* Rename to IntoAny
* Fix bug
* fmt
Co-authored-by: Marie <marie.gauthier63@gmail.com>
* Fix ibc CLI to use proto
* Fix any MarshalJSON
* Fix test
* Make tx.Tx implement sdk.Tx
* Register sdk.Tx
* Fix lint
* Allow DefaultJSONTxEncoder to take tx.Tx
* refactor
* Rename variable
* remove fmt
Co-authored-by: Anil Kumar Kammari <anil@vitwit.com>
Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: Aleksandr Bezobchuk <aleks.bezobchuk@gmail.com>
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
Co-authored-by: Marie <marie.gauthier63@gmail.com>
2020-09-10 18:26:47 +00:00
Alexander Bezobchuk
325be6ff21
Merge PR #7209 : Create Vesting Account Message
2020-09-08 09:09:50 -07:00
Erik Grinaker
4faeefebd2
Add state sync support ( #7166 )
...
* Add state sync support
* fix incorrect test tempdir
* proto: move and update Protobuf schemas
* proto: lint fixes
* comment tweaks
* don't use type aliasing
* don't call .Error() when logging errors
* use create terminology instead of take for snapshots
* reuse chunk hasher
* simplify key encoding code
* track chunk index in Manager
* add restoreDone message for Manager
* add a ready channel to Snapshotter.Restore()
* add comment on streaming IO API
* use sdkerrors for error handling
* fix incorrect error
* tweak changelog
* syntax fix
* update test code after merge
2020-09-08 09:05:44 +00:00
Anil Kumar Kammari
64b6bb5270
rename RegisterCodec to RegisterLegacyAminoCodec ( #7243 )
...
* rename RegisterCodec to RegisterLegacyAminoCodec
* Add changelog
* gofmt
* rename codec.New() to codec.NewLegacyAmino()
* Add change log
* Update CHANGELOG.md
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
* Fix
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
2020-09-07 14:47:12 +00:00
Amaury Martiny
bae1399ebc
Add `SkipSequenceCheck` flag in SignatureV2 for Amino signatures ( #7234 )
...
* Add SkipSequenceCheck
* Fix test
* Fix test
* Add explicit amino test
Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
2020-09-04 17:49:07 +00:00