15 Jun 2009 skvidal   » (Master)

munging rpm diff


For checking changes from one package to another we’ve discussed a better rpmdiff that wouldn’t report so many bogons in the filelists and provides, requires, obsoletes, conflicts.

After giving it a bit of a think I worked out a mungingdiff for pkgs.

It reports items that matter, not all the stuff you EXPECT to change. For example:

if the pkg goes from foo-1.1-1 to foo-1.2-1

and its provides change from:

Provides: fooball = 1.1-1

to

Provides: fooball = 1.2-1

it’s a little silly to report that in a diff. Same thing with filenames. If a bunch of files move from /usr/share/doc/foo-1.1 to /usr/share/doc/foo-1.2 but don’t change otherwise does it matter? No. Not in any functional way.

So I cobbled together a proof of concept that I’ll be moving internal to yum package objects so they can provide a diff between two pkg objects, I think.

http://skvidal.fedorapeople.org/misc/mungingdiff.py

Run it like:

mungingdiff.py pkg1 pkg2

a couple of minor things. It doesn’t return diffs between the name, arch, epoch, ver, release. It is working on the assumption that if you don’t know those things have changed then you’re Sorry out of Luck.

I also know the output sucks, big surprise.

Syndicated 2009-06-15 21:01:52 from journal/notes

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!