diff --git a/blockchain/blockchain.go b/blockchain/blockchain.go index df1e377222..bcdadd5b52 100644 --- a/blockchain/blockchain.go +++ b/blockchain/blockchain.go @@ -63,14 +63,22 @@ func checkBlockVersion(protocolVersion string) error { } // We ignore changes in patch part of the version - blockVerMM, suportedVerMM := blockVer.IncMinor(), SupportedStarknetVersion.IncMinor() - if blockVerMM.GreaterThan(&suportedVerMM) { + blockVerMM, supportedVerMM := copyWithoutPatch(blockVer), copyWithoutPatch(SupportedStarknetVersion) + if blockVerMM.GreaterThan(supportedVerMM) { return errors.New("unsupported block version") } return nil } +func copyWithoutPatch(v *semver.Version) *semver.Version { + if v == nil { + return nil + } + + return semver.New(v.Major(), v.Minor(), 0, v.Prerelease(), v.Metadata()) +} + var _ Reader = (*Blockchain)(nil) // Blockchain is responsible for keeping track of all things related to the Starknet blockchain