On Sunday, July 29, 2012 at 4:12 PM, Andrew Gerrand wrote:
> Neat project.
thanks!
> The way you have laid out the package is unidiomatic, though. You
> shouldn't require users of your program to change their GOPATH.
>
> Instead of the paths
>
>
github.com/cactus/go-camo/src/go-camo (
http://github.com/cactus/go-camo/src/go-camo)
>
github.com/cactus/go-camo/src/go-camo/camoproxy (
http://github.com/cactus/go-camo/src/go-camo/camoproxy)
>
> and the import
>
> import "go-camo/camoproxy"
>
> you should drop the "src/go-camo" components, giving the paths
>
>
github.com/cactus/go-camo (
http://github.com/cactus/go-camo)
>
github.com/cactus/go-camo/camoproxy (
http://github.com/cactus/go-camo/camoproxy)
>
> and the import
>
> import "
github.com/cactus/go-camo/camoproxy (
http://github.com/cactus/go-camo/camoproxy)"
>
> With these changes, I can install go-camo with one command:
>
> go get
github.com/cactus/go-camo (
http://github.com/cactus/go-camo)
I had asked a while back about conventions for layout, and got no response. Thanks for the tips.
As this is meant to be a standalone binary and not a library, I was a little unsure about making it 'go get'-able vs a git checkout and an `. bash.envs` type distribution. For other go projects that are meant to be consumed as libraries, I have gone with a far more conventional layout.
Do you think it is worth while making the code 'go get'-able for development, given that above?
I imagine at some point I will add a binary as well, compiled on various systems for ease of use by people not interested in the codebase.
Thanks again for the feedback.