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: