[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Binary-only uploads cause dangling 'Source:' reference in .deb's (Was: Re: Why Katie thinks it's an NMU?)

On Fri, Apr 02, 2004 at 04:29:54PM +0200, Jeroen van Wolffelaar wrote:
> On Fri, Apr 02, 2004 at 12:28:32PM +0100, Colin Watson wrote:
> > On Fri, Apr 02, 2004 at 11:53:43AM +0200, Jeroen van Wolffelaar wrote:
> > > Any .deb indicates its source, including binary-only NMU's,
> > 
> > I'm afraid you're wrong there; I have some binNMUed packages here and
> > they do *not* indicate the source version.
> > 
> >   $ dpkg -I liboo2c_1.5.9-3.0.1_powerpc.deb | grep Source
> >    Source: oo2c
> > 
> > I know of no non-heuristic way to find the exact source version
> > associated with a binary-only NMU.
> That is because the source _was_ changed for this binary only NMU:
> (from the changelog:)
> oo2c (1.5.9-3.0.1) unstable; urgency=low
>   * Binary-only NMU for powerpc.
>   * Really build for libgc1, not libgc6c102.
>  -- Colin Watson <cjwatson@debian.org>  Thu,  6 Nov 2003 12:18:19 +0000
> And, the version at the first line of the changelog, is the source
> version. So, the dpkg-genchanges and dpkg-buildpackage scripts take that
> version as source version, and by uploading the thus produced binary
> without this changed (!) source, you get a binary without corresponding
> source.

I don't know if you realize this, but *all* binary-only NMUs currently
are performed this way. This is nothing remotely new, and I didn't do
anything non-standard. The point is that new source isn't uploaded, and
the changelog entry is considered sufficiently minor not to worry about.

> - A binary upload is to be performed indeed binary-only, that is, no
>   changes to the source beforehand (thus, also no change to the
>   changelog). To build a binary NMU this way, one needs to override the
>   .deb version at dpkg-gencontrol time. Can be done by a hack in
>   'rules' (hack, because this _is_ a source change...), or making some
>   kind of interface to that, so that dpkg-gencontrol sets version of
>   1.2-1.0.1 if for example environment orders it to do so (enviroment
>   var is set by dpkg-buildpackage in respond to some command-line
>   option).
>   Problem: rebuild isn't documented in changelog

You really do have to update the changelog, IMHO; if nothing else
something somewhere needs to say why you're making the binNMU.

Colin Watson                                  [cjwatson@flatline.org.uk]

Reply to: