Raphael Hertzog wrote:
On Fri, 22 Feb 2008, Josselin Mouette wrote:
Le vendredi 22 février 2008 à 00:07 +0100, Frank Lichtenheld a écrit
:
On Thu, Feb 21, 2008 at 09:47:21PM +0000, Adam D. Barratt wrote:
debchange simply parses the output of dpkg-parsechangelog(1) in
order to derive the changes. dpkg-pc is stripping the whitespace
before debchange begins processing it; I'm therefore reassigning
the bug.

I really fail to see a good reason why it shouldn't.

Because it introduces differences to some lines in the changelog in a
completely unrelated commit, which makes history harder to use.

Huh? What tool is reinjecting the output of dpkg-parsechangelog into
debian/changelog ?

debchange (see Subject: ;-)

Specifically, when editing or appending to an existing changelog stanza (i.e. not using -i or -v) debchange parses the result of dpkg-parsechangelog in to a number of fields, including the changes. The latter is then modified, for example to add the new entry, update the trailer line, change the distribution, urgency and so on if required, add multi-maintainer headers and then written to the new changelog file, followed by the remainder of the changelog (i.e. the contents of the original changelog from the second changelog stanza onwards.

As far as I can see, it's /always/ been like that. At the very least, the earliest revision in svn (from devscripts 2.7.95.1 in December 2003) essentially does:

[where %changelog is populated from the output of dpkg-parsechangelog, O is debian/changelog.dch and S is debian/changelog]

   my $CHANGES=$changelog{'Changes'};
   [...]
   print O $CHANGES;
   [output the new entry or entry stub to O]
   print O "\n -- $MAINTAINER <$EMAIL>  $DATE\n";

   # Copy the rest of the changelog file to new one
   $line=-1;
   while (<S>) { $line++; last if /^ --/; }
   # Slurp the rest....
   local $/ = undef;
   print O <S>;

Adam




--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to