Backups and exports lack obsolete revisions and obsstore
Considering a single project, backups and exports are essentially the same thing, and are produced internally by the same methods: bundle and additional information (hgrc files, GitLab/Heptapod specific state files)
Simply put, the bundle does not contain any obsolete changeset nor any obsolescence marker.
This is problematic because obsolete changesets can still be referenced, for instance in Merge Request comments and diffs. Even if GitLab models can be resilient about that, it still breaks the promise of backups that restoration results in an instance that is identical to the one that was backed up.
It will be possible to include obsolete changesets in the bundle, with hg bundle --hidden
, but in that case we lack the obsolescence markers and the restoration is nightmarish.