From 465c2f29ac89b07fa800ac063fb3d54086c327bf Mon Sep 17 00:00:00 2001 From: CentOS Buildsys Date: Jul 22 2013 15:47:26 +0000 Subject: import dstat-0.7.2-11.el7.src.rpm --- diff --git a/.dstat.metadata b/.dstat.metadata new file mode 100644 index 0000000..25275d7 --- /dev/null +++ b/.dstat.metadata @@ -0,0 +1 @@ +10baf061e3d38e1234fb99182fc53509adf07269 SOURCES/dstat-0.7.2.tar.bz2 diff --git a/README.md b/README.md deleted file mode 100644 index 0e7897f..0000000 --- a/README.md +++ /dev/null @@ -1,5 +0,0 @@ -The master branch has no content - -Look at the c7 branch if you are working with CentOS-7, or the c4/c5/c6 branch for CentOS-4, 5 or 6 - -If you find this file in a distro specific branch, it means that no content has been checked in yet diff --git a/SOURCES/dstat-0.6.8-dbus.patch b/SOURCES/dstat-0.6.8-dbus.patch new file mode 100644 index 0000000..b0e3995 --- /dev/null +++ b/SOURCES/dstat-0.6.8-dbus.patch @@ -0,0 +1,37 @@ +diff -up dstat-0.6.8/plugins/dstat_dbus.py.dbus dstat-0.6.8/plugins/dstat_dbus.py +--- dstat-0.6.8/plugins/dstat_dbus.py.dbus 2007-05-12 06:09:45.000000000 +0200 ++++ dstat-0.6.8/plugins/dstat_dbus.py 2008-09-16 13:26:32.000000000 +0200 +@@ -18,21 +18,23 @@ class dstat_dbus(dstat): + try: + global dbus + import dbus +- try: +- self.sysbus = dbus.Bus(dbus.Bus.TYPE_SYSTEM).get_service('org.freedesktop.DBus').get_object('/org/freedesktop/DBus', 'org.freedesktop.DBus') +- try: +- self.sesbus = dbus.Bus(dbus.Bus.TYPE_SESSION).get_service('org.freedesktop.DBus').get_object('/org/freedesktop/DBus', 'org.freedesktop.DBus') +- except: +- self.sesbus = None +- except: +- raise Exception, 'Unable to connect to dbus message bus' + except: + raise Exception, 'Needs python-dbus module' ++ try: ++ self.sysbus = dbus.Interface(dbus.SystemBus().get_object('org.freedesktop.DBus', '/org/freedesktop/DBus'), 'org.freedesktop.DBus') ++ except: ++ raise Exception, 'Unable to connect to dbus message bus' ++ try: ++ self.sesbus = dbus.Interface(dbus.SessionBus().get_object('org.freedesktop.DBus', '/org/freedesktop/DBus'), 'org.freedesktop.DBus') ++ except: ++ self.sesbus = None ++ ++ return True + + def extract(self): +- self.val['system'] = len(self.sysbus.ListServices()) - 1 ++ self.val['system'] = len(self.sysbus.ListNames()) - 1 + try: +- self.val['session'] = len(self.sesbus.ListServices()) - 1 ++ self.val['session'] = len(self.sesbus.ListNames()) - 1 + except: + self.val['session'] = -1 + # print dir(b); print dir(s); print dir(d); print d.ListServices() diff --git a/SOURCES/dstat-0.7.2-bits.patch b/SOURCES/dstat-0.7.2-bits.patch new file mode 100644 index 0000000..3e9c7fd --- /dev/null +++ b/SOURCES/dstat-0.7.2-bits.patch @@ -0,0 +1,199 @@ +diff -up dstat-0.7.2/docs/dstat.1.bits dstat-0.7.2/docs/dstat.1 +--- dstat-0.7.2/docs/dstat.1.bits 2010-06-15 00:26:19.000000000 +0200 ++++ dstat-0.7.2/docs/dstat.1 2012-09-03 14:26:57.930801564 +0200 +@@ -137,6 +137,9 @@ expand \-C, \-D, \-I, \-N and \-S discov + \-v, \-\-vmstat + equals \-pmgdsc \-D total + .TP ++\-\-bits ++force bits for values expressed in bytes ++.TP + \-\-float + force float values on screen (mutual exclusive with + \fB\-\-integer\fR) +diff -up dstat-0.7.2/dstat.bits dstat-0.7.2/dstat +--- dstat-0.7.2/dstat.bits 2010-06-11 08:08:01.000000000 +0200 ++++ dstat-0.7.2/dstat 2012-09-03 14:23:42.056447576 +0200 +@@ -72,6 +72,7 @@ pluginpath = [ + class Options: + def __init__(self, args): + self.args = args ++ self.bits = False + self.blackonwhite = False + self.count = -1 + self.cpulist = None +@@ -112,7 +113,7 @@ class Options: + + try: + opts, args = getopt.getopt(args, 'acdfghilmno:prstTvyC:D:I:M:N:S:V', +- ['all', 'all-plugins', 'bw', 'blackonwhite', 'debug', ++ ['all', 'all-plugins', 'bits', 'bw', 'blackonwhite', 'debug', + 'filesystem', 'float', 'full', 'help', 'integer', + 'list', 'mods', 'modules', 'nocolor', 'noheaders', 'noupdate', + 'output=', 'pidfile=', 'profile', 'version', 'vmstat'] + allplugins) +@@ -175,6 +176,8 @@ class Options: + plugins = {}.fromkeys(allplugins).keys() + plugins.sort() + self.plugins += plugins ++ elif opt in ['--bits']: ++ self.bits = True + elif opt in ['--bw', '--black-on-white']: + self.blackonwhite = True + elif opt in ['--debug']: +@@ -301,6 +304,7 @@ Dstat options: + -f, --full automatically expand -C, -D, -I, -N and -S lists + -v, --vmstat equals -pmgdsc -D total + ++ --bits force bits for values expressed in bytes + --float force float values on screen + --integer force integer values on screen + +@@ -428,10 +432,10 @@ class dstat: + ret = theme['title'] + if isinstance(self.name, types.StringType): + width = self.statwidth() +- return ret + self.name[0:width].center(width).replace(' ', '-') + theme['default'] ++ return ret + self.name[0:width].center(width, char['space']).replace(' ', '-') + theme['default'] + for i, name in enumerate(self.name): + width = self.colwidth() +- ret = ret + name[0:width].center(width).replace(' ', '-') ++ ret = ret + name[0:width].center(width, char['space']).replace(' ', '-') + if i + 1 != len(self.name): + if op.color: + ret = ret + theme['frame'] + char['dash'] + theme['title'] +@@ -443,13 +447,13 @@ class dstat: + ret = '' + if isinstance(self.name, types.StringType): + for i, nick in enumerate(self.nick): +- ret = ret + theme['subtitle'] + nick[0:self.width].center(self.width) + theme['default'] ++ ret = ret + theme['subtitle'] + nick[0:self.width].center(self.width, char['space']) + theme['default'] + if i + 1 != len(self.nick): ret = ret + char['space'] + return ret + else: + for i, name in enumerate(self.name): + for j, nick in enumerate(self.nick): +- ret = ret + theme['subtitle'] + nick[0:self.width].center(self.width) + theme['default'] ++ ret = ret + theme['subtitle'] + nick[0:self.width].center(self.width, char['space']) + theme['default'] + if j + 1 != len(self.nick): ret = ret + char['space'] + if i + 1 != len(self.name): ret = ret + theme['frame'] + char['colon'] + return ret +@@ -679,7 +683,7 @@ class dstat_cpu24(dstat): + class dstat_disk(dstat): + def __init__(self): + self.nick = ('read', 'writ') +- self.type = 'd' ++ self.type = 'b' + self.diskfilter = re.compile('^(dm-\d+|md\d+|[hsv]d[a-z]+\d+)$') + self.open('/proc/diskstats') + self.cols = 2 +@@ -745,7 +749,7 @@ class dstat_disk(dstat): + class dstat_disk24(dstat): + def __init__(self): + self.nick = ('read', 'writ') +- self.type = 'd' ++ self.type = 'b' + self.diskfilter = re.compile('(dm-\d+|md\d+|[hsv]d[a-z]+\d+)') + self.open('/proc/partitions') + if self.fd and not self.discover: +@@ -810,7 +814,7 @@ class dstat_disk24(dstat): + class dstat_disk24old(dstat): + def __init__(self): + self.nick = ('read', 'writ') +- self.type = 'd' ++ self.type = 'b' + self.diskfilter = re.compile('(dm-\d+|md\d+|[hsv]d[a-z]+\d+)') + self.regexp = re.compile('^\((\d+),(\d+)\):\(\d+,\d+,(\d+),\d+,(\d+)\)$') + self.open('/proc/stat') +@@ -1188,7 +1192,7 @@ class dstat_mem(dstat): + class dstat_net(dstat): + def __init__(self): + self.nick = ('recv', 'send') +- self.type = 'd' ++ self.type = 'b' + self.totalfilter = re.compile('^(lo|bond\d+|face|.+\.\d+)$') + self.open('/proc/net/dev') + self.cols = 2 +@@ -1599,6 +1603,7 @@ char = { + 'space': ' ', + 'dash': '-', + 'plus': '+', ++ 'underscore': '_', + } + + def set_theme(): +@@ -1863,7 +1868,7 @@ def cprintlist(varlist, type, width, sca + ret = sep = '' + for var in varlist: + ret = ret + sep + cprint(var, type, width, scale) +- sep = ' ' ++ sep = char['space'] + return ret + + def cprint(var, type = 'f', width = 4, scale = 1000): +@@ -1882,14 +1887,18 @@ def cprint(var, type = 'f', width = 4, s + ### If this is a negative value, return a dash + if var < 0: + if unit: +- return theme['error'] + '-'.rjust(width) + ' ' + theme['default'] ++ return theme['error'] + '-'.rjust(width, char['space']) + char['space'] + theme['default'] + else: +- return theme['error'] + '-'.rjust(width) + theme['default'] ++ return theme['error'] + '-'.rjust(width, char['space']) + theme['default'] + +- if base == 1024: +- units = ('B', 'k', 'M', 'G', 'T', 'P', 'E', 'Z', 'Y') ++ if base != 1024: ++ units = (char['space'], 'k', 'M', 'G', 'T', 'P', 'E', 'Z', 'Y') ++ elif op.bits and type in ('b', ): ++ units = ('b', 'k', 'M', 'G', 'T', 'P', 'E', 'Z', 'Y') ++ base = scale = 1000 ++ var = var * 8.0 + else: +- units = (' ', 'k', 'M', 'G', 'T', 'P', 'E', 'Z', 'Y') ++ units = ('B', 'k', 'M', 'G', 'T', 'P', 'E', 'Z', 'Y') + + if step == op.delay: + colors = theme['colors_lo'] +@@ -1901,11 +1910,11 @@ def cprint(var, type = 'f', width = 4, s + cunit = theme['unit_hi'] + + ### Convert value to string given base and field-length +- if op.integer and type in ('d', 'p', 'f'): ++ if op.integer and type in ('b', 'd', 'p', 'f'): + ret, c = dchg(var, width, base) +- elif op.float and type in ('d', 'p', 'f'): ++ elif op.float and type in ('b', 'd', 'p', 'f'): + ret, c = fchg(var, width, base) +- elif type in ('d', 'p'): ++ elif type in ('b', 'd', 'p'): + ret, c = dchg(var, width, base) + elif type in ('f'): + ret, c = fchg(var, width, base) +@@ -1925,23 +1934,23 @@ def cprint(var, type = 'f', width = 4, s + color = colors[int(var/scale)%len(colors)] + elif type in ('p'): + color = colors[int(round(var)/scale)%len(colors)] +- elif type in ('d', 'f'): ++ elif type in ('b', 'd', 'f'): + color = colors[c%len(colors)] + else: + color = ctext + + ### Justify value to left if string + if type in ('s',): +- ret = color + ret.ljust(width) ++ ret = color + ret.ljust(width, char['space']) + else: +- ret = color + ret.rjust(width) ++ ret = color + ret.rjust(width, char['space']) + + ### Add unit to output + if unit: + if c != -1 and round(var) != 0: + ret += cunit + units[c] + else: +- ret += ' ' ++ ret += char['space'] + + return ret + diff --git a/SOURCES/dstat-0.7.2-disk-path.patch b/SOURCES/dstat-0.7.2-disk-path.patch new file mode 100644 index 0000000..0f0269f --- /dev/null +++ b/SOURCES/dstat-0.7.2-disk-path.patch @@ -0,0 +1,45 @@ +diff -up dstat-0.7.2/dstat.disk-path dstat-0.7.2/dstat +--- dstat-0.7.2/dstat.disk-path 2011-12-12 17:25:23.000000000 +0100 ++++ dstat-0.7.2/dstat 2011-12-12 16:15:33.000000000 +0100 +@@ -130,7 +130,7 @@ class Options: + elif opt in ['-d']: + self.plugins.append('disk') + elif opt in ['-D']: +- self.disklist = arg.split(',') ++ self.disklist = self.get_disklist(arg) + elif opt in ['--filesystem']: + self.plugins.append('fs') + elif opt in ['-g']: +@@ -240,6 +240,32 @@ class Options: + print 'dstat: delay must be an integer, greater than zero' + sys.exit(1) + ++ def get_disklist(self, disks): ++ disklist = disks.split(',') ++ ret = [] ++ for disk in disklist: ++ # e.g. /dev/sda1 ++ if disk[:5] == '/dev/': ++ # file or symlink ++ if os.path.exists(disk): ++ # e.g. /dev/disk/by-uuid/15e40cc5-85de-40ea-b8fb-cb3a2eaf872 ++ if os.path.islink(disk): ++ target = os.readlink(disk) ++ # convert relative pathname to absolute ++ if target[0] != '/': ++ target = os.path.join(os.path.dirname(disk), target) ++ target = os.path.normpath(target) ++ print 'dstat: symlink %s -> %s' % (disk, target) ++ disk = target ++ # trim leading /dev/ ++ disk = disk[5:] ++ ret.append(disk) ++ else: ++ print 'dstat: %s does not exist' % disk ++ else: ++ ret.append(disk) ++ return ret ++ + def version(self): + print 'Dstat %s' % VERSION + print 'Written by Dag Wieers ' diff --git a/SOURCES/dstat-0.7.2-man.patch b/SOURCES/dstat-0.7.2-man.patch new file mode 100644 index 0000000..29ee753 --- /dev/null +++ b/SOURCES/dstat-0.7.2-man.patch @@ -0,0 +1,23 @@ +diff -up dstat-0.7.2/docs/dstat.1.man dstat-0.7.2/docs/dstat.1 +--- dstat-0.7.2/docs/dstat.1.man 2012-09-03 14:27:43.000000000 +0200 ++++ dstat-0.7.2/docs/dstat.1 2012-09-03 14:29:29.472736887 +0200 +@@ -90,7 +90,7 @@ enable system stats (interrupts, context + \-\-aio + enable aio stats (asynchronous I/O) + .TP +-\-\-fs ++\-\-fs, \-\-filesystem + enable filesystem stats (open files, inodes) + .TP + \-\-ipc +diff -up dstat-0.7.2/dstat.man dstat-0.7.2/dstat +--- dstat-0.7.2/dstat.man 2012-09-03 14:27:43.000000000 +0200 ++++ dstat-0.7.2/dstat 2012-09-03 14:29:54.683393579 +0200 +@@ -339,6 +339,7 @@ Dstat options: + --noheaders disable repetitive headers + --noupdate disable intermediate updates + --output file write CSV output to file ++ --profile show profiling statistics when exiting dstat + + delay is the delay in seconds between each update (default: 1) + count is the number of updates to display before exiting (default: unlimited) diff --git a/SPECS/dstat.spec b/SPECS/dstat.spec new file mode 100644 index 0000000..e65830b --- /dev/null +++ b/SPECS/dstat.spec @@ -0,0 +1,239 @@ +Summary: Versatile resource statistics tool +Name: dstat +Version: 0.7.2 +Release: 11%{?dist} +License: GPLv2 +Group: System Environment/Base +URL: http://dag.wieers.com/home-made/dstat/ + +Source: http://dag.wieers.com/home-made/dstat/dstat-%{version}.tar.bz2 + +# Is there any BZ for this ? +Patch0: dstat-0.6.8-dbus.patch + +# patch adding options switching from bytes to bits when displaying network and/or disk stats +# Is there any BZ for this ? +Patch1: dstat-0.7.2-bits.patch + +# This patch enables to specify disks with path to device file +# (or with symbolic link to the device file) +# For example: +# dstat -d -D /dev/vda2 +# dstat -d -D /dev/disk/by-id/scsi-SATA_Hitachi_HDP7250_GEA534RF3YYMMA-part3 +# dstat -d -D /dev/disk/by-path/pci-0000:00:06.0-virtio-pci-virtio3-part2 +# dstat -d -D /dev/disk/by-uuid/6df45ed6-c4ad-4054-955d-b15102f2c566 +# (BZ#766443) +Patch2: dstat-0.7.2-disk-path.patch + +# Fixed inconsistency between man page and help (#852797) +Patch3: dstat-0.7.2-man.patch + +BuildArch: noarch +BuildRequires: python2-devel +Requires: python + +%description +Dstat is a versatile replacement for vmstat, iostat, netstat and ifstat. +Dstat overcomes some of their limitations and adds some extra features, +more counters and flexibility. Dstat is handy for monitoring systems +during performance tuning tests, benchmarks or troubleshooting. + +Dstat allows you to view all of your system resources instantly, you +can eg. compare disk usage in combination with interrupts from your +IDE controller, or compare the network bandwidth numbers directly +with the disk throughput (in the same interval). + +Dstat gives you detailed selective information in columns and clearly +indicates in what magnitude and unit the output is displayed. Less +confusion, less mistakes. + +%prep +%setup -q +%patch0 -p1 -b .dbus +%patch1 -p1 -b .bits +%patch2 -p1 -b .disk-path +%patch3 -p1 -b .man + +sed -i -e '1s,^#!/usr/bin/env python,#!/usr/bin/python,' dstat + +%build +# Make sure the docs are in unix format +%{__sed} -i 's/\r//' docs/*.html +# Remove the broken symlink +%{__rm} -rf examples/dstat.py +%{__chmod} a-x examples/* + +%install +%{__make} install DESTDIR=%{buildroot} +# Install the man page +cd docs +%{__make} install DESTDIR=%{buildroot} +# Plugins .py files are modules, not executable python +%{__chmod} a-x %{buildroot}/%{_datadir}/dstat/*.py +%{__chmod} a+x %{buildroot}/%{_datadir}/dstat/dstat.py + + +%files +%dir %{_datadir}/dstat +%doc AUTHORS ChangeLog COPYING README TODO docs/*.html docs/*.txt examples/ +%{_mandir}/man1/dstat.1* +%{_bindir}/dstat +%{_datadir}/dstat/*.py* + +%changelog +* Mon Jul 22 2013 Jiri Popelka - 0.7.2-11 +- change shebang to absolute path (#987015) + +* Wed Feb 13 2013 Fedora Release Engineering - 0.7.2-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Mon Sep 03 2012 Jiri Popelka - 0.7.2-9 +- use upstream's bits.patch +- fixed inconsistency between man page and help (#852797) + +* Wed Jul 18 2012 Fedora Release Engineering - 0.7.2-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Mon Jun 18 2012 Jiri Popelka - 0.7.2-7 +- fixed typo in bits.patch (#832683) + +* Fri Jan 13 2012 Fedora Release Engineering - 0.7.2-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Tue Nov 08 2011 Jiri Popelka - 0.7.2-5 +- enable to specify disks with path to device file or + with symbolic link to the device file (#766443) +- modernize spec + +* Tue Feb 08 2011 Fedora Release Engineering - 0.7.2-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Tue Aug 24 2010 Jan Zeleny - 0.7.2-3 +- patch adding options switching from bytes to bits when displaying + network and/or disk stats + +* Wed Aug 11 2010 David Malcolm - 0.7.2-2 +- recompiling .py files against Python 2.7 (rhbz#623287) + +* Mon Jun 28 2010 Jan Zeleny - 0.7.2-1 +- rebased to 0.7.2 + +* Mon Mar 01 2010 Jan Zeleny - 0.7.1-1 +- rebased to 0.7.1 + +* Mon Feb 22 2010 Jan Zeleny - 0.7.0-2 +- fixed syntax error in mysql_conn plugin + +* Thu Dec 03 2009 Jan Zeleny - 0.7.0-1 +- rebased to 0.7.0 + +* Fri Jul 24 2009 Fedora Release Engineering - 0.6.9-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Tue Feb 24 2009 Fedora Release Engineering - 0.6.9-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Tue Dec 23 2008 Zdenek Prikryl - 0.6.9-3 +- Fixed wrong total disk counts (#476935) + +* Thu Dec 04 2008 Ignacio Vazquez-Abrams - 0.6.9-2 +- Rebuild for Python 2.6 + +* Thu Dec 04 2008 Zdenek Prikryl - 0.6.9-1 +- Updated to 0.6.9 +- Fixed dbus module patch again + +* Mon Dec 01 2008 Ignacio Vazquez-Abrams - 0.6.8-2 +- Rebuild for Python 2.6 + +* Tue Sep 16 2008 Zdenek Prikryl - 0.6.8-1 +- Updated to 0.6.8 +- Fixed dbus module patch + +* Fri Apr 25 2008 Radek Brich - 0.6.7-3 +- fix dbus module (new dbus-python interface since FC4) + +* Thu Mar 27 2008 Radek Brich - 0.6.7-2 +- fixes for interrupt stats: + * traceback when called with unknown name of interrupt (bz#439143) + * allow '-I total' option (bz#439146) + +* Wed Mar 19 2008 Radek Brich - 0.6.7-1 +- Release 0.6.7 +- Drop upstream patches + +* Fri Jan 18 2008 Radek Brich - 0.6.6-3 +- Fix --nocolor and --raw (upstream patches) +- Fix errors in man page + +* Tue Sep 04 2007 Radek Brich - 0.6.6-2 +- Updated license tag. +- Spec clean up. + +* Tue May 01 2007 Scott Baker - 0.6.6-1 +- Bumped to latest release + +* Wed Apr 18 2007 Scott Baker - 0.6.5-1 +- Bumped to latest release + +* Tue Dec 12 2006 Scott Baker - 0.6.4-1 +- Bumped to 0.6.4 + +* Fri Aug 11 2006 Scott Baker - 0.6.3-5 +- Removed the execute permission from the examples directory +- Fixed the changelog to remove the replaceable %%clean + +* Tue Jul 25 2006 Scott Baker - 0.6.3-4 +- Removed some commeted lines in the .spec file that weren't needed +- Changed the permissions on the examples/* scripts +- Converted the HTML documentation to unix line endings +- Removed the erroneous commenting of the %%clean section of the .spec + +* Fri Jul 21 2006 Scott Baker - 0.6.3-3 +- Packaged for Fedora Extras. + +* Mon Jun 26 2006 Dag Wieers - 0.6.3-1 - 4303+/dries +- Updated to release 0.6.3. + +* Thu Mar 09 2006 Dag Wieers - 0.6.2-1 +- Updated to release 0.6.2. + +* Mon Sep 05 2005 Dag Wieers - 0.6.1-1 +- Updated to release 0.6.1. + +* Sun May 29 2005 Dag Wieers - 0.6.0-1 +- Updated to release 0.6.0. + +* Fri Apr 08 2005 Dag Wieers - 0.5.10-1 +- Updated to release 0.5.10. + +* Mon Mar 28 2005 Dag Wieers - 0.5.9-1 +- Updated to release 0.5.9. + +* Tue Mar 15 2005 Dag Wieers - 0.5.8-1 +- Updated to release 0.5.8. + +* Fri Dec 31 2004 Dag Wieers - 0.5.7-1 +- Updated to release 0.5.7. + +* Mon Dec 20 2004 Dag Wieers - 0.5.6-1 +- Updated to release 0.5.6. + +* Thu Dec 02 2004 Dag Wieers - 0.5.5-1 +- Updated to release 0.5.5. + +* Thu Nov 25 2004 Dag Wieers - 0.5.4-1 +- Updated to release 0.5.4. +- Use dstat15 if distribution uses python 1.5. + +* Sun Nov 21 2004 Dag Wieers - 0.5.3-1 +- Updated to release 0.5.3. + +* Sat Nov 13 2004 Dag Wieers - 0.5.2-1 +- Updated to release 0.5.2. + +* Thu Nov 11 2004 Dag Wieers - 0.5.1-1 +- Updated to release 0.5.1. + +* Tue Oct 26 2004 Dag Wieers - 0.4-1 +- Initial package. (using DAR)