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

Unnecessarily large dependency #318

Open
tomtau opened this issue May 17, 2021 · 3 comments
Open

Unnecessarily large dependency #318

tomtau opened this issue May 17, 2021 · 3 comments
Labels
bug Something isn't working

Comments

@tomtau
Copy link

tomtau commented May 17, 2021

Rosetta Go SDK depends on go-ethereum: https://github.com/coinbase/rosetta-sdk-go/blob/9ba330f0a51ab41c1c8738a040eb2b28894b82d9/go.mod#L13 which is a fairly large dependency.
The only thing used from go-ethereum appears to be secp256k1 signing: https://github.com/coinbase/rosetta-sdk-go/blob/9ba330f0a51ab41c1c8738a040eb2b28894b82d9/keys/signer_secp256k1.go#L21

@tomtau tomtau added the bug Something isn't working label May 17, 2021
@tac0turtle
Copy link

want to echo this, the core parts of the Rosettas-sdk-go should live separate from custom implementations as the core part is a dependency for projects not housed in here.

@tac0turtle
Copy link

@tomtau we will maintain a stripped version of essential items here https://github.com/cosmos/rosetta-sdk-go. I opened a pr with only the items that are required as dependencies

@chappjc
Copy link

chappjc commented Feb 13, 2023

It's also worth noting that the code in go-ethereum/crypto (no-cgo version) uses "github.com/btcsuite/btcd/btcec/v2", which is actually a rather thin wrapper around "github.com/decred/dcrd/dcrec/secp256k1/v4".

e.g. go-libp2p was recently update to go straight to the source for secp256k1 with no unneeded dependencies: libp2p/go-libp2p#1689

Going pure-Go (dropping cgo) might actually be a win for rosetta-sdk-go in terms of simplifying the build toolchain and gaining reproducible binaries.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Development

No branches or pull requests

3 participants