[pkg-go] Bug#827226: Bug#827226: incorrect preparation of build directory when pre-installed package is re-built

Michael Hudson-Doyle michael.hudson at canonical.com
Tue Jun 14 00:14:56 UTC 2016


On 14 June 2016 at 10:11, Dmitry Smirnov <onlyjob at debian.org> wrote:
> Package: dh-golang
> Version: 1.17
> Severity: normal
>
> --buildsystem=golang does a nice job preparing build directory in
> `dh_auto_configure` by symlinking source packages from under
> "/usr/share/gocode/src" to directory specified with "--builddirectory"
> argument.
>
> However it works incorrectly when $(DH_GOPKG) package (i.e. current package
> to build) is pre-installed because in such case installed and new version of
> the package are merged in build directory.
>
> Suppose you are building a "golang-github-foo-bar" package which no longer
> provides "github.com/foo/bar/obsolete-feature". If previous version of the
> package is installed then dh_golang incorrectly symlink
> "/usr/share/gocode/src/github.com/foo/bar/obsolete-feature" into build
> directory.

Ah heh, yes I can see how this would be very confusing to debug.

> This problem should be easy to detect and avoid as dh_golang already knows
> which package not to link from $(DH_GOPKG) or XS-Go-Import-Path header.
> I suppose we just need to ignore/skip pre-installed package which is build.

Should be easy enough.

> Also it would be nice to produce a warning to notify maintainer about
> potential problem.

If the problem is fixed as you describe, I'm not sure what the point
of the warning would be?

Cheers,
mwh

> Arguably circular dependencies are not in scope of what dh_golang should be
> doing but there are cases when package can be re-built (staged) on
> maintainer's machine in presence of previous version of the same package.
> Correct handling of such situations would be useful.
>
> Thanks.
>
> --
> Regards,
>  Dmitry Smirnov
>  GPG key : 4096R/53968D1B
>
> ---
>
> Truth — Something somehow discreditable to someone.
>         -- H. L. Mencken, 1949
>
> _______________________________________________
> Pkg-go-maintainers mailing list
> Pkg-go-maintainers at lists.alioth.debian.org
> http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-go-maintainers



More information about the Pkg-go-maintainers mailing list