-
Notifications
You must be signed in to change notification settings - Fork 689
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
Any plan for using godep or glide to manage dependencies ? #291
Comments
And golang is very very popular in China, But China can not visit golang.org very well because of the GFW . And I have planed to add Chinese Word Segmentation into bleve, make it more useful and in China. |
Thanks for your interest in Bleve. We would certainly like to do whatever we can to help make the project more accessible and useful for people in China. If you have other ideas for this please let me know. We have been considering how to properly version the project for some time, and the handling of dependencies is a related concern. One challenge with versioning is that most of the Go tooling around versions expects that applications declare their versions, not libraries. In addition to godep, we want to consider gb and gopkg.in as well. My first thought is that we need to start introducing our own versioning, most likely using something like gopkg.in. And then we should review our external dependencies, and decide whether or not there is value or harm in us bringing them into the project or not. Thanks for raising this issue in the context of the GFW, I had not considered that. I'll leave this issue open as we try to figure out what we're going to do. |
@mschoch |
OK, thats also good to know. I'm trying to understand what about the godep solution in particular will make it work well. Is it that you would have bleve and all of its dependencies in a single github repository? That way the |
@mschoch Yes. That is totally right. And after that a new directory |
+1 for having versioned dependencies. For my projects, I've been using the go1.5 vendor experiment which works alright, though saving dependencies with |
Thanks, we are working towards introducing versioning. Are any of the projects you maintain a library? If so that would be useful for us to examine closer as an example to follow. Thanks. |
Unfortunately, my main projects are closed source so I can't really share :/ I'll update this thread if I find any good open source examples... I haven't found any yet |
Now I think maybe glide is a better solution . |
workaround for our chinese friends. |
Here is some further discussion around the problems with vendoring dependencies in libraries: https://peter.bourgon.org/go-best-practices-2016/#dependency-management With the conclusion (for now) being "Libraries should never vendor their dependencies." There are links to golang issues and golang-dev discussions, I encourage everyone to read through them if you are concerned with this issue. On a more positive note, I think we can actually work to eliminate many of the external dependencies we have. Things like the context package which are necessarily part of the public API simply cannot be vendored at the moment. |
In order to keep moving towards 1.0, I'm leaving this open and moving it to 2.0. For now, we are doing the following:
Going forward, I expect bleve to:
|
I think
godep
is a good tool to mange dependencies better for this project.So I wonder whether this project will use it .
For example, TiDB use
godep
as well.The text was updated successfully, but these errors were encountered: