From f908cddb505b81533861196c4713378e63dac1fa Mon Sep 17 00:00:00 2001 From: Brian Harring Date: Wed, 31 Aug 2011 17:29:58 -0700 Subject: Bind all manifest access through repoconfigs This enables controling the behaviour (creation and validation) per repo, and while mildly ugly, refactors in the right direction. --- pym/_emerge/EbuildFetcher.py | 6 ++++-- pym/_emerge/search.py | 4 +++- 2 files changed, 7 insertions(+), 3 deletions(-) (limited to 'pym/_emerge') diff --git a/pym/_emerge/EbuildFetcher.py b/pym/_emerge/EbuildFetcher.py index feb68d072..4389f8408 100644 --- a/pym/_emerge/EbuildFetcher.py +++ b/pym/_emerge/EbuildFetcher.py @@ -206,8 +206,10 @@ class EbuildFetcher(SpawnProcess): def _get_digests(self): if self._digests is not None: return self._digests - self._digests = portage.Manifest(os.path.dirname( - self._get_ebuild_path()), None).getTypeDigests("DIST") + pkgdir = os.path.dirname(self._get_ebuild_path()) + mf = self.pkg.root_config.settings.repositories.get_repo_for_location( + os.path.dirname(os.path.dirname(pkgdir))) + self._digests = mf.load_manifest(pkgdir, None).getTypeDigests("DIST") return self._digests def _get_uri_map(self): diff --git a/pym/_emerge/search.py b/pym/_emerge/search.py index 096b38412..4a4183d09 100644 --- a/pym/_emerge/search.py +++ b/pym/_emerge/search.py @@ -317,7 +317,9 @@ class search(object): installed=False, metadata=metadata, root_config=self.root_config, type_name="ebuild") pkgdir = os.path.dirname(myebuild) - mf = Manifest( + mf = self.settings.repositories.get_repo_for_location( + os.path.dirname(os.path.dirname(pkgdir))) + mf = mf.load_manifest( pkgdir, self.settings["DISTDIR"]) try: uri_map = _parse_uri_map(mycpv, metadata, -- cgit v1.2.3-1-g7c22