Resolve #6359 `preferred-versions` are left out for now. It shouldn't be difficult to add, but needs work nevertheless. We also allow relative paths, which kind of work, if you are careful. In addtition - change the index cache to use `Distribution.Utils.Structured`, making Binary instances generically derived. - separate Distribution.Client.HashValue into own module. This allows to use HashValue for hashing the part of localRepoPath (breaks module dependency cycle). Almost as a feature generated 01-index.cache is never updated. If you change the contents of the directory, you have to purge 01-index.cache file yourself.
Showing with 601 additions and 248 deletions