Skip to content

Commit bb324ff

Browse files
committed
Merge branch 'cosmos-main'
2 parents 0d80a5c + e5d043f commit bb324ff

File tree

629 files changed

+90417
-14334
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

629 files changed

+90417
-14334
lines changed

.github/workflows/sims-053.yml

Lines changed: 121 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,121 @@
1+
name: Sims release/0.53.x
2+
# Sims workflow runs multiple types of simulations (nondeterminism, import-export, after-import, multi-seed-short)
3+
# This workflow will run on all Pull Requests, if a .go, .mod or .sum file have been changed
4+
5+
on:
6+
schedule:
7+
- cron: "0 0,12 * * *"
8+
release:
9+
types: [published]
10+
11+
concurrency:
12+
group: ci-${{ github.ref }}-sims-050
13+
cancel-in-progress: true
14+
15+
jobs:
16+
build:
17+
runs-on: depot-ubuntu-22.04-4
18+
if: "!contains(github.event.head_commit.message, 'skip-sims')"
19+
steps:
20+
- uses: actions/checkout@v4
21+
with:
22+
ref: "release/v0.53.x"
23+
- uses: actions/setup-go@v5
24+
with:
25+
go-version: "1.23"
26+
check-latest: true
27+
- run: make build
28+
29+
install-runsim:
30+
permissions:
31+
contents: none
32+
runs-on: depot-ubuntu-22.04-4
33+
needs: build
34+
steps:
35+
- uses: actions/setup-go@v5
36+
with:
37+
go-version: "1.23"
38+
check-latest: true
39+
- name: Install runsim
40+
run: go install github.com/cosmos/tools/cmd/[email protected]
41+
- uses: actions/cache@v4
42+
with:
43+
path: ~/go/bin
44+
key: ${{ runner.os }}-go-runsim-binary
45+
46+
test-sim-import-export:
47+
runs-on: depot-ubuntu-22.04-4
48+
needs: [build, install-runsim]
49+
timeout-minutes: 60
50+
steps:
51+
- uses: actions/checkout@v4
52+
with:
53+
ref: "release/v0.53.x"
54+
- uses: actions/setup-go@v5
55+
with:
56+
go-version: "1.23"
57+
check-latest: true
58+
- uses: actions/cache@v4
59+
with:
60+
path: ~/go/bin
61+
key: ${{ runner.os }}-go-runsim-binary
62+
- name: test-sim-import-export
63+
run: |
64+
make test-sim-import-export
65+
66+
test-sim-after-import:
67+
runs-on: depot-ubuntu-22.04-4
68+
needs: [build, install-runsim]
69+
steps:
70+
- uses: actions/checkout@v4
71+
with:
72+
ref: "release/v0.53.x"
73+
- uses: actions/setup-go@v5
74+
with:
75+
go-version: "1.23"
76+
check-latest: true
77+
- uses: actions/cache@v4
78+
with:
79+
path: ~/go/bin
80+
key: ${{ runner.os }}-go-runsim-binary
81+
- name: test-sim-after-import
82+
run: |
83+
make test-sim-after-import
84+
85+
test-sim-multi-seed-short:
86+
runs-on: depot-ubuntu-22.04-4
87+
needs: [build, install-runsim]
88+
steps:
89+
- uses: actions/checkout@v4
90+
with:
91+
ref: "release/v0.53.x"
92+
- uses: actions/setup-go@v5
93+
with:
94+
go-version: "1.23"
95+
check-latest: true
96+
- uses: actions/cache@v4
97+
with:
98+
path: ~/go/bin
99+
key: ${{ runner.os }}-go-runsim-binary
100+
- name: test-sim-multi-seed-short
101+
run: |
102+
make test-sim-multi-seed-short
103+
104+
sims-notify-failure:
105+
permissions:
106+
contents: none
107+
needs:
108+
[test-sim-multi-seed-short, test-sim-after-import, test-sim-import-export]
109+
runs-on: depot-ubuntu-22.04-4
110+
if: ${{ failure() }}
111+
steps:
112+
- name: Notify Slack on failure
113+
uses: rtCamp/[email protected]
114+
env:
115+
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
116+
SLACK_CHANNEL: sdk-sims
117+
SLACK_USERNAME: Sim Tests release/0.50.x
118+
SLACK_ICON_EMOJI: ":skull:"
119+
SLACK_COLOR: danger
120+
SLACK_MESSAGE: 0.50.x Sims are failing
121+
SLACK_FOOTER: ""

.golangci.yml

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,9 @@ linters:
5151
rules:
5252
- name: redefines-builtin-id
5353
disabled: true
54+
- name: exported
55+
severity: error
56+
disabled: false
5457
staticcheck:
5558
checks:
5659
- all
@@ -59,11 +62,16 @@ linters:
5962
exclusions:
6063
generated: lax
6164
presets:
62-
- comments
6365
- common-false-positives
6466
- legacy
6567
- std-error-handling
6668
rules:
69+
- linters:
70+
- staticcheck
71+
text: 'ST1000:'
72+
- linters:
73+
- revive
74+
text: 'or be unexported' # don't report types that have no comments at all. there are way too many of these.
6775
- linters:
6876
- staticcheck
6977
text: 'ST1003:'
@@ -127,6 +135,7 @@ formatters:
127135
gofumpt:
128136
extra-rules: true
129137
exclusions:
138+
130139
generated: lax
131140
paths:
132141
- server/grpc/gogoreflection/fix_registration.go

CHANGELOG.md

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -38,20 +38,26 @@ Ref: https://keepachangelog.com/en/1.0.0/
3838

3939
## [Unreleased]
4040

41+
### Features
42+
* (server) [#24720](https://github.com/cosmos/cosmos-sdk/pull/24720) add `verbose_log_level` flag for configuring the log level when switching to verbose logging mode during sensitive operations (such as chain upgrades).
43+
44+
### Improvements
45+
46+
* (baseapp) [#24655](https://github.com/cosmos/cosmos-sdk/pull/24655) Add mutex locks for `state` and make `lastCommitInfo` atomic to prevent race conditions between `Commit` and `CreateQueryContext`.
47+
* (proto) [#24161](https://github.com/cosmos/cosmos-sdk/pull/24161) Remove unnecessary annotations from `x/staking` authz proto.
48+
4149
### Bug Fixes
4250

51+
* (client, client/rpc, x/auth/tx) [#24551](https://github.com/cosmos/cosmos-sdk/pull/24551) Handle cancellation properly when supplying context to client methods.
4352
* (x/authz) [#24638](https://github.com/cosmos/cosmos-sdk/pull/24638) Fixed a minor bug where the grant key was cast as a string and dumped directly into the error message leading to an error string possibly containing invalid UTF-8.
53+
* (client, client/rpc, x/auth/tx) [#24551](https://github.com/cosmos/cosmos-sdk/pull/24551) Handle cancellation properly when supplying context to client methods.
4454

4555
### Deprecated
4656

4757
* (x/nft) [#24575](https://github.com/cosmos/cosmos-sdk/pull/24575) Deprecate the `x/nft` module in the Cosmos SDK repository. This module will not be maintained to the extent that our core modules will and will be kept in a [legacy repo](https://github.com/cosmos/cosmos-legacy).
4858
* (x/group) [#24571](https://github.com/cosmos/cosmos-sdk/pull/24571) Deprecate the `x/group` module in the Cosmos SDK repository. This module will not be maintained to the extent that our core modules will and will be kept in a [legacy repo](https://github.com/cosmos/cosmos-legacy).
4959
* (types) [#24664](https://github.com/cosmos/cosmos-sdk/pull/24664) Deprecate the `Invariant` type in the Cosmos SDK.
5060

51-
### Bug Fixes
52-
53-
* (client, client/rpc, x/auth/tx) [#24551](https://github.com/cosmos/cosmos-sdk/pull/24551) Handle cancellation properly when supplying context to client methods.
54-
5561
## [v0.53.0](https://github.com/cosmos/cosmos-sdk/releases/tag/v0.53.0) - 2025-04-29
5662

5763
### Features
@@ -101,8 +107,13 @@ Ref: https://keepachangelog.com/en/1.0.0/
101107
* (x/bank) [#24053](https://github.com/cosmos/cosmos-sdk/pull/24053) Resolve a foot-gun by swapping send restrictions check in `InputOutputCoins` before coin deduction.
102108
* (codec/types) [#24336](https://github.com/cosmos/cosmos-sdk/pull/24336) Most types definitions were moved to `github.com/cosmos/gogoproto/types/any` with aliases to these left in `codec/types` so that there should be no breakage to existing code. This allows protobuf generated code to optionally reference the SDK's custom `Any` type without a direct dependency on the SDK. This can be done by changing the `protoc` `M` parameter for `any.proto` to `Mgoogle/protobuf/any.proto=github.com/cosmos/gogoproto/types/any`.
103109

110+
### API Breaking Changes
111+
112+
* (crypto) [#24414](https://github.com/cosmos/cosmos-sdk/pull/24414) Remove sr25519 support, since it was removed in CometBFT v1.x (see: CometBFT [#3646](https://github.com/cometbft/cometbft/pull/3646)).
113+
104114
### Bug Fixes
105115

116+
* (server)[#24583](https://github.com/cosmos/cosmos-sdk/pull/24583) Fix height calculation in pruning manager and better restart handling.
106117
* (x/gov)[#24460](https://github.com/cosmos/cosmos-sdk/pull/24460) Do not call Remove during Walk in defaultCalculateVoteResultsAndVotingPower.
107118
* (baseapp) [24261](https://github.com/cosmos/cosmos-sdk/pull/24261) Fix post handler error always results in code 1
108119
* (server) [#24068](https://github.com/cosmos/cosmos-sdk/pull/24068) Allow align block header with skip check header in grpc server.

Makefile

Lines changed: 36 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -382,7 +382,7 @@ benchmark:
382382
### Linting ###
383383
###############################################################################
384384

385-
golangci_version=v2.1.5
385+
golangci_version=v2.1.6
386386

387387
lint-install:
388388
@echo "--> Installing golangci-lint $(golangci_version)"
@@ -405,15 +405,17 @@ lint-fix:
405405
### Protobuf ###
406406
###############################################################################
407407

408-
protoVer=0.16.0
408+
protoVer=0.17.0
409409
protoImageName=ghcr.io/cosmos/proto-builder:$(protoVer)
410410
protoImage=$(DOCKER) run --rm -v $(CURDIR):/workspace --workdir /workspace $(protoImageName)
411411

412412
proto-all: proto-format proto-lint proto-gen
413413

414414
proto-gen:
415415
@echo "Generating Protobuf files"
416-
@$(protoImage) sh ./scripts/protocgen.sh
416+
@$(protoImage) sh ./scripts/protocgen.sh 2>&1 | tee protocgen.log | \
417+
awk '{print $$0} /contains the reserved field name/ && /tendermint/ {next} 1'
418+
417419

418420
proto-swagger-gen:
419421
@echo "Generating Protobuf Swagger"
@@ -428,44 +430,52 @@ proto-lint:
428430
proto-check-breaking:
429431
@$(protoImage) buf breaking --against $(HTTPS_GIT)#branch=main
430432

431-
CMT_URL = https://raw.githubusercontent.com/cometbft/cometbft/v0.38.0/proto/tendermint
432-
433-
CMT_CRYPTO_TYPES = proto/tendermint/crypto
434-
CMT_ABCI_TYPES = proto/tendermint/abci
435-
CMT_TYPES = proto/tendermint/types
436-
CMT_VERSION = proto/tendermint/version
437-
CMT_LIBS = proto/tendermint/libs/bits
438-
CMT_P2P = proto/tendermint/p2p
433+
CMT_VERSION_DIR = v1.0.1
434+
CMT_PROTO = v1
435+
CMT_URL = https://raw.githubusercontent.com/cometbft/cometbft/$(CMT_VERSION_DIR)/proto/cometbft
436+
CMT_CRYPTO_TYPES = proto/cometbft/crypto/$(CMT_PROTO)
437+
CMT_ABCI_TYPES = proto/cometbft/abci/$(CMT_PROTO)
438+
CMT_TYPES = proto/cometbft/types/$(CMT_PROTO)
439+
CMT_VERSION = proto/cometbft/version/$(CMT_PROTO)
440+
CMT_LIBS = proto/cometbft/libs/bits/$(CMT_PROTO)
441+
CMT_P2P = proto/cometbft/p2p/$(CMT_PROTO)
439442

440-
proto-update-deps:
441-
@echo "Updating Protobuf dependencies"
443+
proto-update-comet:
444+
@echo "Updating Protobuf dependency: downloading cometbft.$(CMT_PROTO) files from CometBFT $(CMT_VERSION_DIR)"
442445

443446
@mkdir -p $(CMT_ABCI_TYPES)
444-
@curl -sSL $(CMT_URL)/abci/types.proto > $(CMT_ABCI_TYPES)/types.proto
447+
@curl -fsSL $(CMT_URL)/abci/$(CMT_PROTO)/service.proto > $(CMT_ABCI_TYPES)/service.proto
448+
@curl -fsSL $(CMT_URL)/abci/$(CMT_PROTO)/types.proto > $(CMT_ABCI_TYPES)/types.proto
445449

446450
@mkdir -p $(CMT_VERSION)
447-
@curl -sSL $(CMT_URL)/version/types.proto > $(CMT_VERSION)/types.proto
451+
@curl -fsSL $(CMT_URL)/version/$(CMT_PROTO)/types.proto > $(CMT_VERSION)/types.proto
448452

449453
@mkdir -p $(CMT_TYPES)
450-
@curl -sSL $(CMT_URL)/types/types.proto > $(CMT_TYPES)/types.proto
451-
@curl -sSL $(CMT_URL)/types/evidence.proto > $(CMT_TYPES)/evidence.proto
452-
@curl -sSL $(CMT_URL)/types/params.proto > $(CMT_TYPES)/params.proto
453-
@curl -sSL $(CMT_URL)/types/validator.proto > $(CMT_TYPES)/validator.proto
454-
@curl -sSL $(CMT_URL)/types/block.proto > $(CMT_TYPES)/block.proto
454+
@curl -fsSL $(CMT_URL)/types/$(CMT_PROTO)/block.proto > $(CMT_TYPES)/block.proto
455+
@curl -fsSL $(CMT_URL)/types/$(CMT_PROTO)/canonical.proto > $(CMT_TYPES)/canonical.proto
456+
@curl -fsSL $(CMT_URL)/types/$(CMT_PROTO)/events.proto > $(CMT_TYPES)/events.proto
457+
@curl -fsSL $(CMT_URL)/types/$(CMT_PROTO)/evidence.proto > $(CMT_TYPES)/evidence.proto
458+
@curl -fsSL $(CMT_URL)/types/$(CMT_PROTO)/params.proto > $(CMT_TYPES)/params.proto
459+
@curl -fsSL $(CMT_URL)/types/$(CMT_PROTO)/types.proto > $(CMT_TYPES)/types.proto
460+
@curl -fsSL $(CMT_URL)/types/$(CMT_PROTO)/validator.proto > $(CMT_TYPES)/validator.proto
455461

456462
@mkdir -p $(CMT_CRYPTO_TYPES)
457-
@curl -sSL $(CMT_URL)/crypto/proof.proto > $(CMT_CRYPTO_TYPES)/proof.proto
458-
@curl -sSL $(CMT_URL)/crypto/keys.proto > $(CMT_CRYPTO_TYPES)/keys.proto
463+
@curl -fsSL $(CMT_URL)/crypto/$(CMT_PROTO)/keys.proto > $(CMT_CRYPTO_TYPES)/keys.proto
464+
@curl -fsSL $(CMT_URL)/crypto/$(CMT_PROTO)/proof.proto > $(CMT_CRYPTO_TYPES)/proof.proto
459465

460466
@mkdir -p $(CMT_LIBS)
461-
@curl -sSL $(CMT_URL)/libs/bits/types.proto > $(CMT_LIBS)/types.proto
467+
@curl -fsSL $(CMT_URL)/libs/bits/$(CMT_PROTO)/types.proto > $(CMT_LIBS)/types.proto
462468

463469
@mkdir -p $(CMT_P2P)
464-
@curl -sSL $(CMT_URL)/p2p/types.proto > $(CMT_P2P)/types.proto
470+
@curl -fsSL $(CMT_URL)/p2p/$(CMT_PROTO)/conn.proto > $(CMT_P2P)/conn.proto
471+
@curl -fsSL $(CMT_URL)/p2p/$(CMT_PROTO)/pex.proto > $(CMT_P2P)/pex.proto
472+
@curl -fsSL $(CMT_URL)/p2p/$(CMT_PROTO)/types.proto > $(CMT_P2P)/types.proto
465473

466-
$(DOCKER) run --rm -v $(CURDIR)/proto:/workspace --workdir /workspace $(protoImageName) buf mod update
474+
proto-update-deps:
475+
@echo "Updating Protobuf dependencies: running 'buf dep update'"
476+
$(DOCKER) run --rm -v $(CURDIR)/proto:/workspace --workdir /workspace $(protoImageName) buf dep update
467477

468-
.PHONY: proto-all proto-gen proto-swagger-gen proto-format proto-lint proto-check-breaking proto-update-deps
478+
.PHONY: proto-all proto-gen proto-swagger-gen proto-format proto-lint proto-check-breaking proto-update-deps proto-update-comet
469479

470480
###############################################################################
471481
### Localnet ###

0 commit comments

Comments
 (0)