( )⚙ D10719 dirstate-v2: Change the on-disk format when the requirement is enabled

This is an archive of the discontinued Mercurial Phabricator instance.

dirstate-v2: Change the on-disk format when the requirement is enabled
ClosedPublic

Authored by SimonSapin on May 17 2021, 6:05 AM.

Details

Summary

For now, the format is the same except with an additional marker at the start.

This marker is redundant: for existing repositories it is .hg/requires that
determines which format to use. For new repositories, it is the new
format.exp-dirstate-v2 config. There is no upgrade or downgrade so far.

Most of the changes are about plumbing a boolean through layers of APIs to
indicate which format should be used.

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

SimonSapin created this revision.May 17 2021, 6:05 AM
baymax updated this revision to Diff 27999.May 17 2021, 8:39 AM

✅ refresh by Heptapod after a successful CI run (🐙 💚)

Alphare accepted this revision.May 19 2021, 5:52 AM
This revision is now accepted and ready to land.May 19 2021, 5:52 AM
baymax updated this revision to Diff 28100.May 19 2021, 7:41 AM

✅ refresh by Heptapod after a successful CI run (🐙 💚)