[meta] Mercurial 4.9 upgrade and compatibility
Categories
(Developer Services :: Mercurial: hg.mozilla.org, enhancement)
Tracking
(Not tracked)
People
(Reporter: gps, Unassigned)
References
Details
(Keywords: leave-open, meta)
Attachments
(17 files, 8 obsolete files)
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review |
Let's get the Mercurial 4.9 tracking bug on file.
Comment 1•5 years ago
|
||
Mercurial 4.9rc0 was released this week. Before the official
4.9 release is cut, we like to ensure client extensions on
developer machines are tested for compatibility with the upcoming
version. After running the tests against the release candidate,
each of the following extensions passes without any code changes
and are marked as compatible in this commit:
- firefoxtree
- format-source
- push-to-try
- qbackout
- qimportbz
Comment 2•5 years ago
|
||
This commit marks robustcheckout as compatible with Mercurial
4.9 and updates a failing test with conditional output on the
new version. The new output in the tests comes from the addition
of a new sparserevlog
repo requirement[0]. Essentially this
new line in the test output indicates that the repo in question
was created with a new version of Mercurial and the same or
newer version of Mercurial must be used to act upon it. This
only applies to repositories accessed on the same filesystem,
as any legacy version of Mercurial can clone/pull the repo
over the wire and the resulting repo on disk will not have this
requirement.
Bug 1513276 tracks the work of upgrading repos on hgmo to the
new storage format.
Pushed by cosheehan@mozilla.com:
https://hg.mozilla.org/hgcustom/version-control-tools/rev/a9b37e9dcc92
hgext: mark multiple client extensions as compatible with Mercurial 4.9 r=smacleod
https://hg.mozilla.org/hgcustom/version-control-tools/rev/2dd596ba3855
robustcheckout: mark as compatible with Mercurial 4.9 and update tests r=smacleod
Updated•5 years ago
|
Comment 4•5 years ago
|
||
Test extension works as intended under 4.9, with a few
minor additions to tests. A new cache file wcache
has
been added as a virtual file system cache for files
related to the working copy. The UNIX-like exec flag
check caches are no longer shown when displaying the
caches available on the local repository as the code
path that created them has changed. Considering they
are not actually transferred later in the test, this
is not a problem.
Comment 5•5 years ago
|
||
Here we make the hooks tests pass under Mercurial 4.9. A new
log statement was added during the reposetup
stage of
extension loading, which is seen in the test output.
Many (?)
statements are removed and replaced with inline
version checks.
Pushed by cosheehan@mozilla.com: https://hg.mozilla.org/hgcustom/version-control-tools/rev/32f607700768 hgmo: make compatible with Mercurial 4.9 r=lars
Comment 7•5 years ago
|
||
Comment 8•5 years ago
|
||
added new "cache" and "wcache" present only in hg49
removed 2 "#if h42" blocks because we're not using versions older than 4.8
tagged 2 "--config" lines as not appearing when using hg49
Comment 9•5 years ago
|
||
Comment 10•5 years ago
|
||
Comment 11•5 years ago
|
||
Comment 12•5 years ago
|
||
Comment 13•5 years ago
|
||
Comment 14•5 years ago
|
||
added new "cache" and "wcache" present only in hg49
removed 2 "#if h42" blocks because we're not using versions older than 4.8
tagged 2 "--config" lines as not appearing when using hg49
Comment 15•5 years ago
|
||
Comment 16•5 years ago
|
||
Comment 17•5 years ago
|
||
Comment 18•5 years ago
|
||
Updated•5 years ago
|
Updated•5 years ago
|
Updated•5 years ago
|
Updated•5 years ago
|
Updated•5 years ago
|
Updated•5 years ago
|
Comment 19•5 years ago
|
||
Pushed by cosheehan@mozilla.com: https://hg.mozilla.org/hgcustom/version-control-tools/rev/28f1a8fade1c hg49: hgext/firefoxreleases r=sheehan https://hg.mozilla.org/hgcustom/version-control-tools/rev/2046b5bf6072 hg49: hgext/pushlog r=sheehan https://hg.mozilla.org/hgcustom/version-control-tools/rev/2b23ebba2fb5 hg49: hgext/readonly r=sheehan https://hg.mozilla.org/hgcustom/version-control-tools/rev/f498a35dc46e hg49: hgext/replicateowner r=sheehan https://hg.mozilla.org/hgcustom/version-control-tools/rev/d4aecc778e9f hg49: hgext/serverlog r=sheehan https://hg.mozilla.org/hgcustom/version-control-tools/rev/db170e81bb17 hg49: hgext/unifyrepo r=sheehan
Comment 20•5 years ago
|
||
Pushed by cosheehan@mozilla.com: https://hg.mozilla.org/hgcustom/version-control-tools/rev/71545cbde3e6 hghooks: make hooks compatible with Mercurial 4.9 r=lars
Comment 21•5 years ago
|
||
1 - tests that list the .hg need to have some additonal files
that are seen when using hg49 (.../test-hgrc-replicate.t)
2 - tests that depend on the contents of the
.../mozilla-central/.hg/requires file need to have an
additional line when using hg49
Comment 22•5 years ago
|
||
Pushed by lars@mozilla.com: https://hg.mozilla.org/hgcustom/version-control-tools/rev/75145f5864c4 hg49: make vcsreplicator/tests compatible r=sheehan
Comment 23•5 years ago
|
||
Updated•5 years ago
|
Comment 24•5 years ago
|
||
In attempting to fix test-pushkey-obsolescence.t
to make
vcsreplicator compatible with Mercurial 4.9, I needed to allow
serving the unfiltered
repoview on hgssh. This had the
potential to change the behaviour of pulls against the ssh
endpoint on hgmo, so to ensure we don't change the intended
behaviour by accident, I've added a test which demonstrates
the current behaviour.
Comment 25•5 years ago
|
||
We still have quite a few (hg4X !)
conditional output in tests
for versions that are not 4.8 or 4.9. In this commit, we clean
up our tests by removing the unnecessary conditionals.
Comment 26•5 years ago
|
||
This commit patches the hgssh vcsreplicator Mercurial extension to
serve the unfiltered
repoview for pull operations performed by
the unfiltereduser
. This fixes failures where consumers were
unable to process changegroup
messages that referenced now-obsolete
changesets on hgssh. After this patch, the vcs-sync
user is always
able to pull the necessary changesets down to hgweb machines.
The number of files that Mercurial advertised as changed has been
reduced by 1 in some cases under the new behaviour. Looking at the
change, the behaviour is more correct (introducing a changeset that
made 0 changes to 1 files doesn't make much sense) after this patch
is applied. I believe Mercurial is no longer counting new obsolescence
markers as having changed files under the hood, but I have yet to
find the exact changeset in core Mercurial to verify.
test-ssh-pull.t
passes as expected after this change, under 4.8
and 4.9.
Comment 27•5 years ago
|
||
Testing environments, etc.
Comment 28•5 years ago
|
||
In this commit we upgrade all hgweb Mercurial installations to
version 4.9.1.
Comment 29•5 years ago
|
||
In this commit we upgrade all hgssh Mercurial installations to
version 4.9.1.
Comment 30•5 years ago
|
||
Pushed by cosheehan@mozilla.com: https://hg.mozilla.org/hgcustom/version-control-tools/rev/e21d785cb133 vcsreplicator: add a test demonstrating pull behaviour on hgssh r=lars https://hg.mozilla.org/hgcustom/version-control-tools/rev/9a114f7abf94 vcsreplicator: remove test output conditional on unsupported Mercurials r=lars https://hg.mozilla.org/hgcustom/version-control-tools/rev/2deacafd9abb vcsreplicator: serve the unfiltered repoview on hgssh r=lars https://hg.mozilla.org/hgcustom/version-control-tools/rev/8fdb71a76345 ansible/hg-web: upgrade Mercurial to 4.9.1 r=lars https://hg.mozilla.org/hgcustom/version-control-tools/rev/d4167b373314 ansible/hg-ssh: upgrade Mercurial to 4.9.1 r=lars https://hg.mozilla.org/hgcustom/version-control-tools/rev/013be7806476 hg49: upgrade to Mercurial 4.9.1 elsewhere in the codebase r=lars
Comment 31•5 years ago
|
||
Pushed by cosheehan@mozilla.com: https://hg.mozilla.org/hgcustom/version-control-tools/rev/1e8f278de369 obsolescencehacks: mark as compatible with Mercurial 4.9
Comment hidden (spam) |
Comment 33•5 years ago
|
||
Oups, sorry
Updated•5 years ago
|
Comment 34•5 years ago
|
||
Comment on attachment 9089049 [details]
hgext: clang-format hg hook: (Bug 1577241) Skip clang-format task when called by moz-phab r?glob
Revision D43962 was moved to bug 1577241. Setting attachment 9089049 [details] to obsolete.
Updated•2 years ago
|
Description
•