--- a/.hgsigs Sat Apr 11 17:43:29 2020 +0900
+++ b/.hgsigs Fri Apr 24 15:06:42 2020 -0400
@@ -194,3 +194,4 @@
7f5410dfc8a64bb587d19637deb95d378fd1eb5c 0 iQJEBAABCAAuFiEEK8zhT1xnJaouqK63ucncgkqlvdUFAl44RUUQHHJhZkBkdXJpbjQyLmNvbQAKCRC5ydyCSqW91WcUD/9em14ckTP9APTrSpe6y4FLS6cIUZabNN6wDXjTrHmS26hoNvWrT+RpWQ5XSOOJhZdhjkR1k87EOw9+m6+36ZaL+RXYnjrbku9fxbbFBraGTFy0JZHAT6v57uQ8P7XwqN4dGvXXpgE5UuY5sp1uDRbtIPNts3iWJKAnIazxUnyotHNtJQNESHySomzR1s93z1oOMpHapAqUmPbcZywg4otWjrOnkhOok3Sa3TgGthpHbM0qmh6J9ZaRBXsKEpLkjCRNggdvqww1w4omcAJzY4V5tG8WfhW+Xl8zBBe0K5m/ug3e25sWR5Dqm4+qUO0HZWQ3m3/M7CCuQrWFXTkr7nKac50vtFzsqHlHNoaiKnvQKoruQs3266TGsrzCCOSy8BqmpysD6sB79owLKoh0LfFOcSwG9kZ8sovEvTfrRn8g3YAp7XbXkDxbcLMijr7P4gWq8sC1NZJn1yhLXitcCfAAuVrVQfPVdt2pp8Ry2NdGnHjikQjOn/wAKlYJ5F8JMdn6eEI/Gveg2g8uR9kp/9zaXRx6rU3ccuZQ7cBQbBlBsmmpd7gJRp2v0NKsV8hXtCPnBvcfCqgYHLg7FQVq1wKe5glvtmx9uPZNsl/S++fSxGoXfp9wVi048J42KyEH6yvoySCvbYeSFQvMfAoD1xJ4xWtT8ZEj6oiHvzHw1u/zgw==
6d121acbb82e65fe4dd3c2318a1b61981b958492 0 iQJEBAABCAAuFiEEK8zhT1xnJaouqK63ucncgkqlvdUFAl5f3IEQHHJhZkBkdXJpbjQyLmNvbQAKCRC5ydyCSqW91WoeD/9qhywGg/TI/FJEeJN5bJjcpB/YQeYDWCHh69yUmMPenf+6CaV/3QPc3R8JyQSKWwGUwc0IgZiJBb/HoUvBzpQyTvmGqddWsIGBpdGAkbLmRrE5BakR7Shs987a3Oq4hB03DJD4sQ1VitWg2OvGNd8rl1kSIF8aIErVI6ZiSw5eYemc/1VyBJXHWSFmcfnQqdsyPppH9e9/TAhio+YP4EmLmoxUcyRSb3UbtO2NT9+DEADaex+H2l9evg7AkTieVd6N163uqsLJIxSfCh5ZVmzaGW6uEoyC4U+9bkAyVE3Cy5z2giYblBzUkO9xqEZoA4tOM+b+gHokY8Sq3iGVw046CIW5+FjU9B5+7hCqWThYjnpnt+RomtHxrkqQ9SSHYnEWb4YTHqs+J7lWbm3ErjF08hYOyMA9/VT47UAKw4XL4Ss/1Pr7YezdmwB4jn7dqvslNvTqRAUOzB/15YeCfbd23SL4YzGaKBs9ajkxFFeCNNpLQ8CRm3a7/K6qkYyfSUpgUX7xBmRQTvUgr3nVk1epH/kOKwryy94Z+nlHF0qEMEq+1QOa5yvt3Kkr4H03pOFbLhdpjID5IYP4rRQTKB9yOS3XWBCE63AQVc7uuaBGPMCSLaKRAFDUXWY7GzCqda88WeN5BFC5iHrQTYE1IQ5YaWu38QMsJt2HHVc27+BuLA==
8fca7e8449a847e3cf1054f2c07b51237699fad3 0 iQJEBAABCAAuFiEEK8zhT1xnJaouqK63ucncgkqlvdUFAl6GDVQQHHJhZkBkdXJpbjQyLmNvbQAKCRC5ydyCSqW91egzEACNEyQwLWCQEeNyxXKuTsnXhYU/au7nSGOti/9+zg/22SSceMsVcIyNr2ZnkMf3hnzBjL7Efsthif0QXyfB0LZDXwNuDmNlDtUV2veyVGSDE2UqiSbDBRu6MYTvtfYX87RmSWla3HHO09pwpcrhxyHs3mliQsXyB2+D+ovTOIjYukQLnh34jQnwiWEYLDXkHEHHTpdXqAnA7tVen3ardLyTWgky6DUwlfcnoVsAPXnDkqQ9aE2w7SoAsNtEAddmkjKoYYdBkV5aUInU/DyFVF7qnlCcvWm+EkN1708xZUQ1KzdAyeeoIrMkBgpSoyeNQ9pcU3T7B100UxLo/FP/A7y96b2kHnKJU6fVyD3OeHvP9SeucurC6jn2YoG3e1wSOQcbEuCsdGjqgAHnKt2SMPsEBu2qJJcUdco9tANN5BdntBo7bLc/zcpXZH3TkRfRSndWXPaXDJaQNvbH7aLIUTCP9oQaqTN+9BQ+Egt7YsB4C58JZmC87FAuekDULc4LWK2gDPFf7F/PvBnMh7+YylPl/8LLrEnz2Q/GM0S1HLhBrDf6vzxV5wVzCu9Q2N0PCkg6lDAJFVWLTEbxcRukKxbyK88Yzrb4GuUY4F5V21fN4vuxkOay7eoiXUcHMN2IN+DwhNWQSm5pUnpqGTfCYj/ZBbAykP2UnVOClL6O2JQA2A==
+26ce8e7515036d3431a03aaeb7bc72dd96cb1112 0 iQJJBAABCgAzFiEE64UTlbQiPuL3ugso2lR0C/CHMroFAl6YlRUVHDc4OTVwdWxraXRAZ21haWwuY29tAAoJENpUdAvwhzK6Z3YP/iOqphn99v0z2OupCl0q8CepbcdZMJWW3j00OAHYSO43M0FULpMpzC2o+kZDeqeLyzN7DsjoGts2cUnAOe9WX73sPkX1n1dbiDcUSsRqNND+tCkEZMtTn4DaGNIq1zSkkm8Q7O/1uwZPnX6FaIRMBs9qGbdfmMPNEvzny2tgrKc3ra1+AA8RCdtsbpqhjy+xf+EKVB/SMsQVVSJEgPkUkW6PwpaspdrxQKgZrb7C7Jx/gRVzMTUmCQe1sVCSnZNO3I/woAqDY2UNg7/hBubeRh/EjoH1o4ONTXgBQdYCl7QdcwDHpDc2HstonrFq51qxBecHDVw+ZKQds63Ixtxuab3SK0o/SWabZ1v8bGaWnyWnRWXL/1qkyFWly+fjEGGlv1kHl3n0UmwlUY8FQJCYDZgR0FqQGXAF3vMJOEp82ysk6jWN/7NRzcnoUC7HpNo1jPMiPRjskgVf3bhErfUQnhlF1YsVu/jPTixyfftbiaZmwILMkaPF8Kg3Cyf63p2cdcnTHdbP1U6ncR+BucthlbFei4WL0J2iERb8TBeCxOyCHlEUq8kampjbmPXN7VxnK4oX3xeBTf8mMbvrD5Fv3svRD+SkCCKu/MwQvB1VT6q425TSKHbCWeNqGjVLvetpx+skVH7eaXLEQ3wlCfo/0OQTRimx2O73EnOF5r8Q2POm
--- a/.hgtags Sat Apr 11 17:43:29 2020 +0900
+++ b/.hgtags Fri Apr 24 15:06:42 2020 -0400
@@ -207,3 +207,4 @@
7f5410dfc8a64bb587d19637deb95d378fd1eb5c 5.3
6d121acbb82e65fe4dd3c2318a1b61981b958492 5.3.1
8fca7e8449a847e3cf1054f2c07b51237699fad3 5.3.2
+26ce8e7515036d3431a03aaeb7bc72dd96cb1112 5.4rc0
--- a/contrib/automation/hgautomation/aws.py Sat Apr 11 17:43:29 2020 +0900
+++ b/contrib/automation/hgautomation/aws.py Fri Apr 24 15:06:42 2020 -0400
@@ -59,7 +59,7 @@
UBUNTU_ACCOUNT_ID = '099720109477'
-WINDOWS_BASE_IMAGE_NAME = 'Windows_Server-2019-English-Full-Base-2019.11.13'
+WINDOWS_BASE_IMAGE_NAME = 'Windows_Server-2019-English-Full-Base-*'
KEY_PAIRS = {
@@ -464,7 +464,7 @@
profile.add_role(RoleName=role)
-def find_image(ec2resource, owner_id, name):
+def find_image(ec2resource, owner_id, name, reverse_sort_field=None):
"""Find an AMI by its owner ID and name."""
images = ec2resource.images.filter(
@@ -476,6 +476,13 @@
]
)
+ if reverse_sort_field:
+ images = sorted(
+ images,
+ key=lambda image: getattr(image, reverse_sort_field),
+ reverse=True,
+ )
+
for image in images:
return image
@@ -1059,7 +1066,7 @@
def ensure_windows_dev_ami(
- c: AWSConnection, prefix='hg-', base_image_name=WINDOWS_BASE_IMAGE_NAME
+ c: AWSConnection, prefix='hg-', base_image_name=WINDOWS_BASE_IMAGE_NAME,
):
"""Ensure Windows Development AMI is available and up-to-date.
@@ -1078,7 +1085,12 @@
name = '%s%s' % (prefix, 'windows-dev')
- image = find_image(ec2resource, AMAZON_ACCOUNT_ID, base_image_name)
+ image = find_image(
+ ec2resource,
+ AMAZON_ACCOUNT_ID,
+ base_image_name,
+ reverse_sort_field="name",
+ )
config = {
'BlockDeviceMappings': [
--- a/contrib/automation/hgautomation/linux.py Sat Apr 11 17:43:29 2020 +0900
+++ b/contrib/automation/hgautomation/linux.py Fri Apr 24 15:06:42 2020 -0400
@@ -26,11 +26,11 @@
INSTALL_PYTHONS = r'''
PYENV2_VERSIONS="2.7.17 pypy2.7-7.2.0"
-PYENV3_VERSIONS="3.5.7 3.6.9 3.7.5 3.8.0 pypy3.5-7.0.0 pypy3.6-7.2.0"
+PYENV3_VERSIONS="3.5.9 3.6.10 3.7.7 3.8.2 pypy3.5-7.0.0 pypy3.6-7.3.0"
git clone https://github.com/pyenv/pyenv.git /hgdev/pyenv
pushd /hgdev/pyenv
-git checkout 0e7cfc3b3d4eca46ad83d632e1505f5932cd179b
+git checkout 3005c4664372ae13fbe376be699313eb428c8bdd
popd
export PYENV_ROOT="/hgdev/pyenv"
--- a/contrib/install-windows-dependencies.ps1 Sat Apr 11 17:43:29 2020 +0900
+++ b/contrib/install-windows-dependencies.ps1 Fri Apr 24 15:06:42 2020 -0400
@@ -22,10 +22,10 @@
$VC9_PYTHON_URL = "https://download.microsoft.com/download/7/9/6/796EF2E4-801B-4FC4-AB28-B59FBF6D907B/VCForPython27.msi"
$VC9_PYTHON_SHA256 = "070474db76a2e625513a5835df4595df9324d820f9cc97eab2a596dcbc2f5cbf"
-$PYTHON27_x64_URL = "https://www.python.org/ftp/python/2.7.17/python-2.7.17.amd64.msi"
-$PYTHON27_x64_SHA256 = "3b934447e3620e51d2daf5b2f258c9b617bcc686ca2f777a49aa3b47893abf1b"
-$PYTHON27_X86_URL = "https://www.python.org/ftp/python/2.7.17/python-2.7.17.msi"
-$PYTHON27_X86_SHA256 = "a4e3a321517c6b0c2693d6f712a0d18c82600b3d0c759c299b3d14384a17f863"
+$PYTHON27_x64_URL = "https://www.python.org/ftp/python/2.7.18/python-2.7.18.amd64.msi"
+$PYTHON27_x64_SHA256 = "b74a3afa1e0bf2a6fc566a7b70d15c9bfabba3756fb077797d16fffa27800c05"
+$PYTHON27_X86_URL = "https://www.python.org/ftp/python/2.7.18/python-2.7.18.msi"
+$PYTHON27_X86_SHA256 = "d901802e90026e9bad76b8a81f8dd7e43c7d7e8269d9281c9e9df7a9c40480a9"
$PYTHON35_x86_URL = "https://www.python.org/ftp/python/3.5.4/python-3.5.4.exe"
$PYTHON35_x86_SHA256 = "F27C2D67FD9688E4970F3BFF799BB9D722A0D6C2C13B04848E1F7D620B524B0E"
@@ -37,15 +37,15 @@
$PYTHON36_x64_URL = "https://www.python.org/ftp/python/3.6.8/python-3.6.8-amd64.exe"
$PYTHON36_x64_SHA256 = "96088A58B7C43BC83B84E6B67F15E8706C614023DD64F9A5A14E81FF824ADADC"
-$PYTHON37_x86_URL = "https://www.python.org/ftp/python/3.7.5/python-3.7.5.exe"
-$PYTHON37_x86_SHA256 = "3c2ae8f72b48e6e0c2b482206e322bf5d0344ff91abc3b3c200cec9e275c7168"
-$PYTHON37_X64_URL = "https://www.python.org/ftp/python/3.7.5/python-3.7.5-amd64.exe"
-$PYTHON37_x64_SHA256 = "f3d60c127e7a92ed547efa3321bf70cd96b75c53bf4b903147015257c1314981"
+$PYTHON37_x86_URL = "https://www.python.org/ftp/python/3.7.7/python-3.7.7.exe"
+$PYTHON37_x86_SHA256 = "27fbffcd342d5055acc64050db4c35d0025661521e642b59c381dcba2e162c6a"
+$PYTHON37_X64_URL = "https://www.python.org/ftp/python/3.7.7/python-3.7.7-amd64.exe"
+$PYTHON37_x64_SHA256 = "1a0368663ceff999d865de955992b6ea3cb0c8cb15a1a296a8eb7df19cc59e69"
-$PYTHON38_x86_URL = "https://www.python.org/ftp/python/3.8.0/python-3.8.0.exe"
-$PYTHON38_x86_SHA256 = "b471908de5e10d8fb5c3351a5affb1172da7790c533e0c9ffbaeec9c11611b15"
-$PYTHON38_x64_URL = "https://www.python.org/ftp/python/3.8.0/python-3.8.0-amd64.exe"
-$PYTHON38_x64_SHA256 = "a9bbc6088a3e4c7112826e21bfee6277f7b6d93259f7c57176139231bb7071e4"
+$PYTHON38_x86_URL = "https://www.python.org/ftp/python/3.8.2/python-3.8.2.exe"
+$PYTHON38_x86_SHA256 = "03ac5754a69c9c11c08d1f4d694c14625a4d27348ad4dd2d1253e2547819db2c"
+$PYTHON38_x64_URL = "https://www.python.org/ftp/python/3.8.2/python-3.8.2-amd64.exe"
+$PYTHON38_x64_SHA256 = "8e400e3f32cdcb746e62e0db4d3ae4cba1f927141ebc4d0d5a4006b0daee8921"
# PIP 19.2.3.
$PIP_URL = "https://github.com/pypa/get-pip/raw/309a56c5fd94bd1134053a541cb4657a4e47e09d/get-pip.py"
--- a/contrib/packaging/requirements.txt Sat Apr 11 17:43:29 2020 +0900
+++ b/contrib/packaging/requirements.txt Fri Apr 24 15:06:42 2020 -0400
@@ -4,21 +4,29 @@
#
# pip-compile --generate-hashes --output-file=contrib/packaging/requirements.txt contrib/packaging/requirements.txt.in
#
-jinja2==2.10.3 \
- --hash=sha256:74320bb91f31270f9551d46522e33af46a80c3d619f4a4bf42b3164d30b5911f \
- --hash=sha256:9fe95f19286cfefaa917656583d020be14e7859c6b0252588391e47db34527de
+docutils==0.16 \
+ --hash=sha256:0c5b78adfbf7762415433f5515cd5c9e762339e23369dbe8000d84a4bf4ab3af \
+ --hash=sha256:c2de3a60e9e7d07be26b7f2b00ca0309c207e06c100f9cc2a94931fc75a478fc \
+ # via -r contrib/packaging/requirements.txt.in
+jinja2==2.11.2 \
+ --hash=sha256:89aab215427ef59c34ad58735269eb58b1a5808103067f7bb9d5836c651b3bb0 \
+ --hash=sha256:f0a4641d3cf955324a89c04f3d94663aa4d638abe8f733ecd3582848e1c37035 \
+ # via -r contrib/packaging/requirements.txt.in
markupsafe==1.1.1 \
--hash=sha256:00bc623926325b26bb9605ae9eae8a215691f33cae5df11ca5424f06f2d1f473 \
--hash=sha256:09027a7803a62ca78792ad89403b1b7a73a01c8cb65909cd876f7fcebd79b161 \
--hash=sha256:09c4b7f37d6c648cb13f9230d847adf22f8171b1ccc4d5682398e77f40309235 \
--hash=sha256:1027c282dad077d0bae18be6794e6b6b8c91d58ed8a8d89a89d59693b9131db5 \
+ --hash=sha256:13d3144e1e340870b25e7b10b98d779608c02016d5184cfb9927a9f10c689f42 \
--hash=sha256:24982cc2533820871eba85ba648cd53d8623687ff11cbb805be4ff7b4c971aff \
--hash=sha256:29872e92839765e546828bb7754a68c418d927cd064fd4708fab9fe9c8bb116b \
--hash=sha256:43a55c2930bbc139570ac2452adf3d70cdbb3cfe5912c71cdce1c2c6bbd9c5d1 \
--hash=sha256:46c99d2de99945ec5cb54f23c8cd5689f6d7177305ebff350a58ce5f8de1669e \
--hash=sha256:500d4957e52ddc3351cabf489e79c91c17f6e0899158447047588650b5e69183 \
--hash=sha256:535f6fc4d397c1563d08b88e485c3496cf5784e927af890fb3c3aac7f933ec66 \
+ --hash=sha256:596510de112c685489095da617b5bcbbac7dd6384aeebeda4df6025d0256a81b \
--hash=sha256:62fe6c95e3ec8a7fad637b7f3d372c15ec1caa01ab47926cfdf7a75b40e0eac1 \
+ --hash=sha256:6788b695d50a51edb699cb55e35487e430fa21f1ed838122d722e0ff0ac5ba15 \
--hash=sha256:6dd73240d2af64df90aa7c4e7481e23825ea70af4b4922f8ede5b9e35f78a3b1 \
--hash=sha256:717ba8fe3ae9cc0006d7c451f0bb265ee07739daf76355d06366154ee68d221e \
--hash=sha256:79855e1c5b8da654cf486b830bd42c06e8780cea587384cf6545b7d9ac013a0b \
@@ -35,5 +43,7 @@
--hash=sha256:ba59edeaa2fc6114428f1637ffff42da1e311e29382d81b339c1817d37ec93c6 \
--hash=sha256:c8716a48d94b06bb3b2524c2b77e055fb313aeb4ea620c8dd03a105574ba704f \
--hash=sha256:cd5df75523866410809ca100dc9681e301e3c27567cf498077e8551b6d20e42f \
+ --hash=sha256:cdb132fc825c38e1aeec2c8aa9338310d29d337bebbd7baa06889d09a60a1fa2 \
--hash=sha256:e249096428b3ae81b08327a63a485ad0878de3fb939049038579ac0ef61e17e7 \
+ --hash=sha256:e8313f01ba26fbbe36c7be1966a7b7424942f670f38e666995b88d012765b9be \
# via jinja2
--- a/contrib/packaging/requirements.txt.in Sat Apr 11 17:43:29 2020 +0900
+++ b/contrib/packaging/requirements.txt.in Fri Apr 24 15:06:42 2020 -0400
@@ -1,1 +1,2 @@
+docutils
jinja2
--- a/mercurial/discovery.py Sat Apr 11 17:43:29 2020 +0900
+++ b/mercurial/discovery.py Fri Apr 24 15:06:42 2020 -0400
@@ -67,6 +67,10 @@
ancestorsof=ancestorsof,
)
common, anyinc, srvheads = res
+ if heads and not anyinc:
+ # server could be lying on the advertised heads
+ has_node = repo.changelog.hasnode
+ anyinc = any(not has_node(n) for n in heads)
return (list(common), anyinc, heads or list(srvheads))
--- a/mercurial/revlogutils/nodemap.py Sat Apr 11 17:43:29 2020 +0900
+++ b/mercurial/revlogutils/nodemap.py Fri Apr 24 15:06:42 2020 -0400
@@ -112,6 +112,11 @@
To be used for updating the nodemap on disk outside of a normal transaction
setup (eg, `debugupdatecache`).
"""
+ if revlog._inline:
+ return # inlined revlog are too small for this to be relevant
+ if revlog.nodemap_file is None:
+ return # we do not use persistent_nodemap on this revlog
+
notr = _NoTransaction()
_persist_nodemap(notr, revlog)
for k in sorted(notr._postclose):
--- a/mercurial/upgrade.py Sat Apr 11 17:43:29 2020 +0900
+++ b/mercurial/upgrade.py Fri Apr 24 15:06:42 2020 -0400
@@ -628,14 +628,12 @@
"""
newactions = []
- knownreqs = supporteddestrequirements(repo)
-
for d in deficiencies:
- name = d.name
+ name = d._requirement
# If the action is a requirement that doesn't show up in the
# destination requirements, prune the action.
- if name in knownreqs and name not in destreqs:
+ if name is not None and name not in destreqs:
continue
newactions.append(d)
--- a/rust/hg-core/src/dirstate/status.rs Sat Apr 11 17:43:29 2020 +0900
+++ b/rust/hg-core/src/dirstate/status.rs Fri Apr 24 15:06:42 2020 -0400
@@ -307,7 +307,6 @@
/// Dispatch a single entry (file, folder, symlink...) found during `traverse`.
/// If the entry is a folder that needs to be traversed, it will be handled
/// in a separate thread.
-
fn handle_traversed_entry<'a>(
scope: &rayon::Scope<'a>,
files_sender: &'a crossbeam::Sender<IoResult<(HgPathBuf, Dispatch)>>,
@@ -324,6 +323,11 @@
let file_type = dir_entry.file_type()?;
let entry_option = dmap.get(&filename);
+ if filename.as_bytes() == b".hg" {
+ // Could be a directory or a symlink
+ return Ok(());
+ }
+
if file_type.is_dir() {
handle_traversed_dir(
scope,
@@ -447,9 +451,7 @@
options: StatusOptions,
) -> IoResult<()> {
let directory = directory.as_ref();
- if directory.as_bytes() == b".hg" {
- return Ok(());
- }
+
let visit_entries = match matcher.visit_children_set(directory) {
VisitChildrenSet::Empty => return Ok(()),
VisitChildrenSet::This | VisitChildrenSet::Recursive => None,
--- a/setup.py Sat Apr 11 17:43:29 2020 +0900
+++ b/setup.py Fri Apr 24 15:06:42 2020 -0400
@@ -890,7 +890,8 @@
)
if res:
raise SystemExit(
- 'error running gendoc.py: %s' % '\n'.join([out, err])
+ 'error running gendoc.py: %s'
+ % '\n'.join([sysstr(out), sysstr(err)])
)
with open(txt, 'wb') as fh:
@@ -907,7 +908,8 @@
)
if res:
raise SystemExit(
- 'error running gendoc: %s' % '\n'.join([out, err])
+ 'error running gendoc: %s'
+ % '\n'.join([sysstr(out), sysstr(err)])
)
with open(gendoc, 'wb') as fh:
@@ -932,7 +934,8 @@
)
if res:
raise SystemExit(
- 'error running runrst: %s' % '\n'.join([out, err])
+ 'error running runrst: %s'
+ % '\n'.join([sysstr(out), sysstr(err)])
)
normalizecrlf('doc/%s' % root)
@@ -957,7 +960,8 @@
)
if res:
raise SystemExit(
- 'error running runrst: %s' % '\n'.join([out, err])
+ 'error running runrst: %s'
+ % '\n'.join([sysstr(out), sysstr(err)])
)
normalizecrlf('doc/%s.html' % root)
@@ -1313,6 +1317,9 @@
if sys.platform == 'darwin':
osutil_ldflags += ['-framework', 'ApplicationServices']
+if sys.platform == 'sunos5':
+ osutil_ldflags += ['-lsocket']
+
xdiff_srcs = [
'mercurial/thirdparty/xdiff/xdiffi.c',
'mercurial/thirdparty/xdiff/xprepare.c',
--- a/tests/test-convert-hg-source.t Sat Apr 11 17:43:29 2020 +0900
+++ b/tests/test-convert-hg-source.t Fri Apr 24 15:06:42 2020 -0400
@@ -81,7 +81,7 @@
Different hash because no x bit
$ hg bookmarks
premerge1 3:973ef48a98a4
- premerge2 8:3537b15eaaca
+ premerge2 8:1cc21e701444
#endif
Test that redoing a convert results in an identical graph
--- a/tests/test-infinitepush-ci.t Sat Apr 11 17:43:29 2020 +0900
+++ b/tests/test-infinitepush-ci.t Fri Apr 24 15:06:42 2020 -0400
@@ -249,12 +249,12 @@
$ hg pull -r b4e4bce660512ad3e71189e14588a70ac8e31fef
pulling from ssh://user@dummy/repo
searching for changes
- no changes found
adding changesets
adding manifests
adding file changes
added 4 changesets with 4 changes to 4 files
new changesets eaba929e866c:b4e4bce66051
+ (run 'hg update' to get a working copy)
$ hg glog
o 5:b4e4bce66051 added e
| public
--- a/tests/test-lfs-serve.t Sat Apr 11 17:43:29 2020 +0900
+++ b/tests/test-lfs-serve.t Fri Apr 24 15:06:42 2020 -0400
@@ -133,12 +133,6 @@
requirements
preserved: dotencode, fncache, generaldelta, revlogv1, sparserevlog, store
- sidedata
- Allows storage of extra data alongside a revision.
-
- copies-sdc
- Allows to use more efficient algorithm to deal with copy tracing.
-
beginning upgrade...
repository locked and read-only
creating temporary repository to stage migrated data: * (glob)
--- a/tests/test-log.t Sat Apr 11 17:43:29 2020 +0900
+++ b/tests/test-log.t Fri Apr 24 15:06:42 2020 -0400
@@ -2334,10 +2334,10 @@
is global. So we shouldn't expect the namespace always exists. Using
ssh:// makes sure a bundle repository is created from scratch. (issue6301)
- $ hg clone -e "'$PYTHON' '$TESTDIR/dummyssh'" \
+ $ hg clone -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" \
> -qr0 "ssh://user@dummy/`pwd`/a" a-clone
$ hg incoming --config extensions.names=names.py -R a-clone \
- > -e "'$PYTHON' '$TESTDIR/dummyssh'" -T '{bars}\n' -l1
+ > -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" -T '{bars}\n' -l1
comparing with ssh://user@dummy/$TESTTMP/a
searching for changes
--- a/tests/test-status.t Sat Apr 11 17:43:29 2020 +0900
+++ b/tests/test-status.t Fri Apr 24 15:06:42 2020 -0400
@@ -672,3 +672,11 @@
$ cd ..
+
+Make sure .hg doesn't show up even as a symlink
+
+ $ hg init repo0
+ $ mkdir symlink-repo0
+ $ cd symlink-repo0
+ $ ln -s ../repo0/.hg
+ $ hg status
--- a/tests/test-upgrade-repo.t Sat Apr 11 17:43:29 2020 +0900
+++ b/tests/test-upgrade-repo.t Fri Apr 24 15:06:42 2020 -0400
@@ -159,12 +159,6 @@
requirements
preserved: dotencode, fncache, generaldelta, revlogv1, sparserevlog, store
- sidedata
- Allows storage of extra data alongside a revision.
-
- copies-sdc
- Allows to use more efficient algorithm to deal with copy tracing.
-
additional optimizations are available by specifying "--optimize <name>":
re-delta-parent
@@ -189,12 +183,6 @@
requirements
preserved: dotencode, fncache, generaldelta, revlogv1, sparserevlog, store
- sidedata
- Allows storage of extra data alongside a revision.
-
- copies-sdc
- Allows to use more efficient algorithm to deal with copy tracing.
-
re-delta-parent
deltas within internal storage will choose a new base revision if needed
@@ -219,12 +207,6 @@
requirements
preserved: dotencode, fncache, generaldelta, revlogv1, sparserevlog, store
- sidedata
- Allows storage of extra data alongside a revision.
-
- copies-sdc
- Allows to use more efficient algorithm to deal with copy tracing.
-
re-delta-parent
deltas within internal storage will choose a new base revision if needed
@@ -332,12 +314,6 @@
sparserevlog
Revlog supports delta chain with more unused data between payload. These gaps will be skipped at read time. This allows for better delta chains, making a better compression and faster exchange with server.
- sidedata
- Allows storage of extra data alongside a revision.
-
- copies-sdc
- Allows to use more efficient algorithm to deal with copy tracing.
-
additional optimizations are available by specifying "--optimize <name>":
re-delta-parent
@@ -386,12 +362,6 @@
sparserevlog
Revlog supports delta chain with more unused data between payload. These gaps will be skipped at read time. This allows for better delta chains, making a better compression and faster exchange with server.
- sidedata
- Allows storage of extra data alongside a revision.
-
- copies-sdc
- Allows to use more efficient algorithm to deal with copy tracing.
-
additional optimizations are available by specifying "--optimize <name>":
re-delta-parent
@@ -418,12 +388,6 @@
requirements
preserved: dotencode, fncache, generaldelta, revlogv1, sparserevlog, store
- sidedata
- Allows storage of extra data alongside a revision.
-
- copies-sdc
- Allows to use more efficient algorithm to deal with copy tracing.
-
beginning upgrade...
repository locked and read-only
creating temporary repository to stage migrated data: $TESTTMP/modern/.hg/upgrade.* (glob)
@@ -475,12 +439,6 @@
generaldelta
repository storage will be able to create optimal deltas; new repository data will be smaller and read times should decrease; interacting with other repositories using this storage model should require less network and CPU resources, making "hg push" and "hg pull" faster
- sidedata
- Allows storage of extra data alongside a revision.
-
- copies-sdc
- Allows to use more efficient algorithm to deal with copy tracing.
-
beginning upgrade...
repository locked and read-only
creating temporary repository to stage migrated data: $TESTTMP/upgradegd/.hg/upgrade.* (glob)
@@ -577,12 +535,6 @@
sparserevlog
Revlog supports delta chain with more unused data between payload. These gaps will be skipped at read time. This allows for better delta chains, making a better compression and faster exchange with server.
- sidedata
- Allows storage of extra data alongside a revision.
-
- copies-sdc
- Allows to use more efficient algorithm to deal with copy tracing.
-
beginning upgrade...
repository locked and read-only
creating temporary repository to stage migrated data: $TESTTMP/upgradegd/.hg/upgrade.* (glob)
@@ -617,12 +569,6 @@
requirements
preserved: dotencode, fncache, generaldelta, revlogv1, sparserevlog, store
- sidedata
- Allows storage of extra data alongside a revision.
-
- copies-sdc
- Allows to use more efficient algorithm to deal with copy tracing.
-
re-delta-parent
deltas within internal storage will choose a new base revision if needed
@@ -697,12 +643,6 @@
requirements
preserved: dotencode, fncache, generaldelta, revlogv1, sparserevlog, store
- sidedata
- Allows storage of extra data alongside a revision.
-
- copies-sdc
- Allows to use more efficient algorithm to deal with copy tracing.
-
re-delta-parent
deltas within internal storage will choose a new base revision if needed
@@ -749,12 +689,6 @@
requirements
preserved: dotencode, fncache, generaldelta, revlogv1, sparserevlog, store
- sidedata
- Allows storage of extra data alongside a revision.
-
- copies-sdc
- Allows to use more efficient algorithm to deal with copy tracing.
-
re-delta-parent
deltas within internal storage will choose a new base revision if needed
@@ -801,12 +735,6 @@
requirements
preserved: dotencode, fncache, generaldelta, revlogv1, sparserevlog, store
- sidedata
- Allows storage of extra data alongside a revision.
-
- copies-sdc
- Allows to use more efficient algorithm to deal with copy tracing.
-
re-delta-parent
deltas within internal storage will choose a new base revision if needed
@@ -858,12 +786,6 @@
preserved: dotencode, fncache, generaldelta, revlogv1, store
removed: sparserevlog
- sidedata
- Allows storage of extra data alongside a revision.
-
- copies-sdc
- Allows to use more efficient algorithm to deal with copy tracing.
-
re-delta-parent
deltas within internal storage will choose a new base revision if needed
@@ -916,12 +838,6 @@
sparserevlog
Revlog supports delta chain with more unused data between payload. These gaps will be skipped at read time. This allows for better delta chains, making a better compression and faster exchange with server.
- sidedata
- Allows storage of extra data alongside a revision.
-
- copies-sdc
- Allows to use more efficient algorithm to deal with copy tracing.
-
re-delta-parent
deltas within internal storage will choose a new base revision if needed
@@ -976,12 +892,6 @@
requirements
preserved: dotencode, fncache, generaldelta, revlogv1, sparserevlog, store
- sidedata
- Allows storage of extra data alongside a revision.
-
- copies-sdc
- Allows to use more efficient algorithm to deal with copy tracing.
-
beginning upgrade...
repository locked and read-only
creating temporary repository to stage migrated data: $TESTTMP/store-filenames/.hg/upgrade.* (glob)
@@ -1013,12 +923,6 @@
requirements
preserved: dotencode, fncache, generaldelta, revlogv1, sparserevlog, store
- sidedata
- Allows storage of extra data alongside a revision.
-
- copies-sdc
- Allows to use more efficient algorithm to deal with copy tracing.
-
re-delta-fulladd
each revision will be added as new content to the internal storage; this will likely drastically slow down execution time, but some extensions might need it
@@ -1083,12 +987,6 @@
requirements
preserved: dotencode, fncache, generaldelta, largefiles, revlogv1, sparserevlog, store
- sidedata
- Allows storage of extra data alongside a revision.
-
- copies-sdc
- Allows to use more efficient algorithm to deal with copy tracing.
-
beginning upgrade...
repository locked and read-only
creating temporary repository to stage migrated data: $TESTTMP/largefilesrepo/.hg/upgrade.* (glob)
@@ -1142,12 +1040,6 @@
requirements
preserved: dotencode, fncache, generaldelta, largefiles, lfs, revlogv1, sparserevlog, store
- sidedata
- Allows storage of extra data alongside a revision.
-
- copies-sdc
- Allows to use more efficient algorithm to deal with copy tracing.
-
beginning upgrade...
repository locked and read-only
creating temporary repository to stage migrated data: $TESTTMP/largefilesrepo/.hg/upgrade.* (glob)
@@ -1243,12 +1135,6 @@
requirements
preserved: dotencode, fncache, generaldelta, revlogv1, sparserevlog, store
- sidedata
- Allows storage of extra data alongside a revision.
-
- copies-sdc
- Allows to use more efficient algorithm to deal with copy tracing.
-
re-delta-all
deltas within internal storage will be fully recomputed; this will likely drastically slow down execution time
--- a/tests/testlib/wait-on-file Sat Apr 11 17:43:29 2020 +0900
+++ b/tests/testlib/wait-on-file Fri Apr 24 15:06:42 2020 -0400
@@ -13,7 +13,7 @@
# if the test timeout have been extended, explicitly extend the provided timer
if [ "$HGTEST_TIMEOUT_DEFAULT" -lt "$HGTEST_TIMEOUT" ]; then
- timer=$(( ($timer * $HGTEST_TIMEOUT) / $HGTEST_TIMEOUT_DEFAULT ))
+ timer=$(( ( 100 * $timer * $HGTEST_TIMEOUT) / $HGTEST_TIMEOUT_DEFAULT ))
fi
wait_on="$2"