New command "pisi blame"

$ pisi blame kernel
Ad: kernel, versiyon: 2.6.30_rc8, sürüm: 120
Package Maintainer: Ozan Çağlayan <ozan@pardus.org.tr>
Update Date: 2009-06-03

- Version bump to 2.6.30_rc8-git1 which contains the latest DRM fixes,
                - Add DRM patchset from Fatih,
                - Add CRYPTO_LZMA support from OpenWRT.

or a package release can be given:

$ pisi blame -r 29 kdebase
Ad: kdebase, versiyon: 4.2.3, sürüm: 29
Package Maintainer: Gökçen Eraslan <gokcen@pardus.org.tr>
Update Date: 2009-05-08

Add patches from Kubuntu about dolphin and folderview.
This commit is contained in:
Faik Uygur
2009-06-23 07:30:39 +00:00
parent f617c0a8e2
commit 5a28e623f9
2 changed files with 64 additions and 0 deletions
+63
View File
@@ -0,0 +1,63 @@
# -*- coding:utf-8 -*-
#
# Copyright (C) 2009, TUBITAK/UEKAE
#
# This program is free software; you can redistribute it and/or modify it under
# the terms of the GNU General Public License as published by the Free
# Software Foundation; either version 2 of the License, or (at your option)
# any later version.
#
# Please read the COPYING file.
#
import optparse
import gettext
__trans = gettext.translation('pisi', fallback=True)
_ = __trans.ugettext
import pisi.cli.command as command
import pisi.context as ctx
import pisi.api
import pisi.db
class Blame(command.Command):
__doc__ = _("""Info about the package owner
Usage: blame <package> ... <package>
""")
__metaclass__ = command.autocommand
def __init__(self, args=None):
super(Blame, self).__init__(args)
self.packagedb = pisi.db.packagedb.PackageDB()
name = ("blame", "bl")
def options(self):
group = optparse.OptionGroup(self.parser, _("blame options"))
group.add_option("-r", "--release", action="store", type="int", help=_("Blame for the given release"))
self.parser.add_option_group(group)
def run(self):
self.init(database=False, write=False)
for package in self.args:
if self.packagedb.has_package(package):
pkg = self.packagedb.get_package(package)
release = ctx.get_option('release')
if not release:
self.print_package_info(pkg)
else:
for hno, update in enumerate(pkg.history):
if int(update.release) == release:
self.print_package_info(pkg, hno)
def print_package_info(self, package, hno=0):
s = _('Name: %s, version: %s, release: %s\n') % (
package.name, package.history[hno].version, package.history[hno].release)
s += _('Package Maintainer: %s <%s>\n') % (unicode(package.source.packager.name), package.source.packager.email)
s += _('Update Date: %s\n' % package.history[hno].date)
s += _('\n%s\n' % package.history[hno].comment)
print s
+1
View File
@@ -21,6 +21,7 @@ import pisi
import pisi.cli import pisi.cli
import pisi.cli.command as command import pisi.cli.command as command
import pisi.cli.addrepo import pisi.cli.addrepo
import pisi.cli.blame
import pisi.cli.build import pisi.cli.build
import pisi.cli.check import pisi.cli.check
import pisi.cli.clean import pisi.cli.clean