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

Vendoring dependencies #963

Closed
fcantournet opened this issue Jun 2, 2016 · 5 comments
Closed

Vendoring dependencies #963

fcantournet opened this issue Jun 2, 2016 · 5 comments

Comments

@fcantournet
Copy link

There isn't any dependency vendoring. Now that go 1.6 is the latest stable release there isn't any good reason not to have this.
Packages will still be go get-able for convenience.

Are you guys open to this ?
If yes I'm proposing to do it with glide.
Does anyone have a good reason not to do this?
Or preferences for another vendoring tool ?

@fujita
Copy link
Member

fujita commented Sep 7, 2016

GoBGP is used in two ways, stand-alone binaries and a package.
As far as I know, with the latter use-case, the vendoring doesn't work:
https://github.com/mattfarina/golang-broken-vendor

@fcantournet
Copy link
Author

@fujita You are 100% correct.
I suppose the "correct" way of doing this would be to split the library into its own repository, which should be doable since it's already its own package, and then release this library with tags and vendor it in the binary repository.
In the binary repository you could then vendor all other dependencies.

However this is quite a large body of work and it would impact your release management.
It might not be worth it today, but I suspect it will be more expensive to do later on if you need it.

If this is of any interest I'm willing to lend a hand.
If not feel free to close the issue.

@fujita
Copy link
Member

fujita commented Feb 18, 2017

I plan to use:
https://github.com/golang/dep

seems works for both stand-alone binaries and a package (users for a package can just ignore).

looks like it's still in the pre-alpha state so let's wait for a while.

@magiconair
Copy link

No need to wait. govendor does the trick already and you can switch to a different tool later. See https://github.com/magiconair/gobgp

govendor init
govendor add +e
git add vendor/
git commit -m 'Vendoring in dependencies'

@fujita
Copy link
Member

fujita commented Aug 4, 2017

I added the dep:
11f3fcc
They claim that it's ready for production use

Hopefully, it will be the official means of package management soon:
https://blog.golang.org/contributors-summit

@fujita fujita closed this as completed Aug 4, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants