mirror of
https://github.com/facebook/sapling.git
synced 2024-10-10 00:45:18 +03:00
98d9269874
Summary: Create a fork of the Mercurial code that we can use to build server rpms. The hg servers will continue to exist for a few more months while we move the darkstorm and ediscovery use cases off them. In the mean time, we want to start making breaking changes to the client, so let's create a stable copy of the hg code to produce rpms for the hg servers. The fork is based off c7770c78d, the latest hg release. This copies the files as is, then adds some minor tweaks to get it to build: - Disables some lint checks that appear to be bypassed by path - sed replace eden/scm with eden/hg-server - Removed a dependency on scm/telemetry from the edenfs-client tests since scm/telemetry pulls in the original eden/scm/lib/configparser which conflicts with the hg-server conflict parser. allow-large-files Reviewed By: quark-zju Differential Revision: D27632557 fbshipit-source-id: b2f442f4ec000ea08e4d62de068750832198e1f4
52 lines
1.7 KiB
Bash
52 lines
1.7 KiB
Bash
# In most cases, the mercurial repository can be read by the bundled hg, but
|
|
# that isn't always true because third-party extensions may change the store
|
|
# format, for example. In which case, the system hg installation is used.
|
|
#
|
|
# We want to use the hg version being tested when interacting with the test
|
|
# repository, and the system hg when interacting with the mercurial source code
|
|
# repository.
|
|
#
|
|
# The mercurial source repository was typically orignally cloned with the
|
|
# system mercurial installation, and may require extensions or settings from
|
|
# the system installation.
|
|
|
|
# Revert the environment so that running "hg" runs the system hg
|
|
# rather than the test hg installation.
|
|
syshgenv () {
|
|
. "$HGTEST_RESTOREENV"
|
|
HGPLAIN=1
|
|
export HGPLAIN
|
|
}
|
|
|
|
# The test-repo is a live hg repository which may have evolution markers
|
|
# created, e.g. when a ~/.hgrc enabled evolution.
|
|
#
|
|
# Tests may be run using a custom HGRCPATH, which do not enable evolution
|
|
# markers by default.
|
|
#
|
|
# If test-repo includes evolution markers, and we do not enable evolution
|
|
# markers, hg will occasionally complain when it notices them, which disrupts
|
|
# tests resulting in sporadic failures.
|
|
#
|
|
# Since we aren't performing any write operations on the test-repo, there's
|
|
# no harm in telling hg that we support evolution markers, which is what the
|
|
# following lines for the hgrc file do:
|
|
cat >> "$HGRCPATH" << EOF
|
|
[experimental]
|
|
evolution = createmarkers
|
|
EOF
|
|
|
|
# Unconditionally use the system hg to avoid auto migration logic from
|
|
# the in-repo hg.
|
|
testrepohgenv () {
|
|
syshgenv
|
|
}
|
|
|
|
testrepohg () {
|
|
(
|
|
testrepohgenv
|
|
# Silent potential stderr like "remove: served by Mononoke".
|
|
exec hg "$@" 2>/dev/null
|
|
)
|
|
}
|