Bump iavl to v1.2.8 for upstream bugfixes#702
Open
lukasz-zimnoch wants to merge 1 commit into
Open
Conversation
github.com/cosmos/iavl reaches the build transitively through the cosmossdk.io/store fork (v1.1.1-mezo), which pins v1.2.0. Add a direct require to raise it to v1.2.8 so the node picks up the bugfixes released on the iavl 1.2.x line since v1.2.0. iavl is an indirect dependency with no first-party imports, so the bump stays API-compatible, and the resulting committed state hashes are unchanged. go.mod carries a note recording the pin: stay on the iavl 1.2.x line at or above v1.2.8, and do not advance to a higher major/minor line without bumping and re-tagging the cosmossdk.io/store fork first. go.sum is updated to match.
fc028d9 to
717d64d
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
References:
Introduction
github.com/cosmos/iavlcurrently resolves tov1.2.0. It is not imported directly by any first-party package; it is pulled in transitively through ourcosmossdk.io/storefork (github.com/mezo-org/cosmos-sdk/store v1.1.1-mezo), whosego.modpinsv1.2.0. This PR raises the resolved version tov1.2.8so the node picks up the bugfixes released on the upstreamiavl1.2.x line sincev1.2.0, without otherwise touching the store fork.Changes
go.mod/go.sumAdds a direct
require github.com/cosmos/iavl v1.2.8. Because Minimal Version Selection takes the maximum of all requirements, this raises the resolved version above thev1.2.0floor contributed by the store fork while leaving the fork itself unchanged. The dependency stays marked// indirect(no first-party package importsiavl; it is reached only viacosmossdk.io/store/rootmulti), and a comment on the require line records why it is pinned ahead of the fork's version, together with version bounds: av1.2.8floor, and a guard against advancing to a higher major/minor iavl line (e.g.v1.3.x) without first bumping and re-tagging thecosmossdk.io/storefork.go.sumis updated with thev1.2.8checksums.Testing
go list -m github.com/cosmos/iavlresolves tov1.2.8;go mod whyconfirms the chainapp → cosmos-sdk/baseapp → cosmossdk.io/store/rootmulti → iavl.go mod tidyis a no-op against the change andgo mod verifyreports all modules verified.make test-unit— all packages pass under-race, no failures.tests/system— the EVM, opcode, token-transfer, and state suites (MEZOTransfers,BTCTransfers,Push0Check,McopyCheck,TransientStorageCheck,Selfdestruct6780Check,SelfdestructSupplyInvariant,RandaoCheck,ClzCheck,ModexpCheck,InitcodeLimitCheck,RecipientGuard) pass against a localnode built from this branch — 238 passing, 0 failing.cosmossdk.io/store/iavlpath are identical to those produced onv1.2.0. This makes the change non-consensus-breaking and safe to roll out without a coordinated chain halt.Author's checklist
docs/) or specification (x/<module>/spec/)Assigneesfieldmezod-developersin theReviewersfield and notified them on DiscordReviewer's checklist