Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: merge cosmos-sdk v0.45.1 #495

Merged
merged 732 commits into from
Apr 4, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
732 commits
Select commit Hold shift + click to select a range
1451219
fix blond typo (#9422)
sunnya97 Jun 1, 2021
b27d460
fix: Staking delegations should return empty list instead of rpc erro…
likhita-809 Jun 1, 2021
f5dd963
fix: Bank module init genesis optimization (#9428)
yun-yeo Jun 1, 2021
f556830
fix memo flag description (#9436)
ryanchristo Jun 2, 2021
dd0058e
feat: add `RefundGas` function to `GasMeter` (#9403)
fedekunze Jun 2, 2021
5a9b634
fix: x/gov deposits querier (Initial Deposit) (#9288)
aleem1314 Jun 3, 2021
c21e7bf
fix: Fix testnet command (#9454)
likhita-809 Jun 3, 2021
68f6792
build(deps): bump github.com/prometheus/common from 0.25.0 to 0.27.0 …
dependabot[bot] Jun 4, 2021
de30785
docs: Fix simulation docs link (#9452)
ValarDragon Jun 4, 2021
ad719e4
feat: Add amino support for x/authz and x/feegrant (#9457)
amaury1093 Jun 4, 2021
d14f0d3
client: update client error handling to use tx hash from tendermint (…
fedekunze Jun 7, 2021
b06659c
build(deps): bump ws from 6.2.1 to 6.2.2 in /docs (#9461)
dependabot[bot] Jun 7, 2021
bdbdf7d
refactor: add util functions to reuse in simulations (#9456)
tac0turtle Jun 7, 2021
a18f41b
fix: make proto-format (#9470)
robert-zaremba Jun 7, 2021
089351b
fix: feegrant grant period not resetting (#9450)
ryanchristo Jun 7, 2021
d289b4d
build(deps): bump github.com/prometheus/client_golang (#9474)
dependabot[bot] Jun 8, 2021
b27c97a
fix interfaces links (#9448)
ryanchristo Jun 8, 2021
68666e5
style: fix lint errors and update lint timeout (#9464)
augchan42 Jun 8, 2021
1bfffed
Fix ReadRESTReq documentation (#9476)
LeCodeurDuDimanche Jun 9, 2021
1f7c348
build(deps): bump github.com/prometheus/common from 0.27.0 to 0.28.0 …
dependabot[bot] Jun 9, 2021
930326b
build(deps): bump github.com/btcsuite/btcd (#9483)
dependabot[bot] Jun 9, 2021
a8aaea8
docs: update contributing pull request process (#9472)
ryanchristo Jun 10, 2021
d3394b5
docs: Fix ADR 030 reference link (#9487)
Jun 10, 2021
6dc9be2
test (#9484)
aleem1314 Jun 10, 2021
cb7a823
refactor(client): add client/Context.Codec and deprecate JSONCodec (#…
robert-zaremba Jun 11, 2021
4463524
ci: use title+body for commit message (#9496)
ryanchristo Jun 11, 2021
4cfb5a7
fix: testnet cli command update genesis supply (#9497)
technicallyty Jun 14, 2021
c27f3fc
revert: Turn staking power reduction into an on-chain param (#9495)
amaury1093 Jun 14, 2021
92d1f65
build(deps): bump github.com/prometheus/common from 0.28.0 to 0.29.0 …
dependabot[bot] Jun 14, 2021
3719568
Remove Docs label from auto-label action (#9517)
aaronc Jun 15, 2021
1474b98
build(deps): bump github.com/rs/zerolog from 1.22.0 to 1.23.0 (#9515)
dependabot[bot] Jun 15, 2021
da90abe
build(deps): bump codecov/codecov-action from 1.5.0 to 1.5.2 (#9482)
dependabot[bot] Jun 15, 2021
ffaa5cc
build(deps): bump github.com/golang/mock from 1.5.0 to 1.6.0 (#9512)
dependabot[bot] Jun 16, 2021
62b114d
feat: grpc-web add CORS handler (#9493)
aleem1314 Jun 16, 2021
0d773ec
fix: Handle MAX_INT_256 (#9511)
mankenavenkatesh Jun 16, 2021
d6f1ff9
build(deps): bump postcss from 7.0.35 to 7.0.36 in /docs (#9525)
dependabot[bot] Jun 17, 2021
902936b
build(deps): bump github.com/armon/go-metrics from 0.3.8 to 0.3.9 (#9…
dependabot[bot] Jun 17, 2021
9a516e4
build(deps): bump github.com/spf13/viper from 1.7.1 to 1.8.0 (#9524)
dependabot[bot] Jun 17, 2021
344ceb1
perf: Speedup to params simulation (#9481)
ValarDragon Jun 17, 2021
ee56109
perf: MsgTypeUrl optimization (#9530)
robert-zaremba Jun 17, 2021
b9cdc5e
docs: Add docs for setting store loader (#9526)
likhita-809 Jun 17, 2021
864c03d
fix build
dudong2 Mar 8, 2022
1210c3a
fix build & fix test build
dudong2 Mar 8, 2022
ae295c6
fix test
dudong2 Mar 9, 2022
0f19372
fix: duplicate vesting and format (#9535)
ryanchristo Jun 18, 2021
0200646
build(deps): tendermint version (#9541)
tac0turtle Jun 18, 2021
0909fc0
feat: add cosmos-sdk Version (#9429)
tac0turtle Jun 18, 2021
b2bda7c
fix: collect all responses from authz/MsgExec (#9538)
robert-zaremba Jun 18, 2021
948ace1
fix: query txs command adds output flag (#9540)
chengwenxi Jun 21, 2021
26290f6
fix: Dumping upgrade info interrupted by cosmovisor (#9384)
yihuang Jun 21, 2021
097d06f
fix: set header hash every block (#9552)
fedekunze Jun 21, 2021
f49ed13
docs: use RFC 2119 keywords (#9532)
robert-zaremba Jun 22, 2021
437879b
chore: Update CHANGELOG with 0.42.5 and 0.42.6 (#9558)
amaury1093 Jun 22, 2021
a984ff7
test(bank): check that zero balances are deleted (#9559)
robert-zaremba Jun 22, 2021
75f0536
docs: fix cosmovisor readme (#9549)
ryanchristo Jun 22, 2021
b0170c5
feat: make authz MsgExec emit events from all executed msgs (#9522)
technicallyty Jun 22, 2021
dccf30e
feat: Allow app developers to override default appConfig template (#9…
anilcse Jun 23, 2021
7f359db
refactor: Bring back deprecated proto fields to `v1beta1` (#9534)
amaury1093 Jun 23, 2021
dd4fb81
feat: multisig should accept name, not just address (#9553)
likhita-809 Jun 23, 2021
e2d5306
fix(keyring): update keyring for kwallet fix (#9563)
robert-zaremba Jun 24, 2021
5e86479
feat: Non-zero Default Fees (#9371)
cyberbono3 Jun 25, 2021
9bd64ef
fix: added key when dry-run is true (#9480)
ryanchristo Jun 25, 2021
cde0390
fix: Correctly populate legacy Vote.Option field (#9583)
amaury1093 Jun 25, 2021
beedad0
chore: Create v0.43.0-rc0 section in CHANGELOG (#9572)
amaury1093 Jun 25, 2021
4eb0d7c
chore: Add release notes for 0.43.0-rc0 (#9584)
amaury1093 Jun 25, 2021
89f0c0a
feat: Error on blank chain-id in multisign command (backport #9593) (…
mergify[bot] Jun 30, 2021
2fb8f54
fix: Don't error on startup if min-gas-price is empty (#9621)
amaury1093 Jul 2, 2021
2746aa7
chore: Audit v0.43 CHANGELOG against commit log (backport #9592) (#9622)
mergify[bot] Jul 5, 2021
fe83bbe
docs(swagger): add authz & feegrant swagger docs (#9625) (#9632)
mergify[bot] Jul 5, 2021
8b97564
docs: add v0.43 version option (#9506) (#9676)
mergify[bot] Jul 12, 2021
d1ba336
feat: add migrations for balances with zero coins (backport #9664) (#…
mergify[bot] Jul 13, 2021
15842f7
chore: Cleanup Changelog, add Rosetta to Release Notes as beta (#9691)
amaury1093 Jul 14, 2021
c73846b
chore: separate changes between 0.43.0-rc0 and 0.43.0-rc1 (#9700)
robert-zaremba Jul 14, 2021
dca99b6
chore: add missing bugfix (zero coins pruning) to the changelog (#9701)
robert-zaremba Jul 15, 2021
c0c82bb
fix: start GRPCWebServer in goroutine (backport #9704) (#9719)
mergify[bot] Jul 19, 2021
844ebfb
docs: add chain upgrade guide v0.43 (backport #9567) (#9725)
mergify[bot] Jul 20, 2021
65d155a
perf(grpcweb): remove useless HTTP HandlerFun wrapping (#9711) (#9721)
mergify[bot] Jul 20, 2021
88f008e
fix: support output flag on tx commands (backport #9717) (#9771)
mergify[bot] Jul 26, 2021
6961387
feat: TxRaw must follow ADR 027 (#9743) (#9754)
mergify[bot] Jul 27, 2021
37b6fbf
refactor: Improve txRaw decoder code (backport #9769) (#9779)
mergify[bot] Jul 27, 2021
15b81f2
feat: Query txs by signature and by address+seq (backport #9750) (#9782)
mergify[bot] Jul 27, 2021
e68587c
feat: Low-s normalization for ecdsa secp256r1 signing (#9738) (#9793)
mergify[bot] Jul 27, 2021
715f1a8
docs: fix cosmovisor quickstart (backport #9730) (#9789)
mergify[bot] Jul 28, 2021
0c92530
docs: Update baseapp.md and tx-lifecycle.md (#9792) (#9802)
mergify[bot] Jul 28, 2021
fe2718f
fix: Cap Initialization Fix (forward-port #9392) (#9805)
mergify[bot] Jul 28, 2021
d353e61
chore: added changelog for 9793 (secp256r1 tx malleability) (backport…
mergify[bot] Jul 28, 2021
ce5bf11
fix: hardcoded ledger algo on `keys add` (backport #9766) (#9803)
mergify[bot] Jul 28, 2021
9b61660
feat: Improve withdraw-all-rewards UX (backport #9781) (#9824)
mergify[bot] Aug 2, 2021
4378d72
fix!: update gentx val pub key input parsing (backport #9827) (#9833)
mergify[bot] Aug 2, 2021
bcfdeeb
fix: fixed missing coin denomination in msg server logs (backport #97…
mergify[bot] Aug 4, 2021
2ce79e2
fix!: Capability Issue on Restart, Backport to v0.43 (backport #9836)…
mergify[bot] Aug 4, 2021
e9d3a33
style(capability)!: update go doc comments and remove BeginBlocker (b…
mergify[bot] Aug 4, 2021
e45bceb
chore: Changelog and Release Notes for 0.43.0-rc3 (#9801)
amaury1093 Aug 5, 2021
631b777
refactor: update default pruning strategy (#9859) (#9863)
mergify[bot] Aug 6, 2021
cc28835
chore: add missing changelog entry from #9859 (backport #9867) (#9871)
mergify[bot] Aug 6, 2021
d60f8b1
chore: v0.43.0 Changelog and Release Notes (#9886)
amaury1093 Aug 10, 2021
8cacd78
fix build
dudong2 Mar 10, 2022
40c2aeb
fix test build
dudong2 Mar 10, 2022
12dbb33
fix test
dudong2 Mar 11, 2022
1eb832b
fix build
dudong2 Mar 11, 2022
5665e87
fix test build
dudong2 Mar 11, 2022
f96a426
fix proto
dudong2 Mar 11, 2022
df79301
fix test
dudong2 Mar 11, 2022
fef783d
remove GetTotalSupply
dudong2 Mar 13, 2022
1f42b49
fix keyring output about val address, cons address
dudong2 Mar 14, 2022
39b9e1a
retore gov/client/rest/rest_test.go build norace flag
dudong2 Mar 14, 2022
53e1883
revert github workflow files
dudong2 Mar 14, 2022
0fff136
fix lint
dudong2 Mar 14, 2022
52b82e6
ci: add swagger check (#457)
0Tech Mar 13, 2022
6ca4878
fix lint
dudong2 Mar 14, 2022
89c3c80
fix proto-swagger-gen(Grants -> TokenGrants in query.proto of token m…
dudong2 Mar 14, 2022
69f535c
remove "git diff-index --quite HEAD" from proto.yml swagger test
dudong2 Mar 14, 2022
4d9f828
Revert "remove "git diff-index --quite HEAD" from proto.yml swagger t…
dudong2 Mar 15, 2022
3e79870
fix update swagger docs
dudong2 Mar 15, 2022
13f8fae
fix proto swagger-docs diff test
dudong2 Mar 15, 2022
0cde898
fix sim test
dudong2 Mar 15, 2022
208e88b
fix proto swagger-docs diff test
dudong2 Mar 15, 2022
7ff3631
fix x/distribution InitGenesis OutstandingRewards
dudong2 Mar 16, 2022
90d37e7
Merge branch 'main' into dudong2/feat/[email protected]
dudong2 Mar 16, 2022
cf68b75
remove docs/architecture/*
dudong2 Mar 21, 2022
e88a81c
fix cosmos-sdk issues url
dudong2 Mar 21, 2022
26dec27
rename from TokenBalance, TokenGrant to Balance, Grant in token modul…
dudong2 Mar 21, 2022
04bd48c
edit config.json("Grant" -> "Grants")
dudong2 Mar 21, 2022
146f83e
feat: add tx fee event (backport #9860) (#9887)
mergify[bot] Aug 10, 2021
189618d
fix: file keyring fails to add/import/export keys when input is not s…
mergify[bot] Aug 12, 2021
d914f26
chore: Deprecate QueryUpgradedConsensusState (#9906) (#9909)
mergify[bot] Aug 12, 2021
b412477
chore: Update STABLE_RELEASES for 0.43 (#9931) (#9943)
mergify[bot] Aug 16, 2021
af062ee
fix: Fix CLI query tx docs for acc/seq (#9942) (#9950)
mergify[bot] Aug 17, 2021
01827d4
build(deps): bump TM to v0.34.12 (backport #9956) (#9960)
mergify[bot] Aug 17, 2021
cde8f29
fix(build): set a right version for the app (backport #9965) (#9967)
mergify[bot] Aug 18, 2021
aa06141
refactor: Move some methods inside TX Factory (backport #9421) (#10039)
mergify[bot] Aug 31, 2021
3472ed0
fix: remove legacy REST endpoints for broadcast & encode (v0.44.x) (#…
clevinson Sep 1, 2021
55715b9
fix!: Remove onlyAminoSigners in sequence check (backport #10029) (#1…
mergify[bot] Sep 1, 2021
041534e
chore: release v0.44 (#10048)
robert-zaremba Sep 1, 2021
3407fef
chore: revert TxFactory changes (#10053)
robert-zaremba Sep 1, 2021
9882904
fix: minimum-gas-price warning (#10071)
ryanchristo Sep 7, 2021
1c2f71a
chore: remove incorrect EOL date for v0.42 (#10078)
clevinson Sep 9, 2021
76d8aa4
docs: clarify grpc server (#9761) (#10101)
mergify[bot] Sep 9, 2021
2466af5
docs: update to v0.44 version tag (#10069) (#10099)
mergify[bot] Sep 10, 2021
f19f98c
docs: update to v0.44 migration (backport #10070) (#10129)
mergify[bot] Sep 13, 2021
14b1674
fix: Allow --home to propagate to init command (backport #10104) (#10…
mergify[bot] Sep 15, 2021
11ec33d
fix: rosetta server boot and add burn event type to pass check:data (…
mergify[bot] Sep 16, 2021
787d408
perf: Speedup coins.AmountOf() by removing many regex calls (backport…
mergify[bot] Sep 16, 2021
de6d7d7
fix: Update RequestInitChain in Simulations (#10171)
mergify[bot] Sep 16, 2021
95b1c29
fix: unmarshalling issue with multisig keys in master (backport #1006…
mergify[bot] Sep 16, 2021
d0681f3
fix: use keyring in config for add-genesis-account cmd (backport #996…
mergify[bot] Sep 16, 2021
d43f374
fix(CI): add golangci-lint to dependencies (#10112) (#10172)
robert-zaremba Sep 16, 2021
f09c847
fix!: update ABCI query to use request height (backport #9879) (#10185)
mergify[bot] Sep 16, 2021
c282c57
fix: Incorrect error message when periodlimit is not set on a feegran…
mergify[bot] Sep 16, 2021
5b1d652
perf: Make CacheKV store interleaved iterator and insertion not O(n^2…
mergify[bot] Sep 16, 2021
9764316
chore: bump IAVL version (backport #10040) (#10154)
mergify[bot] Sep 17, 2021
e7251a3
perf: Remove telemetry from wrappings of store (backport #10077) (#10…
mergify[bot] Sep 17, 2021
d690998
fix: revert \#10169 (amino multisig key unmarshalling) (#10193)
robert-zaremba Sep 18, 2021
a055572
fix: removed potential sources of non-determinism in upgrades (backpo…
mergify[bot] Sep 29, 2021
d03c002
chore: v0.44.1 release notes and changelog (#10261)
amaury1093 Sep 29, 2021
1ee4cc3
chore: Cosmos SDK v0.44.1 release notes (#10345)
robert-zaremba Oct 12, 2021
fa8b46c
Merge pull request from GHSA-2p6r-37p9-89p2
robert-zaremba Oct 12, 2021
bb70831
fix: --home flag parsing (backport #10226) (#10271)
mergify[bot] Oct 4, 2021
eca1e12
fix!: remove grpc query routing through tendermint (backport #10045) …
mergify[bot] Oct 4, 2021
d9bc93d
chore: [x/feegrant] remove unnecessary logging in simulation (backpor…
mergify[bot] Oct 5, 2021
b7c0ac0
fix: null guard for tx fee amounts (backport #10327) (#10342)
mergify[bot] Oct 12, 2021
26b3b62
perf: Only do memory allocation when zero coin is found (backport #10…
mergify[bot] Oct 14, 2021
78eda2a
build(deps): bump github.com/tendermint/tendermint from 0.34.13 to 0.…
mergify[bot] Oct 15, 2021
ec5d977
fix!: store/cachekv: reduce growth factor for iterator ranging using …
mergify[bot] Oct 15, 2021
86293a8
chore: backport release-v0.44.2 (#10349)
robert-zaremba Oct 15, 2021
0fd48f2
fix: rosetta `getHeight` function to use tmRPC.GenesisChunked() inste…
mergify[bot] Oct 20, 2021
6416b24
build: Update gin-gonic/gin to v1.7.0 (backport #10401) (#10410)
mergify[bot] Oct 21, 2021
4f7d92c
chore: v0.44.3 release notes and changelog (#10416)
amaury1093 Oct 22, 2021
a9d2e42
docs: add ibc migration docs in migration docs (#10438) (#10440)
mergify[bot] Oct 26, 2021
aea3a25
chore: Add "Since:" on proto doc comments (backport #10434) (#10449)
mergify[bot] Oct 29, 2021
d75aba6
style: lint go and markdown (backport #10060) (#10473)
mergify[bot] Nov 11, 2021
c5ffc07
fix: use sdk.config hdpath (backport #10414) (#10445)
mergify[bot] Nov 12, 2021
b25ce8e
fix: query account balance by ibc denom (backport #10394) (#10523)
mergify[bot] Nov 12, 2021
5fdb306
fix: delete ru docs (#10549)
fedekunze Nov 15, 2021
9e86862
feat: update x/upgrade keeper.DumpUpgradeInfoToDisk to support Plan.I…
robert-zaremba Nov 15, 2021
d9a7c64
build: fix build environment for the liveness test (backport #10551) …
mergify[bot] Nov 15, 2021
8457514
chore: Iavl iterator (backport #10544) (#10545)
mergify[bot] Nov 16, 2021
4990d1a
fix: always move auth module migration to the end (#10608)
robert-zaremba Nov 25, 2021
eb7bf90
chore: 0.44.4 release notes (#10613)
robert-zaremba Nov 25, 2021
40ffe94
build(deps): Use self-maintained btcutil (#10082) (backport #10201) (…
mergify[bot] Nov 29, 2021
30d017a
fix: emit ante events even for the failed txs (#10631)
yun-yeo Dec 1, 2021
195e017
fix: upgrade IAVL (#10648)
robert-zaremba Dec 1, 2021
aed45cb
fix: Add Events to TxResponse (backport #10630) (#10643)
mergify[bot] Dec 2, 2021
4e54cb4
chore: Cosmos SDK v0.44.5 release notes (#10667)
robert-zaremba Dec 2, 2021
8d45322
fix: types/errors Wrap and Wrapf (backport #10674) (#10676)
mergify[bot] Dec 6, 2021
1609ac1
build(deps): upgrade rosetta to 0.7.0 (backport #10432) (#10717)
mergify[bot] Dec 10, 2021
3315588
perf: Speedup cachekv iterator on large deletions & IBC v2 upgrade lo…
mergify[bot] Dec 13, 2021
b93a2d8
fix: populate ctx.ConsensusParams for begin blockers (backport #10725…
mergify[bot] Dec 16, 2021
184d01a
fix: register evidence regression (backport #10595) (#10774)
mergify[bot] Dec 17, 2021
6f4bfba
chore: update feegrant `grant` description (backport #10823) (#10829)
mergify[bot] Dec 22, 2021
8318188
fix: create query context with requested block height (#10827) (#10867)
mergify[bot] Jan 4, 2022
9fa60ea
fix: recreate compat field, of null pubkeys in multisig (backport #10…
mergify[bot] Jan 5, 2022
95eccbd
feat: support custom mnemonics in in-process testing network (backpor…
mergify[bot] Jan 13, 2022
580535e
fix: return 404 on non-existing tx (backport #10992) (#11015)
mergify[bot] Jan 25, 2022
429076f
revert: "support custom mnemonics in in-process testing network (back…
amaury1093 Feb 2, 2022
e745123
chore: v0.44.6 changelog and release notes (#10953)
amaury1093 Feb 2, 2022
ea86149
fix proto
dudong2 Mar 17, 2022
d49c4ea
fix build
dudong2 Mar 17, 2022
94c00c8
fix test
dudong2 Mar 17, 2022
9a5453a
re-add auth tx cmd(reverted by #434)
dudong2 Mar 21, 2022
9d78607
fix: Charge gas even when there are no entries in gaskv (backport #10…
mergify[bot] Dec 8, 2021
e722aaf
feat: add configurable iavl cache size (backport #10561) (#10698)
dudong2 Mar 21, 2022
68cb886
fix test
dudong2 Mar 21, 2022
7b9b7c1
feat: Add `HasSupply` method to bank keeper (backport #10393) (#10699)
mergify[bot] Dec 9, 2021
5edf455
fix!: Charge gas for key length in gas meter (backport #10247) (#10697)
mergify[bot] Dec 10, 2021
24fd66e
fix test
dudong2 Mar 22, 2022
9586f87
build(deps): upgrade rosetta to 0.7.0 (backport #10432) (#10716)
mergify[bot] Dec 10, 2021
b9b096c
perf: Speedup cachekv iterator on large deletions & IBC v2 upgrade lo…
mergify[bot] Dec 13, 2021
6db2170
fix: populate ctx.ConsensusParams for begin blockers (backport #10725…
mergify[bot] Dec 16, 2021
f97e5a6
fix: nil pointer panic on `NewIntFromBigInt` (backport #9627) (#10845)
mergify[bot] Dec 29, 2021
d295254
revert TestConfigCmdEnvFlag test comment
dudong2 Mar 22, 2022
5194747
perf: Improve the speed of coins.String() (backport #10076) (#10850)
mergify[bot] Dec 30, 2021
1401305
perf!: Add HasAccount to the AuthKeeper to save protobuf decoding tim…
mergify[bot] Dec 31, 2021
5d3ea47
fix test
dudong2 Mar 22, 2022
5fc4bf1
fix: enable setting sequence (nonce) for module account (backport #10…
mergify[bot] Jan 3, 2022
b151196
perf: store/cachekv: avoid a map lookup if unnecessary, clear maps fa…
mergify[bot] Jan 3, 2022
e80df8a
fix: adding checks to ensure coin denoms are sorted in `Balance` duri…
mergify[bot] Jan 3, 2022
faa6c04
fix test
dudong2 Mar 22, 2022
3bb5631
fix: register evidence regression (backport #10595) (#10775)
mergify[bot] Jan 3, 2022
4ea6677
fix: Panic if SetOrder* functions forgot modules (backport #10711) (#…
mergify[bot] Jan 3, 2022
dbd5faa
fix test
dudong2 Mar 22, 2022
f4217b5
fix: create query context with requested block height (#10827) (#10866)
mergify[bot] Jan 4, 2022
b086f1a
fix: recreate compat field, of null pubkeys in multisig (backport #10…
mergify[bot] Jan 5, 2022
ca102fc
fix!: tx result don't report block gas used as tx gas used (#10833)
yihuang Jan 5, 2022
7946276
feat: support in-place migration ordering (backport #10614) (#10890)
mergify[bot] Jan 6, 2022
bc2f25c
fix: use full gas on overflow (backport #10897) (#10912)
mergify[bot] Jan 7, 2022
cab640e
feat!: x/gov: raise max description length to 10k chars (backport #10…
mergify[bot] Jan 10, 2022
b88557d
fix: revert tx when block gas limit exceeded (backport: #10770) (#10814)
yihuang Jan 12, 2022
83b7e94
chore: v0.45.0 Release Notes (#10760)
amaury1093 Jan 12, 2022
846537e
feat: support custom mnemonics in in-process testing network (backpor…
mergify[bot] Jan 13, 2022
85d2bda
chore: move server.GenerateCoinKey and server.GenerateSaveCoinKey to …
robert-zaremba Jan 18, 2022
afb7d9e
fix test
dudong2 Mar 22, 2022
78af1fb
chore: release v0.45 changelog (#10964)
robert-zaremba Jan 18, 2022
0a8a2ce
docs: guidelines for ValidateBasic (#10983) (#11001)
mergify[bot] Jan 23, 2022
21768be
fix: return 404 on non-existing tx (backport #10992) (#11014)
mergify[bot] Jan 25, 2022
ac4bf62
chore: update 0.45 migration and support notes (backport #10973) (#10…
mergify[bot] Jan 26, 2022
af98591
feat!: add protection against accidental downgrades (backport #10407)…
mergify[bot] Jan 27, 2022
8327d2c
fix: add iavl-cache-size config parsing to GetConfig (backport #10990…
mergify[bot] Jan 29, 2022
ee20b44
feat: extra logging in in-place store migrations (backport #10768) (#…
mergify[bot] Feb 3, 2022
2a1c9a1
chore: 0.45.1 Release Notes (#11109)
robert-zaremba Feb 3, 2022
89fcc77
fix lint
dudong2 Mar 22, 2022
681790c
revert TestConfigCmdEnvFlag to original code
dudong2 Mar 22, 2022
3466745
Merge pull request #468 from dudong2/dudong2/feat/dump-up-cosmos-sdk@…
dudong2 Mar 23, 2022
1db9896
fix test
dudong2 Mar 23, 2022
b877792
restore (*SigVerificationDecorator)AnteHandle to use verifySignatureW…
dudong2 Mar 23, 2022
0d7c02b
fix lint & revert cosmos-sdk pr #10024(because we are using sync.Map)
dudong2 Mar 23, 2022
a379fd8
remove sdk "github.com/line/lbm-sdk/types" alias
dudong2 Mar 30, 2022
6f61781
Merge pull request #475 from dudong2/dudong2/feat/bump-up-cosmos-sdk@…
dudong2 Apr 1, 2022
740aa16
Merge branch 'main' into feat/versionup_to_0_45_x
dudong2 Apr 1, 2022
c147740
fix test
dudong2 Apr 1, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
89 changes: 89 additions & 0 deletions CODING_GUIDELINES.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
# Coding Guidelines

This document is an extension to [CONTRIBUTING](./CONTRIBUTING.md) and provides more details about the coding guidelines and requirements.

## API & Design

+ Code must be well structured:
+ packages must have a limited responsibility (different concerns can go to different packages),
+ types must be easy to compose,
+ think about maintainbility and testability.
+ "Depend upon abstractions, [not] concretions".
+ Try to limit the number of methods you are exposing. It's easier to expose something later than to hide it.
+ Take advantage of `internal` package concept.
+ Follow agreed-upon design patterns and naming conventions.
+ publicly-exposed functions are named logically, have forward-thinking arguments and return types.
+ Avoid global variables and global configurators.
+ Favor composable and extensible designs.
+ Minimize code duplication.
+ Limit third-party dependencies.

Performance:

+ Avoid unnecessary operations or memory allocations.

Security:

+ Pay proper attention to exploits involving:
+ gas usage
+ transaction verification and signatures
+ malleability
+ code must be always deterministic
+ Thread safety. If some functionality is not thread-safe, or uses something that is not thread-safe, then clearly indicate the risk on each level.

## Testing

Make sure your code is well tested:

+ Provide unit tests for every unit of your code if possible. Unit tests are expected to comprise 70%-80% of your tests.
+ Describe the test scenarios you are implementing for integration tests.
+ Create integration tests for queries and msgs.
+ Use both test cases and property / fuzzy testing. We use the [rapid](pgregory.net/rapid) Go library for property-based and fuzzy testing.
+ Do not decrease code test coverage. Explain in a PR if test coverage is decreased.

We expect tests to use `require` or `assert` rather than `t.Skip` or `t.Fail`,
unless there is a reason to do otherwise.
When testing a function under a variety of different inputs, we prefer to use
[table driven tests](https://github.com/golang/go/wiki/TableDrivenTests).
Table driven test error messages should follow the following format
`<desc>, tc #<index>, i #<index>`.
`<desc>` is an optional short description of whats failing, `tc` is the
index within the test case table that is failing, and `i` is when there
is a loop, exactly which iteration of the loop failed.
The idea is you should be able to see the
error message and figure out exactly what failed.
Here is an example check:

```go
<some table>
for tcIndex, tc := range cases {
<some code>
resp, err := doSomething()
require.NoError(err)
require.Equal(t, tc.expected, resp, "should correctly perform X")
```

## Quality Assurance

We are forming a QA team that will support the core Cosmos SDK team and collaborators by:

- Improving the Cosmos SDK QA Processes
- Improving automation in QA and testing
- Defining high-quality metrics
- Maintaining and improving testing frameworks (unit tests, integration tests, and functional tests)
- Defining test scenarios.
- Verifying user experience and defining a high quality.
- We want to have **acceptance tests**! Document and list acceptance lists that are implemented and identify acceptance tests that are still missing.
- Acceptance tests should be specified in `acceptance-tests` directory as Markdown files.
- Supporting other teams with testing frameworks, automation, and User Experience testing.
- Testing chain upgrades for every new breaking change.
- Defining automated tests that assure data integrity after an update.

Desired outcomes:

- QA team works with Development Team.
- QA is happening in parallel with Core Cosmos SDK development.
- Releases are more predictable.
- QA reports. Goal is to guide with new tasks and be one of the QA measures.

As a developer, you must help the QA team by providing instructions for User Experience (UX) and functional testing.
9 changes: 2 additions & 7 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -517,13 +517,8 @@ proto-update-deps:
# Run a 4-node testnet locally
localnet-start: build-linux localnet-stop
$(if $(shell $(DOCKER) inspect -f '{{ .Id }}' cosmossdk/simd-env 2>/dev/null),$(info found image cosmossdk/simd-env),$(MAKE) -C contrib/images simd-env)
if ! [ -f build/node0/simd/config/genesis.json ]; then $(DOCKER) run --rm \
--user $(shell id -u):$(shell id -g) \
-v $(BUILDDIR):/simd:Z \
-v /etc/group:/etc/group:ro \
-v /etc/passwd:/etc/passwd:ro \
-v /etc/shadow:/etc/shadow:ro \
cosmossdk/simd-env testnet --v 4 -o . --starting-ip-address 192.168.10.2 --keyring-backend=test ; fi
$(DOCKER) run --rm -v $(CURDIR)/localnet:/data cosmossdk/simd-env \
testnet init-files --v 4 -o /data --starting-ip-address 192.168.10.2 --keyring-backend=test
docker-compose up -d

localnet-stop:
Expand Down
203 changes: 203 additions & 0 deletions RELEASE_PROCESS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,203 @@
# Release Process

This document outlines the process for releasing a new version of Cosmos SDK, which involves major release and patch releases as well as maintenance for the major release.

## Major Release Procedure

A _major release_ is an increment of the first number (eg: `v1.2` → `v2.0.0`) or the _point number_ (eg: `v1.1 → v1.2.0`, also called _point release_). Each major release opens a _stable release series_ and receives updates outlined in the [Major Release Maintenance](#major-release-maintenance)_section.

Before making a new _major_ release we do beta and release candidate releases. For example, for release 1.0.0:

```
v1.0.0-beta1 → v1.0.0-beta2 → ... → v1.0.0-rc1 → v1.0.0-rc2 → ... → v1.0.0
```

- Release a first beta version on the `master` branch and freeze `master` from receiving any new features. After beta is released, we focus on releasing the release candidate:
- finish audits and reviews
- kick off a large round of simulation testing (e.g. 400 seeds for 2k blocks)
- perform functional tests
- add more tests
- release new beta version as the bugs are discovered and fixed.
- After the team feels that the `master` works fine we create a `release/vY` branch (going forward known a release branch), where `Y` is the version number, with the patch part substituted to `x` (eg: 0.42.x, 1.0.x). Ensure the release branch is protected so that pushes against the release branch are permitted only by the release manager or release coordinator.
- **PRs targeting this branch can be merged _only_ when exceptional circumstances arise**
- update the GitHub mergify integration by adding instructions for automatically backporting commits from `master` to the `release/vY` using the `backport/Y` label.
- In the release branch, prepare a new version section in the `CHANGELOG.md`
- All links must be link-ified: `$ python ./scripts/linkify_changelog.py CHANGELOG.md`
- Copy the entries into a `RELEASE_CHANGELOG.md`, this is needed so the bot knows which entries to add to the release page on GitHub.
- Create a new annotated git tag for a release candidate (eg: `git tag -a v1.1.0-rc1`) in the release branch.
- from this point we unfreeze master.
- the SDK teams collaborate and do their best to run testnets in order to validate the release.
- when bugs are found, create a PR for `master`, and backport fixes to the release branch.
- create new release candidate tags after bugs are fixed.
- After the team feels the release branch is stable and everything works, create a full release:
- update `CHANGELOG.md`.
- create a new annotated git tag (eg `git -a v1.1.0`) in the release branch.
- Create a GitHub release.

Following _semver_ philosophy, point releases after `v1.0`:

- must not break API
- can break consensus

Before `v1.0`, point release can break both point API and consensus.

## Patch Release Procedure

A _patch release_ is an increment of the patch number (eg: `v1.2.0` → `v1.2.1`).

**Patch release must not break API nor consensus.**

Updates to the release branch should come from `master` by backporting PRs (usually done by automatic cherry pick followed by a PRs to the release branch). The backports must be marked using `backport/Y` label in PR for master.
It is the PR author's responsibility to fix merge conflicts, update changelog entries, and
ensure CI passes. If a PR originates from an external contributor, a core team member assumes
responsibility to perform this process instead of the original author.
Lastly, it is core team's responsibility to ensure that the PR meets all the SRU criteria.

Point Release must follow the [Stable Release Policy](#stable-release-policy).

After the release branch has all commits required for the next patch release:

- update `CHANGELOG.md`.
- create a new annotated git tag (eg `git -a v1.1.0`) in the release branch.
- Create a GitHub release.

## Major Release Maintenance

Major Release series continue to receive bug fixes (released as a Patch Release) until they reach **End Of Life**.
Major Release series is maintained in compliance with the **Stable Release Policy** as described in this document.
Note: not every Major Release is denoted as stable releases.

Only the following major release series have a stable release status:

* **0.42 «Stargate»** is supported until 2022-02-09. A fairly strict **bugfix-only** rule applies to pull requests that are requested to be included into a stable point-release.
* **0.44** is supported until 2022-07-17. A fairly strict **bugfix-only** rule applies to pull requests that are requested to be included into a stable point-release.
* **0.45** is the latest major release and will be supported until 6 months after **0.46.0** release.

## Stable Release Policy

### Patch Releases

Once a Cosmos-SDK release has been completed and published, updates for it are released under certain circumstances
and must follow the [Patch Release Procedure](CONTRIBUTING.md#patch-release-procedure)[Point Release Procedure].

### Rationale

Unlike in-development `master` branch snapshots, **Cosmos-SDK** releases are subject to much wider adoption,
and by a significantly different demographic of users. During development, changes in the `master` branch
affect SDK users, application developers, early adopters, and other advanced users that elect to use
unstable experimental software at their own risk.

Conversely, users of a stable release expect a high degree of stability. They build their applications on it, and the
problems they experience with it could be potentially highly disruptive to their projects.

Stable release updates are recommended to the vast majority of developers, and so it is crucial to treat them
with great caution. Hence, when updates are proposed, they must be accompanied by a strong rationale and present
a low risk of regressions, i.e. even one-line changes could cause unexpected regressions due to side effects or
poorly tested code. We never assume that any change, no matter how little or non-intrusive, is completely exempt
of regression risks.

Therefore, the requirements for stable changes are different than those that are candidates to be merged in
the `master` branch. When preparing future major releases, our aim is to design the most elegant, user-friendly and
maintainable SDK possible which often entails fundamental changes to the SDK's architecture design, rearranging and/or
renaming packages as well as reducing code duplication so that we maintain common functions and data structures in one
place rather than leaving them scattered all over the code base. However, once a release is published, the
priority is to minimise the risk caused by changes that are not strictly required to fix qualifying bugs; this tends to
be correlated with minimising the size of such changes. As such, the same bug may need to be fixed in different
ways in stable releases and `master` branch.

### Migrations

To smoothen the update to the latest stable release, the SDK includes a set of CLI commands for managing migrations between SDK versions, under the `migrate` subcommand. Only migration scripts between stable releases are included. For the current major release, and later, migrations are supported.

### What qualifies as a Stable Release Update (SRU)?

* **High-impact bugs**
* Bugs that may directly cause a security vulnerability.
* *Severe regressions* from a Cosmos-SDK's previous release. This includes all sort of issues
that may cause the core packages or the `x/` modules unusable.
* Bugs that may cause **loss of user's data**.
* Other safe cases:
* Bugs which don't fit in the aforementioned categories for which an obvious safe patch is known.
* Relatively small yet strictly non-breaking features with strong support from the community.
* Relatively small yet strictly non-breaking changes that introduce forward-compatible client
features to smoothen the migration to successive releases.
* Relatively small yet strictly non-breaking CLI improvements.

### What does not qualify as SRU?

* State machine changes.
* Breaking changes in Protobuf definitions, as specified in [ADR-044](./docs/architecture/adr-044-protobuf-updates-guidelines.md).
* Changes that introduces API breakages (e.g. public functions and interfaces removal/renaming).
* Client-breaking changes in gRPC and HTTP request and response types.
* CLI-breaking changes.
* Cosmetic fixes, such as formatting or linter warning fixes.

### What pull requests will be included in stable point-releases?

Pull requests that fix bugs and add features that fall in the following categories do not require a **Stable Release Exception** to be granted to be included in a stable point-release:

* **Severe regressions**.
* Bugs that may cause **client applications** to be **largely unusable**.
* Bugs that may cause **state corruption or data loss**.
* Bugs that may directly or indirectly cause a **security vulnerability**.
* Non-breaking features that are strongly requested by the community.
* Non-breaking CLI improvements that are strongly requested by the community.

### What pull requests will NOT be automatically included in stable point-releases?

As rule of thumb, the following changes will **NOT** be automatically accepted into stable point-releases:

* **State machine changes**.
* **Protobug-breaking changes**, as specified in [ADR-044](./docs/architecture/adr-044-protobuf-updates- guidelines.md).
* **Client-breaking changes**, i.e. changes that prevent gRPC, HTTP and RPC clients to continue interacting with the node without any change.
* **API-breaking changes**, i.e. changes that prevent client applications to *build without modifications* to the client application's source code.
* **CLI-breaking changes**, i.e. changes that require usage changes for CLI users.

In some circumstances, PRs that don't meet the aforementioned criteria might be raised and asked to be granted a *Stable Release Exception*.

### Stable Release Exception - Procedure

1. Check that the bug is either fixed or not reproducible in `master`. It is, in general, not appropriate to release bug fixes for stable releases without first testing them in `master`. Please apply the label [v0.43](https://github.com/cosmos/cosmos-sdk/milestone/26) to the issue.
2. Add a comment to the issue and ensure it contains the following information (see the bug template below):

* **[Impact]** An explanation of the bug on users and justification for backporting the fix to the stable release.
* A **[Test Case]** section containing detailed instructions on how to reproduce the bug.
* A **[Regression Potential]** section with a clear assessment on how regressions are most likely to manifest as a result of the pull request that aims to fix the bug in the target stable release.

3. **Stable Release Managers** will review and discuss the PR. Once *consensus* surrounding the rationale has been reached and the technical review has successfully concluded, the pull request will be merged in the respective point-release target branch (e.g. `release/v0.43.x`) and the PR included in the point-release's respective milestone (e.g. `v0.43.5`).

#### Stable Release Exception - Bug template

```
#### Impact

Brief xplanation of the effects of the bug on users and a justification for backporting the fix to the stable release.

#### Test Case

Detailed instructions on how to reproduce the bug on Stargate's most recently published point-release.

#### Regression Potential

Explanation on how regressions might manifest - even if it's unlikely.
It is assumed that stable release fixes are well-tested and they come with a low risk of regressions.
It's crucial to make the effort of thinking about what could happen in case a regression emerges.
```

### Stable Release Managers

The **Stable Release Managers** evaluate and approve or reject updates and backports to Cosmos-SDK Stable Release series,
according to the [stable release policy](#stable-release-policy) and [release procedure](#stable-release-exception-procedure).
Decisions are made by consensus.

Their responsibilites include:

* Driving the Stable Release Exception process.
* Approving/rejecting proposed changes to a stable release series.
* Executing the release process of stable point-releases in compliance with the [Point Release Procedure](CONTRIBUTING.md).

The Stable Release Managers are appointed by the Interchain Foundation. Currently residing Stable Release Managers:

* @clevinson - Cory Levinson
* @amaurym - Amaury Martiny
* @robert-zaremba - Robert Zaremba
Loading