solvs = self.pool.search(pattern, satsolver.SEARCH_GLOB, "solvable:name")
for solv in solvs:
- pkgs.append(packages.SolvPackage(self, solv))
+ pkg = packages.SolvPackage(self, solv)
+ if pkg in pkgs:
+ continue
+
+ pkgs.append(pkg)
- return packages.PackageListing(pkgs)
+ return sorted(pkgs)
def search(self, pattern):
# Do the search.
def provides(self, patterns):
pkgs = []
for pattern in patterns:
- pkgs += self.repos.whatprovides(pattern)
-
- pkgs = packages.PackageListing(pkgs)
- #pkgs.unique()
-
- return pkgs
-
- def requires(self, patterns):
- pkgs = []
- for pattern in patterns:
- pkgs += self.repos.get_by_requires(pattern)
+ for pkg in self.repos.whatprovides(pattern):
+ if pkg in pkgs:
+ continue
- pkgs = packages.PackageListing(pkgs)
- #pkgs.unique()
+ pkgs.append(pkg)
- return pkgs
+ return sorted(pkgs)
def repo_create(self, path, input_paths, type="binary"):
assert type in ("binary", "source",)
from source import SourcePackage
from virtual import VirtualPackage
-from listing import PackageListing
from make import Makefile
from packager import BinaryPackager
+++ /dev/null
-#!/usr/bin/python
-
-import logging
-
-class PackageListing(object):
- def __init__(self, packages=[]):
- self.__packages = []
-
- if packages:
- for package in packages:
- self.__packages.append(package)
-
- self.__packages.sort()
-
- def __repr__(self):
- return "<PackageListing (%d) %s>" % (len(self.__packages),
- [p.friendly_name for p in self.__packages])
-
- def __iter__(self):
- return iter(self.__packages)
-
- def __len__(self):
- return len(self.__packages)
-
- def get_by_name(self, name):
- for pkg in self.__packages:
- if pkg.name == name:
- yield pkg
-
- def get_most_recent(self):
- if self.__packages:
- return self.__packages[-1]
-
- def unique(self):
- pkgs = []
-
- for pkg in self.__packages:
- if pkg in pkgs:
- continue
-
- pkgs.append(pkg)
-
- self.__packages = pkgs
-
pakfire/packages/file.py
pakfire/packages/__init__.py
pakfire/packages/installed.py
-pakfire/packages/listing.py
pakfire/packages/make.py
pakfire/packages/packager.py
pakfire/packages/solv.py
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-07-31 15:12+0000\n"
+"POT-Creation-Date: 2011-07-31 15:33+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"