Skip to content

build(crypto/secp256k1): Update btcec/v2 to v2.3.4 (backport #3728)#3759

Merged
melekes merged 8 commits intov0.37.xfrom
mergify/bp/v0.37.x/pr-3728
Aug 20, 2024
Merged

build(crypto/secp256k1): Update btcec/v2 to v2.3.4 (backport #3728)#3759
melekes merged 8 commits intov0.37.xfrom
mergify/bp/v0.37.x/pr-3728

Conversation

@mergify
Copy link
Contributor

@mergify mergify bot commented Aug 20, 2024

Running a go get should consistently build this project as per the README. However, the latest patch release of btcec/v2 is not a proper Semantic Versioning patch. It removes an error return value from ecdsa.SignCompact function (btcsuite/btcd@e5d15fd). This is functionally a no-op, as the underlying function was hardcoded to always return nil as error. However, this is still a breaking change (compiler/build error) for all consumers of this function, as they historically expected two return values, but now only get one.

Ref: btcsuite/btcd#2211
Ref: #3531
Ref: #3536


PR checklist

Running a `go get` should consistently build this project as per the
README. However, the latest patch release of `btcec/v2` is not a proper
Semantic Versioning patch. It removes an error return value from
`ecdsa.SignCompact` function (btcsuite/btcd@e5d15fd). This is
functionally a no-op, as the underlying function was hardcoded to always
return `nil` as error. However, this is still a breaking change
(compiler/build error) for all consumers of this function, as they
historically expected two return values, but now only get one.

Ref: btcsuite/btcd#2211
Ref: #3531
Ref: #3536

---

#### PR checklist

- [ ] Tests written/updated
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [ ] Updated relevant documentation (`docs/` or `spec/`) and code
comments

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
(cherry picked from commit 17abb80)

# Conflicts:
#	crypto/secp256k1/secp256k1.go
#	go.mod
#	go.sum
@mergify mergify bot requested a review from a team as a code owner August 20, 2024 03:13
@mergify mergify bot added the conflicts label Aug 20, 2024
@mergify

This comment was marked as resolved.

Copy link
Contributor

@sigv sigv left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Proposing conflict resolution.

Comment on lines +131 to +139
<<<<<<< HEAD
sig, err := ecdsa.SignCompact(priv, crypto.Sha256(msg), false)
if err != nil {
return nil, err
}
=======
sum := sha256.Sum256(msg)
sig := ecdsa.SignCompact(priv, sum[:], false)
>>>>>>> 17abb8006 (build(crypto/secp256k1): Update `btcec/v2` to v2.3.4 (#3728))
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<<<<<<< HEAD
sig, err := ecdsa.SignCompact(priv, crypto.Sha256(msg), false)
if err != nil {
return nil, err
}
=======
sum := sha256.Sum256(msg)
sig := ecdsa.SignCompact(priv, sum[:], false)
>>>>>>> 17abb8006 (build(crypto/secp256k1): Update `btcec/v2` to v2.3.4 (#3728))
sig := ecdsa.SignCompact(priv, crypto.Sha256(msg), false)

go.mod Outdated
Comment on lines +47 to +68
<<<<<<< HEAD
github.com/Masterminds/semver/v3 v3.2.0
github.com/btcsuite/btcd/btcec/v2 v2.2.1
github.com/btcsuite/btcd/btcutil v1.1.2
github.com/cometbft/cometbft-db v0.7.0
github.com/cosmos/gogoproto v1.4.1
github.com/go-git/go-git/v5 v5.11.0
github.com/golang/protobuf v1.5.3
=======
github.com/Masterminds/semver/v3 v3.2.1
github.com/btcsuite/btcd/btcec/v2 v2.3.4
github.com/btcsuite/btcd/btcutil v1.1.6
github.com/cometbft/cometbft-db v0.14.0
github.com/cometbft/cometbft-load-test v0.1.0
github.com/cometbft/cometbft/api v1.0.0-rc.1
github.com/cosmos/gogoproto v1.7.0
github.com/dgraph-io/badger/v4 v4.2.0
github.com/go-git/go-git/v5 v5.12.0
github.com/goccmack/goutil v1.2.3
github.com/gofrs/uuid v4.4.0+incompatible
github.com/google/uuid v1.6.0
>>>>>>> 17abb8006 (build(crypto/secp256k1): Update `btcec/v2` to v2.3.4 (#3728))
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<<<<<<< HEAD
github.com/Masterminds/semver/v3 v3.2.0
github.com/btcsuite/btcd/btcec/v2 v2.2.1
github.com/btcsuite/btcd/btcutil v1.1.2
github.com/cometbft/cometbft-db v0.7.0
github.com/cosmos/gogoproto v1.4.1
github.com/go-git/go-git/v5 v5.11.0
github.com/golang/protobuf v1.5.3
=======
github.com/Masterminds/semver/v3 v3.2.1
github.com/btcsuite/btcd/btcec/v2 v2.3.4
github.com/btcsuite/btcd/btcutil v1.1.6
github.com/cometbft/cometbft-db v0.14.0
github.com/cometbft/cometbft-load-test v0.1.0
github.com/cometbft/cometbft/api v1.0.0-rc.1
github.com/cosmos/gogoproto v1.7.0
github.com/dgraph-io/badger/v4 v4.2.0
github.com/go-git/go-git/v5 v5.12.0
github.com/goccmack/goutil v1.2.3
github.com/gofrs/uuid v4.4.0+incompatible
github.com/google/uuid v1.6.0
>>>>>>> 17abb8006 (build(crypto/secp256k1): Update `btcec/v2` to v2.3.4 (#3728))
github.com/Masterminds/semver/v3 v3.2.0
github.com/btcsuite/btcd/btcec/v2 v2.3.4
github.com/btcsuite/btcd/btcutil v1.1.2
github.com/cometbft/cometbft-db v0.7.0
github.com/cosmos/gogoproto v1.4.1
github.com/go-git/go-git/v5 v5.11.0
github.com/golang/protobuf v1.5.3

go.sum Outdated
Comment on lines +124 to +130
<<<<<<< HEAD
github.com/btcsuite/btcd/btcec/v2 v2.2.1 h1:xP60mv8fvp+0khmrN0zTdPC3cNm24rfeE6lh2R/Yv3E=
github.com/btcsuite/btcd/btcec/v2 v2.2.1/go.mod h1:9/CSmJxmuvqzX9Wh2fXMWToLOHhPd11lSPuIupwTkI8=
=======
github.com/btcsuite/btcd/btcec/v2 v2.3.4 h1:3EJjcN70HCu/mwqlUsGK8GcNVyLVxFDlWurTXGPFfiQ=
github.com/btcsuite/btcd/btcec/v2 v2.3.4/go.mod h1:zYzJ8etWJQIv1Ogk7OzpWjowwOdXY1W/17j2MW85J04=
>>>>>>> 17abb8006 (build(crypto/secp256k1): Update `btcec/v2` to v2.3.4 (#3728))
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<<<<<<< HEAD
github.com/btcsuite/btcd/btcec/v2 v2.2.1 h1:xP60mv8fvp+0khmrN0zTdPC3cNm24rfeE6lh2R/Yv3E=
github.com/btcsuite/btcd/btcec/v2 v2.2.1/go.mod h1:9/CSmJxmuvqzX9Wh2fXMWToLOHhPd11lSPuIupwTkI8=
=======
github.com/btcsuite/btcd/btcec/v2 v2.3.4 h1:3EJjcN70HCu/mwqlUsGK8GcNVyLVxFDlWurTXGPFfiQ=
github.com/btcsuite/btcd/btcec/v2 v2.3.4/go.mod h1:zYzJ8etWJQIv1Ogk7OzpWjowwOdXY1W/17j2MW85J04=
>>>>>>> 17abb8006 (build(crypto/secp256k1): Update `btcec/v2` to v2.3.4 (#3728))
github.com/btcsuite/btcd/btcec/v2 v2.3.4 h1:3EJjcN70HCu/mwqlUsGK8GcNVyLVxFDlWurTXGPFfiQ=
github.com/btcsuite/btcd/btcec/v2 v2.3.4/go.mod h1:zYzJ8etWJQIv1Ogk7OzpWjowwOdXY1W/17j2MW85J04=

@sigv
Copy link
Contributor

sigv commented Aug 20, 2024

@melekes, provided a proposed resolution above.

@melekes melekes merged commit 8d45fb0 into v0.37.x Aug 20, 2024
@melekes melekes deleted the mergify/bp/v0.37.x/pr-3728 branch August 20, 2024 17:13
@mergify mergify bot added automerge and removed automerge labels Aug 27, 2024
@mergify mergify bot added automerge and removed automerge labels Aug 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants