use the digest as a sub directory, or a random uuid if the digest doesn't exist
use the digest as a sub directory, or a random uuid if the digest doesn't exist

crate-archive/crate-site,crateio/crate.pypi,crate-archive/crate-site