* compare-packages: added script to compare the contents of 'old' and 'new'

binary packages of the same source package. Useful to spot moved files,
  dropped files, etc.
* README: briefly document added scripts.
This commit is contained in:
Daniel Holbach 2007-09-14 11:24:45 +02:00
parent 50bdd93183
commit ad934233e9
4 changed files with 92 additions and 1 deletions

13
README
View File

@ -10,12 +10,19 @@ check-symbols <package> [<directory>]
files in all binary packages of <package>. files in all binary packages of <package>.
<directory> is not mandatory and set to /var/cache/pbuilder/result by default. <directory> is not mandatory and set to /var/cache/pbuilder/result by default.
compare-packages <source package> [<directory>]
... will compare the contents of the binary packages of <source
package> in the current directory with those in <directory>
dch-repeat [--help] dch-repeat [--help]
... will repeat a change log into an older release. ... will repeat a change log into an older release.
get-branches <directory> <team> [checkout|branch] get-branches <directory> <team> [checkout|branch]
... will branch / checkout all the Bazaar branches in a Launchpad team. ... will branch / checkout all the Bazaar branches in a Launchpad team.
hugdaylist [-n <number>] <bug list url>
... will create a list of <number> bug list for a hug day listing
mk-sbuild-lv mk-sbuild-lv
... will create LVM snapshot chroots via schroot and sbuild. It assumes that ... will create LVM snapshot chroots via schroot and sbuild. It assumes that
sbuild has not be installed and configured before. sbuild has not be installed and configured before.
@ -24,6 +31,12 @@ pbuilder-dist [create|update|build|clean|login|execute]
... is a wrapper to use pbuilder with many different distributions / versions. ... is a wrapper to use pbuilder with many different distributions / versions.
It has to be renamed to something like pbuilder-feisty, pbuilder-gutsy, etc. It has to be renamed to something like pbuilder-feisty, pbuilder-gutsy, etc.
ppaput [-n] <dput location> [<debuild options>]
... will build a source package using <debuild options>, upload it
to <dput location> and follow up on specified bugs, make sure the
sponsoring process is followed. Also it will file a new bug, if
'-n' is used.
pull-debian-debdiff <package> <version> pull-debian-debdiff <package> <version>
... will attempt to find and download a specific version of a Debian package ... will attempt to find and download a specific version of a Debian package
and its immediate parent to generate a debdiff. and its immediate parent to generate a debdiff.

68
compare-packages Executable file
View File

@ -0,0 +1,68 @@
#!/usr/bin/python
#
# Copyright 2007, Canonical, Daniel Holbach
#
# GPL 3
import os
import sys
import glob
USAGE = \
"""compare-packages <source-package> [<directory>]
compares contents of binary packages of <source-package> in the current
directory with those in <directory>"""
def check_args():
directory = "/var/cache/pbuilder/result"
sourcepackage = ""
if len(sys.argv) < 2:
print USAGE
sys.exit(1)
if sys.argv[1] in [ '-h', '--help' ]:
print USAGE
sys.exit(0)
if len(sys.argv) > 1:
sourcepackage = sys.argv[1]
if len(sys.argv) > 2:
directory = sys.argv[2]
return (sourcepackage, directory)
def main():
(sourcepackage, directory) = check_args()
(dummy, output, dummy) = os.popen3("apt-cache showsrc %s | grep ^Binary" % \
(sourcepackage))
binarypackages = output.read().split(":")[1].strip().split(", ")
if not os.path.exists("/usr/bin/debdiff"):
print >> sys.stderr, \
"'/usr/bin/debdiff' not found, please install 'devscripts'."
sys.exit(1)
if not os.path.isdir(directory):
print >> sys.stderr, "Directory %s not found." % directory
sys.exit(1)
for package in binarypackages:
old = glob.glob("./%s*.deb" % package)
new = glob.glob("%s/%s*.deb" % (directory, package))
if not new or not old:
print "Skipping %s, no matching new and old package found." % package
else:
print "Comparing %s and %s" % (old[0], new[0])
sys.stdout.flush()
os.system("debdiff %s %s" % (old[0], new[0]))
print ''
print '---'
if __name__ == '__main__':
main()

9
debian/changelog vendored
View File

@ -1,3 +1,12 @@
ubuntu-dev-tools (0.10) gutsy; urgency=low
* compare-packages: added script to compare the contents of 'old' and 'new'
binary packages of the same source package. Useful to spot moved files,
dropped files, etc.
* README: briefly document added scripts.
-- Daniel Holbach <daniel.holbach@ubuntu.com> Fri, 14 Sep 2007 11:23:36 +0200
ubuntu-dev-tools (0.9) gutsy; urgency=low ubuntu-dev-tools (0.9) gutsy; urgency=low
* Added submittodebian.1 * Added submittodebian.1

View File

@ -27,7 +27,8 @@ setup(name='ubuntu-dev-tools',
'suspicious-source', 'suspicious-source',
'ppaput', 'ppaput',
'requestsync', 'requestsync',
'hugdaylist' 'hugdaylist',
'compare-packages'
], ],
) )