summaryrefslogtreecommitdiffstats
path: root/pym/portage.py
diff options
context:
space:
mode:
Diffstat (limited to 'pym/portage.py')
-rw-r--r--pym/portage.py9
1 files changed, 6 insertions, 3 deletions
diff --git a/pym/portage.py b/pym/portage.py
index a3dcd7b06..32907c32e 100644
--- a/pym/portage.py
+++ b/pym/portage.py
@@ -2686,9 +2686,9 @@ def digestgen(myarchives, mysettings, overwrite=1, manifestonly=0, myportdb=None
# fetches when sufficient digests already exist. To ease transition
# while Manifest 1 is being removed, only require hashes that will
# exist before and after the transition.
- required_hash_types = set(portage_const.MANIFEST1_HASH_FUNCTIONS
- ).intersection(portage_const.MANIFEST2_HASH_FUNCTIONS)
+ required_hash_types = set()
required_hash_types.add("size")
+ required_hash_types.add(portage_const.MANIFEST2_REQUIRED_HASH)
dist_hashes = mf.fhashdict.get("DIST", {})
missing_hashes = set()
for myfile in distfiles_map:
@@ -3554,8 +3554,11 @@ def doebuild(myebuild, mydo, myroot, mysettings, debug=0, listonly=0,
# Skip files that we already have digests for.
mf = Manifest(mysettings["O"], mysettings["DISTDIR"])
mydigests = mf.getTypeDigests("DIST")
+ required_hash_types = set()
+ required_hash_types.add("size")
+ required_hash_types.add(portage_const.MANIFEST2_REQUIRED_HASH)
for filename, hashes in mydigests.iteritems():
- if len(hashes) == len(mf.hashes):
+ if not required_hash_types.difference(hashes):
checkme = [i for i in checkme if i != filename]
fetchme = [i for i in fetchme \
if os.path.basename(i) != filename]