Closed Bug 1287506 Opened 8 years ago Closed 8 years ago

robustcheckout should resolve symbolic revisions on remote

Categories

(Developer Services :: Mercurial: hg.mozilla.org, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: gps, Assigned: gps)

References

Details

Attachments

(3 files)

Better explanation will be made in commit messages.
Blocks: 1287439
We created the revision on the dest repo but then weren't using
that repo in the test. Fortunately, this doesn't impact test behavior
significantly nor did it uncover a bug.

Review commit: https://reviewboard.mozilla.org/r/64968/diff/#index_header
See other reviews: https://reviewboard.mozilla.org/r/64968/
Attachment #8772043 - Flags: review?(bugspam.Callek)
Attachment #8772044 - Flags: review?(bugspam.Callek)
Attachment #8772045 - Flags: review?(bugspam.Callek)
The test shows behavior is currently buggy because we don't resolve
the symbolic revision from the remote.

Review commit: https://reviewboard.mozilla.org/r/64970/diff/#index_header
See other reviews: https://reviewboard.mozilla.org/r/64970/
Previously, if we were checkout out a symbolic revision, we would
always pull from the remote then resolve that name locally. This
is not ideal because the local repo may have other references to
that name not on the remote and the local references may be checked
out.

We change the code to resolve the name on the remote then use the
resolved value locally. As part of this, we refactor the code to
avoid pulling if the remotely resolved name is locally available.
In theory, we may not pull things like phases and obsolescence
markers that could have been updated on the remote. However, this
is an existing deficiency in the robustcheckout extension. If we
want to ensure all remote state is present locally, we should add
an --always-pull flag or something. But that's for another bug.

Review commit: https://reviewboard.mozilla.org/r/64972/diff/#index_header
See other reviews: https://reviewboard.mozilla.org/r/64972/
Comment on attachment 8772043 [details]
robustcheckout: fix test for ambiguous revision;

https://reviewboard.mozilla.org/r/64968/#review61956
Attachment #8772043 - Flags: review?(bugspam.Callek) → review+
Comment on attachment 8772044 [details]
robustcheckout: add test for resolving symbolic revision (bug 1287506);

https://reviewboard.mozilla.org/r/64970/#review61960

I'm not strongly familiar with the .t format here, nor the overall test matrix involved. but the test looks like exactly what we want.
Attachment #8772044 - Flags: review?(bugspam.Callek) → review+
Comment on attachment 8772045 [details]
robustcheckout: resolve symbolic revisions from remote (bug 1287506);

https://reviewboard.mozilla.org/r/64972/#review61962

This looks perfect!
Attachment #8772045 - Flags: review?(bugspam.Callek) → review+
Pushed by gszorc@mozilla.com:
https://hg.mozilla.org/hgcustom/version-control-tools/rev/2417ab5f4d7d
robustcheckout: add test for resolving symbolic revision ; r=Callek
https://hg.mozilla.org/hgcustom/version-control-tools/rev/d2140637eaf3
robustcheckout: resolve symbolic revisions from remote ; r=Callek
Status: ASSIGNED → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: