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

Bug#761105: debsources: on the fly package diff / debdiff



On Thu, Sep 11, 2014 at 03:48:38PM +0800, Paul Wise wrote:
> On Thu, Sep 11, 2014 at 2:58 PM, Stefano Zacchiroli wrote:
> 
> > We're gonna need it on debsources anyhow, in particular to implement the
> > "edit" feature suggested by Raphael Geissert. What we could do is to
> > factorize as much as possible the common parts in a common place, e.g.,
> > python-debian. But I'm not sure there is actually that *much* code to
> > write, considering that 1) we will probably invoke the real debdiff as
> > an external program anyhow and 2) I plan to delegate diff highlighting
> > to the javascript toolkit we already use.
> 
> I see, some factors I can think of:

So, from your examples I've realized that I've mentioned debdiff, but I
actually don't need it. Debsources currently have unpacked packages on
the filesystem, organized in per-version directories. So Debsources can
simply recursively diff the two directories, instead of using debdiff
(which AFAICT, doesn't even work on directories). We'll just need to
look into whether debdiff uses specific diff options that we want to use
as well, just to ensure that the output format is more or less the same.

(FWIW, this seems to be yet another good argument against some
hash-based file-layout, that we have been discussing in #761117.)

Most of the legitimate problems you've mentioned seems to be related to
source package format and, arguably, we won't have those problems with
Debsources, or at least not in the diffing part. (We will have them at
source package unpack time, of course.)

> > What else is there to be done?
> 
> Mainly having a full set of packages to debdiff between, from our
> discussions at DebConf14 it seems like you plan to get a copy of the
> snapshot archive anyway so maybe sources.d.n is indeed the right place
> to do this?

That's the plan yes, even though importing snapshot.d.o is a very
different feature/goal.

However, it is important to observe that sources.d.n still aims at being
source-package-only, whereas 1) debdiff is capable of diffing .deb and
2) .debs are indeed available on snapshot.d.o. So if you are interested
in diffing .debs, as of now the only place where to implement that
specific feature is snapshot.d.o.

Cheers.
-- 
Stefano Zacchiroli  . . . . . . .  zack@upsilon.cc . . . . o . . . o . o
Maître de conférences . . . . . http://upsilon.cc/zack . . . o . . . o o
Former Debian Project Leader  . . @zack on identi.ca . . o o o . . . o .
« the first rule of tautology club is the first rule of tautology club »

Attachment: signature.asc
Description: Digital signature


Reply to: