As the summary says, it seems that assume-digests removes MD5 digests. I discovered this when looking at the distfiles mirroring failures here: http://dev.gentoo.org/~zmedico/infra/distfiles/failure.xml Because of bug 138128, mirror-dist reports "digest entry missing for file" when the MD5 is missing. The commit that caused this was with portage-2.1.1_pre1-r5: http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-misc/openssh/files/digest-openssh-4.3_p2-r2?r1=1.4&r2=1.5
The isn't too bad. It seems that the only reason the MD5 digest were removed is that they did not already exist in the Manifest for some reason.
The observed behavior is reproducible if one removes the existing digest file but leaves the Manifest file in place. The regenerated digest file will only contain digests that exist in the Manifest (manifest2 does not us MD5 digests). I suppose this could be a feature or a bug, depending on how you look at it. I suppose we could force it to make sure that all supported digest types exist, so that it automatically regenerates the MD5. I think I'll do that....
This is fixed in svn r3772.
There's one more patch in svn r3773 to make sure that all the files are fetched. This has been released in 2.1.1_pre2-r2.
This is in svn r4058 for 2.1-r2.