diff options
Diffstat (limited to 'packages/models.py')
-rw-r--r-- | packages/models.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/packages/models.py b/packages/models.py index 7bcdc000..f830aade 100644 --- a/packages/models.py +++ b/packages/models.py @@ -321,6 +321,16 @@ class Update(models.Model): return Package.objects.normal().filter( pkgname=self.pkgname, arch=self.arch) + def replacements(self): + pkgs = Package.objects.normal().filter( + replaces__name=self.pkgname) + if not self.arch.agnostic: + # make sure we match architectures if possible + arches = set(Arch.objects.filter(agnostic=True)) + arches.add(self.arch) + pkgs = pkgs.filter(arch__in=arches) + return pkgs + def __unicode__(self): return u'%s of %s on %s' % (self.get_action_flag_display(), self.pkgname, self.created) |