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

Upgrade cometbft to v0.38.10 #7

Open
wants to merge 130 commits into
base: v0.38.5-patched
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
130 commits
Select commit Hold shift + click to select a range
04636a8
perf(internal/blocksync): avoid double-calling `types.BlockFromProto`…
mergify[bot] Jan 26, 2024
3fa1d5c
build(deps): Bump styfle/cancel-workflow-action from 0.12.0 to 0.12.1…
dependabot[bot] Jan 29, 2024
21c07a4
build(deps): Bump bufbuild/buf-setup-action from 1.28.1 to 1.29.0 (#2…
dependabot[bot] Jan 29, 2024
8c4092b
build(deps): Bump slackapi/slack-github-action from 1.24.0 to 1.25.0 …
dependabot[bot] Jan 29, 2024
6b9defb
fix(privval): retry accepting a connection on errors (backport #2047)…
mergify[bot] Jan 30, 2024
1f48ff9
feat(consensus): additional sanity checks for the size of proposed bl…
mergify[bot] Jan 31, 2024
a0fbb9c
build(deps): Bump github.com/cloudflare/circl from 1.3.3 to 1.3.7 (ba…
mergify[bot] Feb 6, 2024
c2d6cb4
refactor(examples): small changes to kvstore app (backport #2267) (#2…
mergify[bot] Feb 8, 2024
aec5e39
build(deps): Bump golangci/golangci-lint-action from 3 to 4 (#2302)
dependabot[bot] Feb 12, 2024
8d52002
chore(docs): alter the section about the effects of `timeout_commit` …
mergify[bot] Feb 12, 2024
ff7cc79
docs: images not rendering properly in docs (backport #2331) (#2338)
mergify[bot] Feb 14, 2024
0a2b829
docs: Fix references about DeliverTx (backport #2330) (#2342)
mergify[bot] Feb 14, 2024
347b1b4
disable revive (#2349)
melekes Feb 15, 2024
8d2d76d
e2e: Add `load_max_txs` option to manifest (backport #2094) (#2334)
mergify[bot] Feb 15, 2024
70db8c0
mempool: export errors (backport #1427) (#2277)
mergify[bot] Feb 15, 2024
cb99e53
feat(e2e): Option to set max block size in bytes at genesis (backport…
mergify[bot] Feb 19, 2024
47583fb
fix(docker-compose): fix subnet (backport #2383) (#2391)
mergify[bot] Feb 20, 2024
27c8055
docs(tutorials/install): add `From Go package` (backport #2414) (#2437)
mergify[bot] Feb 26, 2024
8cd4a69
refactor(consensus): print err from SignAndCheckVote (backport #2346)…
mergify[bot] Feb 26, 2024
851fd2b
fix(jsonrpc): enable HTTP basic auth in WS client (backport #2434) (#…
mergify[bot] Feb 27, 2024
16f92f2
fix: `Rollback`: wrong modification of `state.LastHeightValidatorsCha…
mergify[bot] Feb 27, 2024
91413e6
docs(changelog): add missing entry for #2136 (backport #2459) (#2464)
mergify[bot] Feb 28, 2024
99c1816
ci: check metrics generation in CI checks (backport #2483) (#2485)
mergify[bot] Feb 29, 2024
6ddf85b
build(deps): Bump docker/setup-buildx-action from 3.0.0 to 3.1.0 (#2509)
dependabot[bot] Mar 4, 2024
f356b79
spec(abci): fixes the spec to inform about the presence of invalid ex…
mergify[bot] Mar 5, 2024
2a10503
build(deps): Bump bufbuild/buf-setup-action from 1.29.0 to 1.30.0 (#2…
dependabot[bot] Mar 11, 2024
d27a96e
build(deps): Bump docker/build-push-action from 5.1.0 to 5.2.0 (#2567)
dependabot[bot] Mar 11, 2024
6d606ce
feat(blocksync): set the max number of (concurrently) downloaded bloc…
melekes Mar 11, 2024
6cf6978
feat(blocksync): sort peers by download rate & multiple requests for …
mergify[bot] Mar 12, 2024
9db2930
fix(blocksync): use timer instead of time.After (backport #2584) (#2587)
mergify[bot] Mar 12, 2024
1519562
Release v0.38.6 (#2592)
melekes Mar 13, 2024
51ee8c0
docs: format error in ABCI++ specs under commit and listsnapshots sec…
mergify[bot] Mar 13, 2024
14d32d0
build(deps): Bump docker/login-action from 3.0.0 to 3.1.0 (#2628)
dependabot[bot] Mar 18, 2024
3e8cdb2
build(deps): Bump docker/setup-buildx-action from 3.1.0 to 3.2.0 (#2629)
dependabot[bot] Mar 18, 2024
56b005b
build(deps): Bump docker/build-push-action from 5.2.0 to 5.3.0 (#2630)
dependabot[bot] Mar 18, 2024
9606d28
spec: added missing hyperlink and some clean-up on ABCI spec (#2680)
andynog Mar 27, 2024
fd5b3f3
spec: Add additional information about validator ordering (total powe…
mergify[bot] Apr 5, 2024
68a5627
build(deps): Bump bufbuild/buf-setup-action from 1.30.0 to 1.30.1 (#2…
dependabot[bot] Apr 9, 2024
66494ac
update golang.org/x/net from v0.20.0 to v0.23.0 (#2781)
melekes Apr 11, 2024
575b889
fix(bits): prevent BitArray.UnmarshalJSON from crashing on 0 bits in …
mergify[bot] Apr 11, 2024
e5cf488
refactor(rpc): miss stop PingPongLatencyTimer (backport #2792) (#2795)
mergify[bot] Apr 12, 2024
1f67e39
fix: BootstrapState use custom genesis doc provider (backport: #2791)…
yihuang Apr 12, 2024
de17c2d
build(deps): Bump docker/setup-buildx-action from 3.2.0 to 3.3.0 (#2808)
dependabot[bot] Apr 15, 2024
365d4e4
refactor(rpc): allocate PingPongLatencyTimer on start (backport #2804…
mergify[bot] Apr 15, 2024
d7ab511
chore: fix filenames and format in changelog unclog files (backport #…
mergify[bot] Apr 18, 2024
e8ab44f
build(deps): Bump slackapi/slack-github-action from 1.25.0 to 1.26.0 …
dependabot[bot] Apr 22, 2024
2a8c5ff
perf(libs/json): Lower heap overhead of JSON encoding (backport #2846…
mergify[bot] Apr 23, 2024
a9e045b
perf(txindex): Lower allocation overhead of txIndex matchRange (backp…
mergify[bot] Apr 24, 2024
f6cde44
perf(internal/bits): Significantly speedup bitArray.PickRandom (backp…
mergify[bot] Apr 24, 2024
7cd7ae4
fix(bits): handle last element in PickRandom (backport #2899) (#2901)
mergify[bot] Apr 26, 2024
b67ea6f
fix(mempool): panic when the app returns error on CheckTx request (ba…
mergify[bot] Apr 26, 2024
1b1216c
v0.38.7 (#2908)
melekes Apr 27, 2024
003228b
build(deps): Bump bufbuild/buf-setup-action from 1.30.1 to 1.31.0 (#2…
dependabot[bot] Apr 29, 2024
cdf8c54
build(deps): Bump golangci/golangci-lint-action from 4 to 5 (#2919)
dependabot[bot] Apr 29, 2024
203bf33
perf(state): Cache the block hash (backport #2924) (#2931)
mergify[bot] Apr 29, 2024
a70a989
perf(event bus): Remove expensive Logger debug call in PublishEventTx…
mergify[bot] Apr 29, 2024
cf17465
spec(abci): slight improvements to ABCI spec (@angrav's feedback from…
mergify[bot] Apr 30, 2024
4937f14
perf(internal/blocksync): do not `ValidateBlock` twice (backport #202…
mergify[bot] Apr 30, 2024
457e119
perf(consensus/state): Change finalizeCommit to use applyVerifiedBloc…
mergify[bot] Apr 30, 2024
58627a5
perf(p2p/channel): Speedup NewDelimitedWriter (backport #2949) (#2968)
mergify[bot] May 2, 2024
3f037ed
perf(p2p): Remove unnecessary atomic read (backport #2950) (#2971)
mergify[bot] May 2, 2024
b870a44
perf(p2p/conn): Remove a minint call that was appearing in write pack…
mergify[bot] May 2, 2024
17074c8
refactor(p2p/connection): Slight refactor to sendManyPackets that hel…
mergify[bot] May 2, 2024
3431bc8
perf(internal/bits): Speedup extended commit.BitArray() (backport #29…
mergify[bot] May 2, 2024
ad18292
perf(p2p/connection): Lower wasted re-allocations in sendRoutine (bac…
mergify[bot] May 3, 2024
bef190a
perf(consensus/blockstore): Remove validate basic call from LoadBlock…
mergify[bot] May 3, 2024
bce83b3
feat: add a configurable maximum batch size for RPC requests (backpor…
mergify[bot] May 3, 2024
887a9ff
fix: remove comment about default value (#2867) (backport #3000) (#3013)
mergify[bot] May 6, 2024
a977aa5
perf: Micro optimization to save one allocation per packet (backport …
mergify[bot] May 7, 2024
ed61568
perf: Minor speedup to consenus metrics MarkLateVote (backport #3017)…
mergify[bot] May 7, 2024
9ccdb9b
fix(mempool): Fix data race when rechecking with async ABCI client (b…
mergify[bot] May 7, 2024
705e517
docs: disambiguate protocol version (backport #3034) (#3040)
mergify[bot] May 8, 2024
0c06b31
build(deps): Bump golangci/golangci-lint-action from 5 to 6 (#3068)
dependabot[bot] May 13, 2024
f97bee9
perf(blockstore): Add LRU caches to blockstore operations used in con…
mergify[bot] May 15, 2024
51884f9
build(deps): Bump bufbuild/buf-setup-action from 1.31.0 to 1.32.0 (#3…
dependabot[bot] May 20, 2024
01ca424
fix: TimeoutTicker returns wrong value/timeout pair when timeouts are…
mergify[bot] May 22, 2024
dd124fc
build(deps): Bump bufbuild/buf-setup-action from 1.32.0 to 1.32.1 (#3…
dependabot[bot] May 27, 2024
a38dbb2
fix: docs: default db provider moved from node to config (backport #1…
mergify[bot] May 27, 2024
6adb4fc
build(deps): Bump bufbuild/buf-setup-action from 1.32.1 to 1.32.2 (#3…
dependabot[bot] Jun 3, 2024
ba70f4c
build(deps): Bump docker/login-action from 3.1.0 to 3.2.0 (#3166)
dependabot[bot] Jun 3, 2024
b340e2e
chore: update cosmosnetwork discord url (backport #3153) (#3176)
mergify[bot] Jun 3, 2024
06b6583
build(deps): Bump goreleaser/goreleaser-action from 5 to 6 (#3213)
dependabot[bot] Jun 10, 2024
ee556e3
fix(e2e): reproduction an fixing of missing evidence in `e2e` nightli…
mergify[bot] Jun 11, 2024
94cfccf
build(deps): Bump bufbuild/buf-setup-action from 1.32.2 to 1.33.0 (#3…
dependabot[bot] Jun 17, 2024
cd3851e
build(deps): Bump docker/build-push-action from 5.3.0 to 6.0.0 (#3289)
dependabot[bot] Jun 17, 2024
40409a1
fix(types): DO NOT batch verify if vals keys (backport #3196) (#3308)
mergify[bot] Jun 20, 2024
6fe9711
fix(mempool): wrong request type when rechecking (#3264)
hvanz Jun 21, 2024
0ec3f0b
build(deps): Bump bufbuild/buf-setup-action from 1.33.0 to 1.34.0 (#3…
dependabot[bot] Jun 24, 2024
064662b
build(deps): Bump docker/build-push-action from 6.0.0 to 6.1.0 (#3326)
dependabot[bot] Jun 24, 2024
201aa2c
fix(mempool)!: stop accepting TXs in the mempool if we can't keep up …
mergify[bot] Jun 24, 2024
4ad41c0
chore(types): add test for ValidatorSet#AllKeysHaveSameType (backport…
mergify[bot] Jun 26, 2024
05ac431
Added tests to check extendedCommit with different vote extension set…
greg-szabo May 3, 2024
a11292e
Tests redone with a byzantine reactor sending wrong blocks
greg-szabo May 3, 2024
126cc87
Refactor test
greg-szabo May 9, 2024
259ec76
also check if extendedcommit was sent when VoteExtensions are disable…
greg-szabo May 9, 2024
1492292
added unclog entry
greg-szabo May 9, 2024
eaee53c
ABC-0013 fix and broken test
greg-szabo May 29, 2024
789be09
blocksync pool ban test
greg-szabo Jun 20, 2024
d38ee19
Update blocksync/reactor_test.go
greg-szabo Jun 21, 2024
ec86f73
Simplified blocksync malicious node test, fix nil pointer error
greg-szabo Jun 22, 2024
26bda8b
Test assertions have more detail
greg-szabo Jun 22, 2024
4cb0df8
Update blocksync/pool_test.go
greg-szabo Jun 24, 2024
872210c
Update blocksync/pool_test.go
greg-szabo Jun 24, 2024
8a473ca
Update blocksync/pool_test.go
greg-szabo Jun 24, 2024
4199f27
Remove one thread to make test more compact
greg-szabo Jun 24, 2024
007efd7
Removed defers from test
greg-szabo Jun 24, 2024
065810c
Readded good peer to test
greg-szabo Jun 24, 2024
0a89ec1
Update blocksync/pool_test.go
greg-szabo Jun 24, 2024
8ba2e4f
Merge pull request from GHSA-hg58-rf2h-6rr7
greg-szabo Jun 27, 2024
6959205
Release/v0.38.8 (#3350)
greg-szabo Jun 27, 2024
4027622
fix(rpc): fix nil pointer error in `/tx` and `/tx_search` (backport #…
mergify[bot] Jun 28, 2024
1e22f66
refactor(mempool)!: remove PreUpdate from Mempool interface and move …
hvanz Jun 28, 2024
1fd2b98
build(deps): Bump docker/build-push-action from 6.1.0 to 6.2.0 (#3381)
dependabot[bot] Jul 1, 2024
4e83f9d
Release/v0.38.9 (#3387)
hvanz Jul 1, 2024
3cf037a
docs(rpc): update /abci_info return parameters (backport #3359) (#3392)
mergify[bot] Jul 2, 2024
ecd56ec
fix(p2p/pex): respect MaxNumOutboundPeers limit while dialing peers p…
mergify[bot] Jul 2, 2024
eea0ec1
docs: remove not existing key from block search query (backport #3399…
mergify[bot] Jul 3, 2024
4e85725
perf(p2p): Only update send monitor once per batch packet msg send (b…
mergify[bot] Jul 5, 2024
0aeebd5
fix(blocksync): don't block in blocksync if our voting power is block…
mergify[bot] Jul 5, 2024
9ca0b49
perf(p2p/conn): Remove unneeded global pool buffers in secret connect…
mergify[bot] Jul 5, 2024
a392c28
build(deps): Bump docker/setup-buildx-action from 3.3.0 to 3.4.0 (#3439)
dependabot[bot] Jul 8, 2024
f2b42d7
build(deps): Bump docker/build-push-action from 6.2.0 to 6.3.0 (#3440)
dependabot[bot] Jul 8, 2024
fcac713
changelog: moving entry (#3396) to right location (#3457)
cason Jul 8, 2024
a1b6c68
feat(libs/pubsub): allow dash symbol in event type/attribute (backpor…
mergify[bot] Jul 9, 2024
0792c8b
fix: invalid `txs_results` returned for legacy ABCI responses (backpo…
mergify[bot] Jul 9, 2024
641d528
doc(changelog): move recent HackerOne changelogs to 'bug fixes' (#3479)
sergio-mena Jul 10, 2024
c2405cc
feat: do not start indexer service (back port: #3331) (#3496)
mmsqe Jul 11, 2024
5f59b42
chore: release `v0.38.10` (#3515)
melekes Jul 15, 2024
7d9c384
Merge branch 'update-from-v0.38.10' into v0.38.5-patched
summitbajaj Nov 28, 2024
397d308
update cometbft
summitbajaj Nov 28, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .changelog/v0.38.10/bug-fixes/3002-invalid-txs-results.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
- `[rpc]` Fix an issue where a legacy ABCI response, created on `v0.37` or before, is not returned properly in `v0.38` and up
on the `/block_results` RPC endpoint.
([\#3002](https://github.com/cometbft/cometbft/issues/3002))
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
- `[blocksync]` Do not stay in blocksync if the node's validator voting power
is high enough to block the chain while it is not online
([\#3406](https://github.com/cometbft/cometbft/pull/3406))
3 changes: 3 additions & 0 deletions .changelog/v0.38.10/bug-fixes/486-p2p-max-outbound.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
- `[p2p]` Node respects configured `max_num_outbound_peers` limit when dialing
peers provided by a seed node
([\#486](https://github.com/cometbft/cometbft/issues/486))
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[p2p/conn]` Update send monitor, used for sending rate limiting, once per batch of packets sent
([\#3382](https://github.com/cometbft/cometbft/pull/3382))
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[libs/pubsub]` Allow dash (`-`) in event tags
([\#3401](https://github.com/cometbft/cometbft/issues/3401))
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[p2p/conn]` Remove the usage of a synchronous pool of buffers in secret connection, storing instead the buffer in the connection struct. This reduces the synchronization primitive usage, speeding up the code.
([\#3403](https://github.com/cometbft/cometbft/issues/3403))
5 changes: 5 additions & 0 deletions .changelog/v0.38.10/summary.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
*July 16, 2024*

This release fixes a bug in `v0.38.x` that prevented ABCI responses from being
correctly read when upgrading from `v0.37.x` or below. It also includes a few other
bug fixes and performance improvements.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
- `[privval]` Retry accepting a connection ([\#2047](https://github.com/cometbft/cometbft/pull/2047))
2 changes: 2 additions & 0 deletions .changelog/v0.38.6/bug-fixes/2136-fix-state-rollback.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[state]` Fix rollback to a specific height
([\#2136](https://github.com/cometbft/cometbft/pull/2136))
2 changes: 2 additions & 0 deletions .changelog/v0.38.6/features/2362-e2e-block-max-bytes.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[e2e]` Add `block_max_bytes` option to the manifest file.
([\#2362](https://github.com/cometbft/cometbft/pull/2362))
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[blocksync]` Avoid double-calling `types.BlockFromProto` for performance
reasons ([\#2016](https://github.com/cometbft/cometbft/pull/2016))
2 changes: 2 additions & 0 deletions .changelog/v0.38.6/improvements/2094-e2e-load-max-txs.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[e2e]` Add manifest option `load_max_txs` to limit the number of transactions generated by the
`load` command. ([\#2094](https://github.com/cometbft/cometbft/pull/2094))
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
- `[jsonrpc]` enable HTTP basic auth in websocket client ([#2434](https://github.com/cometbft/cometbft/pull/2434))
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
- `[blocksync]` make the max number of downloaded blocks dynamic.
Previously it was a const 600. Now it's `peersCount * maxPendingRequestsPerPeer (20)`
[\#2467](https://github.com/cometbft/cometbft/pull/2467)
3 changes: 3 additions & 0 deletions .changelog/v0.38.6/improvements/2475-blocksync-2nd-request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
- `[blocksync]` Request a block from peer B if we are approaching pool's height
(less than 50 blocks) and the current peer A is slow in sending us the
block [\#2475](https://github.com/cometbft/cometbft/pull/2475)
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
- `[blocksync]` Request the block N from peer B immediately after getting
`NoBlockResponse` from peer A
[\#2475](https://github.com/cometbft/cometbft/pull/2475)
2 changes: 2 additions & 0 deletions .changelog/v0.38.6/improvements/2475-blocksync-sort-peers.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[blocksync]` Sort peers by download rate (the fastest peer is picked first)
[\#2475](https://github.com/cometbft/cometbft/pull/2475)
5 changes: 5 additions & 0 deletions .changelog/v0.38.6/summary.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
*March 12, 2024*

This release fixes a security bug in the light client. It also introduces many
improvements to the block sync in collaboration with the
[Osmosis](https://osmosis.zone/) team.
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- [`mempool`] Panic when a CheckTx request to the app returns an error
([\#2225](https://github.com/cometbft/cometbft/pull/2225))
2 changes: 2 additions & 0 deletions .changelog/v0.38.7/bug-fixes/2774-bitarray-unmarshal-json.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- [`bits`] prevent `BitArray.UnmarshalJSON` from crashing on 0 bits
([\#2774](https://github.com/cometbft/cometbft/pull/2774))
2 changes: 2 additions & 0 deletions .changelog/v0.38.7/features/2793-boostrap.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- [`node`] Add `BootstrapStateWithGenProvider` to boostrap state using a custom
genesis doc provider ([\#2793](https://github.com/cometbft/cometbft/pull/2793))
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[state/indexer]` Lower the heap allocation of transaction searches
([\#2839](https://github.com/cometbft/cometbft/pull/2839))
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[internal/bits]` 10x speedup and remove heap overhead of bitArray.PickRandom (used extensively in consensus gossip)
([\#2841](https://github.com/cometbft/cometbft/pull/2841)).
2 changes: 2 additions & 0 deletions .changelog/v0.38.7/improvements/2846-speedup-json-encoding.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[libs/json]` Lower the memory overhead of JSON encoding by using JSON encoders internally
([\#2846](https://github.com/cometbft/cometbft/pull/2846)).
3 changes: 3 additions & 0 deletions .changelog/v0.38.7/summary.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
*April 26, 2024*

This release contains a few bug fixes and performance improvements.
4 changes: 4 additions & 0 deletions .changelog/v0.38.8/breaking-changes/3314-mempool-preupdate.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
- `[mempool]` Add to the `Mempool` interface a new method `PreUpdate()`. This method should be
called before acquiring the mempool lock, to signal that a new update is coming. Also add to
`ErrMempoolIsFull` a new field `RecheckFull`.
([\#3314](https://github.com/cometbft/cometbft/pull/3314))
4 changes: 4 additions & 0 deletions .changelog/v0.38.8/bug-fixes/14-abc.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
- `[blockstore]` Added peer banning in blockstore
([\#ABC-0013](https://github.com/cometbft/cometbft/security/advisories/GHSA-hg58-rf2h-6rr7))
- `[blockstore]` Send correct error message when vote extensions do not align with received packet
([\#ABC-0014](https://github.com/cometbft/cometbft/security/advisories/GHSA-hg58-rf2h-6rr7))
2 changes: 2 additions & 0 deletions .changelog/v0.38.8/bug-fixes/1827-fix-recheck-async.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- [`mempool`] Fix data race when rechecking with async ABCI client
([\#1827](https://github.com/cometbft/cometbft/issues/1827))
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[consensus]` Fix a race condition in the consensus timeout ticker. Race is caused by two timeouts being scheduled at the same time.
([\#3092](https://github.com/cometbft/cometbft/pull/2136))
2 changes: 2 additions & 0 deletions .changelog/v0.38.8/bug-fixes/3195-batch-verification.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[types]` Do not batch verify a commit if the validator set keys have different
types. ([\#3195](https://github.com/cometbft/cometbft/issues/3195)
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
- `[config]` Added `recheck_timeout` mempool parameter to set how much time to wait for recheck
responses from the app (only applies to non-local ABCI clients).
([\#1827](https://github.com/cometbft/cometbft/issues/1827/))
2 changes: 2 additions & 0 deletions .changelog/v0.38.8/improvements/2867-rpc-batch-size-config.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[rpc]` Add a configurable maximum batch size for RPC requests.
([\#2867](https://github.com/cometbft/cometbft/pull/2867)).
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[event-bus]` Remove the debug logs in PublishEventTx, which were noticed production slowdowns.
([\#2911](https://github.com/cometbft/cometbft/pull/2911))
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[state/execution]` Cache the block hash computation inside of the Block Type, so we only compute it once.
([\#2924](https://github.com/cometbft/cometbft/pull/2924))
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[consensus/state]` Remove a redundant `VerifyBlock` call in `FinalizeCommit`
([\#2928](https://github.com/cometbft/cometbft/pull/2928))
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[p2p/channel]` Speedup `ProtoIO` writer creation time, and thereby speedup channel writing by 5%.
([\#2949](https://github.com/cometbft/cometbft/pull/2949))
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[p2p/conn]` Minor speedup (3%) to connection.WritePacketMsgTo, by removing MinInt calls.
([\#2952](https://github.com/cometbft/cometbft/pull/2952))
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[internal/bits]` 10x speedup creating initialized bitArrays, which speedsup extendedCommit.BitArray(). This is used in consensus vote gossip.
([\#2959](https://github.com/cometbft/cometbft/pull/2841)).
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[blockstore]` Remove a redundant `Header.ValidateBasic` call in `LoadBlockMeta`, 75% reducing this time.
([\#2964](https://github.com/cometbft/cometbft/pull/2964))
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[p2p/conn]` Speedup connection.WritePacketMsgTo, by reusing internal buffers rather than re-allocating.
([\#2986](https://github.com/cometbft/cometbft/pull/2986))
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- [`blockstore`] Use LRU caches in blockstore, significiantly improving consensus gossip routine performance
([\#3003](https://github.com/cometbft/cometbft/issues/3003)
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- [`consensus`] Improve performance of consensus metrics by lowering string operations
([\#3017](https://github.com/cometbft/cometbft/issues/3017)
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
- [`protoio`] Remove one allocation and new object call from `ReadMsg`,
leading to a 4% p2p message reading performance gain.
([\#3018](https://github.com/cometbft/cometbft/issues/3018)
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
- `[mempool]` Before updating the mempool, consider it as full if rechecking is still in progress.
This will stop accepting transactions in the mempool if the node can't keep up with re-CheckTx.
([\#3314](https://github.com/cometbft/cometbft/pull/3314))
3 changes: 3 additions & 0 deletions .changelog/v0.38.8/summary.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
*June 27, 2024*

This release contains a few bug fixes and performance improvements.
4 changes: 4 additions & 0 deletions .changelog/v0.38.9/breaking-changes/3361-mempool-preupdate.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
- `[mempool]` Revert adding the method `PreUpdate()` to the `Mempool` interface, recently introduced
in the previous patch release (v0.38.8). Its logic is now moved into the `Lock` method. With this change,
the `Mempool` interface is the same as in v0.38.7.
([\#3361](https://github.com/cometbft/cometbft/pull/3361))
2 changes: 2 additions & 0 deletions .changelog/v0.38.9/bug-fixes/3352-nil-pointer-tx-search.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- `[rpc]` Fix nil pointer error in `/tx` and `/tx_search` when block is
absent ([\#3352](https://github.com/cometbft/cometbft/issues/3352))
5 changes: 5 additions & 0 deletions .changelog/v0.38.9/summary.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
*July 1, 2024*

This release reverts the API-breaking change to the Mempool interface introduced in the last patch
release (v0.38.8) while still keeping the performance improvement added to the mempool. It also
includes a minor fix to the RPC endpoints /tx and /tx_search.
16 changes: 9 additions & 7 deletions .github/workflows/check-generated.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ permissions:
contents: read

jobs:
check-mocks:
check-mocks-metrics:
runs-on: ubuntu-latest
steps:
- uses: actions/setup-go@v5
Expand All @@ -22,17 +22,18 @@ jobs:

- uses: actions/checkout@v4

- name: "Check generated mocks"
- name: "Check generated mocks and metrics"
run: |
set -euo pipefail

make mockery
make mockery metrics

if ! git diff --stat --exit-code ; then
git add .
if ! git diff HEAD --stat --exit-code ; then
echo ">> ERROR:"
echo ">>"
echo ">> Generated mocks require update (either Mockery or source files may have changed)."
echo ">> Ensure your tools are up-to-date, re-run 'make mockery' and update this PR."
echo ">> Generated mocks and/or metrics require update (either Mockery or source files may have changed)."
echo ">> Ensure your tools are up-to-date, re-run 'make mockery metrics' and update this PR."
echo ">>"
git diff
exit 1
Expand All @@ -55,7 +56,8 @@ jobs:

make proto-gen

if ! git diff --stat --exit-code ; then
git add .
if ! git diff HEAD --stat --exit-code ; then
echo ">> ERROR:"
echo ">>"
echo ">> Protobuf generated code requires update (either tools or .proto files may have changed)."
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/cometbft-docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,17 +41,17 @@ jobs:
platforms: all

- name: Set up Docker Build
uses: docker/setup-buildx-action@v3.0.0
uses: docker/setup-buildx-action@v3.4.0

- name: Login to DockerHub
if: ${{ github.event_name != 'pull_request' }}
uses: docker/login-action@v3.0.0
uses: docker/login-action@v3.2.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Publish to Docker Hub
uses: docker/build-push-action@v5.1.0
uses: docker/build-push-action@v6.3.0
with:
context: .
file: ./DOCKER/Dockerfile
Expand Down
11 changes: 9 additions & 2 deletions .github/workflows/e2e-manual-multiversion.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
strategy:
fail-fast: false
matrix:
group: ['00', '01', '02', '03', '04']
group: ['00', '01', '02', '03', '04', '05']
runs-on: ubuntu-latest
timeout-minutes: 60
steps:
Expand All @@ -27,12 +27,19 @@ jobs:
run: make -j2 docker generator runner tests

- name: Generate testnets
if: matrix.group != 5
working-directory: test/e2e
# When changing -g, also change the matrix groups above
# Generate multi-version tests with double the quantity of E2E nodes
# based on the current branch as compared to the latest version.
run: ./build/generator -g 5 -m "latest:1,local:2" -d networks/nightly/ -p

- name: Run ${{ matrix.p2p }} p2p testnets
- name: Run p2p testnets (${{ matrix.group }})
if: matrix.group != 5
working-directory: test/e2e
run: ./run-multiple.sh networks/nightly/*-group${{ matrix.group }}-*.toml

- name: Run p2p testnets (regression)
if: matrix.group == 5
working-directory: test/e2e
run: ./run-multiple.sh networks_regressions/*.toml
11 changes: 9 additions & 2 deletions .github/workflows/e2e-manual.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
strategy:
fail-fast: false
matrix:
group: ['00', '01', '02', '03', '04']
group: ['00', '01', '02', '03', '04', '05']
runs-on: ubuntu-latest
timeout-minutes: 60
steps:
Expand All @@ -27,10 +27,17 @@ jobs:
run: make -j2 docker generator runner tests

- name: Generate testnets
if: matrix.group != 5
working-directory: test/e2e
# When changing -g, also change the matrix groups above
run: ./build/generator -g 5 -d networks/nightly/ -p

- name: Run ${{ matrix.p2p }} p2p testnets
- name: Run p2p testnets (${{ matrix.group }})
if: matrix.group != 5
working-directory: test/e2e
run: ./run-multiple.sh networks/nightly/*-group${{ matrix.group }}-*.toml

- name: Run p2p testnets (regression)
if: matrix.group == 5
working-directory: test/e2e
run: ./run-multiple.sh networks_regressions/*.toml
2 changes: 1 addition & 1 deletion .github/workflows/e2e-nightly-34x.yml
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Notify Slack on failure
uses: slackapi/slack-github-action@v1.24.0
uses: slackapi/slack-github-action@v1.26.0
env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/e2e-nightly-37x.yml
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Notify Slack on failure
uses: slackapi/slack-github-action@v1.24.0
uses: slackapi/slack-github-action@v1.26.0
env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK
Expand Down
13 changes: 10 additions & 3 deletions .github/workflows/e2e-nightly-main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
strategy:
fail-fast: false
matrix:
group: ['00', '01', '02', '03', "04"]
group: ['00', '01', '02', '03', '04', '05']
runs-on: ubuntu-latest
timeout-minutes: 60
steps:
Expand All @@ -32,21 +32,28 @@ jobs:
run: make -j2 docker generator runner tests

- name: Generate testnets
if: matrix.group != 5
working-directory: test/e2e
# When changing -g, also change the matrix groups above
run: ./build/generator -g 5 -d networks/nightly/ -p

- name: Run ${{ matrix.p2p }} p2p testnets
- name: Run p2p testnets (${{ matrix.group }})
if: matrix.group != 5
working-directory: test/e2e
run: ./run-multiple.sh networks/nightly/*-group${{ matrix.group }}-*.toml

- name: Run p2p testnets (regression)
if: matrix.group == 5
working-directory: test/e2e
run: ./run-multiple.sh networks_regressions/*.toml

e2e-nightly-fail:
needs: e2e-nightly-test
if: ${{ failure() }}
runs-on: ubuntu-latest
steps:
- name: Notify Slack on failure
uses: slackapi/slack-github-action@v1.24.0
uses: slackapi/slack-github-action@v1.26.0
env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/fuzz-nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Notify Slack on failure
uses: slackapi/slack-github-action@v1.24.0
uses: slackapi/slack-github-action@v1.26.0
env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/janitor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
runs-on: ubuntu-latest
timeout-minutes: 3
steps:
- uses: styfle/[email protected].0
- uses: styfle/[email protected].1
with:
workflow_id: 1041851,1401230,2837803
access_token: ${{ github.token }}
2 changes: 1 addition & 1 deletion .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ jobs:
**/**.go
go.mod
go.sum
- uses: golangci/golangci-lint-action@v3
- uses: golangci/golangci-lint-action@v6
with:
version: latest
args: --timeout 10m
Expand Down
Loading
Loading