immutability-io / vault-ethereum

A plugin that turns Vault into an Ethereum wallet.
244 stars 66 forks source link

Use go modules for dependency management #57

Closed miguelmota closed 5 years ago

miguelmota commented 5 years ago

This package is lacking dependency management, so any upstream package that makes breaking changes will break this package. Vendor packages should be locked into tagged versions or revisions to prevent breaking this package

Description

Fixes issue https://github.com/immutability-io/vault-ethereum/issues/51 by using go modules

Motivation and Context

How Has This Been Tested?

Screenshots (if appropriate):

Types of changes

Checklist:

cypherhat commented 5 years ago

Do we need to checkin Vendor files? I didn't think we needed to do that.

richard-mauri commented 5 years ago

No, you don't need vendor files.

I spent a few hours characterizing the build fault and contributing a fix that works, so in exchange for that and future contributions!, please merge #55

cypherhat commented 5 years ago

I merged Richard's PR. I am gonna close this one. Thanks Miguel!

miguelmota commented 5 years ago

@cypherhat @richard-mauri

Go doesn't provide a centralized index of repositories like NPM or Cargo, so if one of your dependencies moves or disappears you're out of luck

Go best practices are agnostic to vendor check-in: https://github.com/golang/dep/blob/master/docs/FAQ.md#should-i-commit-my-vendor-directory

you can see go-ethereum checks in their vendor directory: https://github.com/ethereum/go-ethereum/tree/master/vendor