This is an archive of the discontinued Mercurial Phabricator instance.

cleanup: say goodbye to manifestv2 format
ClosedPublic

Authored by durin42 on Feb 22 2018, 10:15 PM.

Details

Summary

This experiment was a bust: we'd hoped for smaller repository sizes,
but things got larger. Google ended up rolling out tree manifests in a
format that's compatible with the original manifest format, and I
believe Facebook is doing the same. This code was never implemented as
native speedups, so I'm pretty comfortable saying nobody is using the
experimental feature. Let's rip it out.

I noticed this code still kicking around because I was investigating a
repo corruption issue for timeless.

.. bc::

Support for the experimental manifestv2 format has been removed, as
it was never completed and failed to meet expectations.

Diff Detail

Repository
rHG Mercurial
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

durin42 created this revision.Feb 22 2018, 10:15 PM

LGTM. Last time I was going to remove it, I left it in because Durham felt that it was useful for forcing him to not specialize the manifest API too much for how v1 works. I believe he's pretty much done with that now, so that should no longer be a reason to keep this around. Thanks for cleaning up.

mercurial/manifest.py
537

delete "for v1"?

durin42 updated this revision to Diff 6019.Feb 23 2018, 12:24 PM
durin42 marked an inline comment as done.Feb 23 2018, 12:25 PM
This revision was automatically updated to reflect the committed changes.
tests/test-manifest.py