Hi!

On Wed, 2017-10-04 at 10:23:07 -0700, Jonathan Nieder wrote:
> Nicholas Brown wrote:
> > /usr/share/perl5/Dpkg/Source/Package/V3/Git.pm regularly calls out to git 
> > using
> > "system('git',...." yet libdpkg-perl does not Require or even Recommend that
> > Git is installed.

Ah, indeed. The same applies to the bzr based format.

> > This makes using dpkg-source with the 3.0 (git) format fail, for example in 
> > a
> > automatically build chroot created to build a source package in this 
> > format, as
> > git is missing to extract the package.
> > It can be worked around by explcitly installing git in the build chroot.

Yeah. I'll be adding the missing dependencies as Suggests, because
these formats are explicitly marked as experimental. Which means it
will not really fix your problem, but at least will get enough
metadata around.

> > I'd guess the that libdpkg-perl should either Require or Recommend that git 
> > is
> > installed.
> >
> > [    5s] now finalizing build dir...
> > [    7s] dpkg-source: warning: extracting unsigned source package
> > (/usr/src/packages/test-package_1.0.0.dsc)
> > [    7s] dpkg-source: info: extracting test-package in 
> > /usr/src/packages/BUILD
> > [    7s] dpkg-source: info: cloning test-package_1.0.0.git
> > [    7s] Can't exec "git": No such file or directory at
> > /usr/share/perl5/Dpkg/Source/Package/V3/Git.pm line 246.
> > [    7s] dpkg-source: error: git bundle failed with unknown exit code -1

There's already code to do earily backend program existence checks for
both bzr and git, but it does not get called. I'll fix that too.

> Since lidpkg-perl is a library that provides lots of useful
> functionality without git, I think I would prefer that this be a
> Suggests, not a Recommends.  I see that libdpkg-perl already has
> "Recommends: xz-utils", so I may be fighting against the tide.  (Maybe
> the Debian archive not accepting "3.0 (git)" packages changes the
> calculus somehow.  Not sure.)

Yeah, see above.

> I also wonder if it's possible to improve the error message when git
> is not installed.

Indeed.

Thanks,
Guillem

Reply via email to