summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pym/portage.py10
1 files changed, 6 insertions, 4 deletions
diff --git a/pym/portage.py b/pym/portage.py
index c8c635f96..6eaf919dd 100644
--- a/pym/portage.py
+++ b/pym/portage.py
@@ -2702,10 +2702,12 @@ def digestgen(myarchives, mysettings, overwrite=1, manifestonly=0, myportdb=None
distfiles_map.setdefault(myfile, []).append(cpv)
mf = Manifest(mysettings["O"], mysettings["DISTDIR"],
fetchlist_dict=fetchlist_dict)
- required_hash_types = set(portage_const.MANIFEST1_HASH_FUNCTIONS)
- # Don't require MANIFEST2 hashes since that can trigger excessive
- # fetches when sufficient digests already exist.
- #required_hash_types.update(portage_const.MANIFEST2_HASH_FUNCTIONS)
+ # Don't require all hashes since that can trigger excessive
+ # 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.add("size")
dist_hashes = mf.fhashdict.get("DIST", {})
missing_hashes = set()