# HG changeset patch # User Augie Fackler # Date 1587755202 14400 # Node ID f365dfede78f2c0e9133d1cd7402f1898685c7d9 # Parent 27fe8cc1338fcc027dae3b08a88fabf57250de72# Parent a467416c493c3ab32f214b69b5d5831da24e5732 merge with stable diff -r 27fe8cc1338f -r f365dfede78f .hgsigs --- 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 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 diff -r 27fe8cc1338f -r f365dfede78f .hgtags --- 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 diff -r 27fe8cc1338f -r f365dfede78f contrib/automation/hgautomation/aws.py --- 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': [ diff -r 27fe8cc1338f -r f365dfede78f contrib/automation/hgautomation/linux.py --- 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" diff -r 27fe8cc1338f -r f365dfede78f contrib/install-windows-dependencies.ps1 --- 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" diff -r 27fe8cc1338f -r f365dfede78f contrib/packaging/requirements.txt --- 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 diff -r 27fe8cc1338f -r f365dfede78f contrib/packaging/requirements.txt.in --- 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 diff -r 27fe8cc1338f -r f365dfede78f mercurial/discovery.py --- 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)) diff -r 27fe8cc1338f -r f365dfede78f mercurial/revlogutils/nodemap.py --- 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): diff -r 27fe8cc1338f -r f365dfede78f mercurial/upgrade.py --- 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) diff -r 27fe8cc1338f -r f365dfede78f rust/hg-core/src/dirstate/status.rs --- 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>, @@ -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, diff -r 27fe8cc1338f -r f365dfede78f rust/hgcli/Cargo.lock diff -r 27fe8cc1338f -r f365dfede78f rust/hgcli/Cargo.toml diff -r 27fe8cc1338f -r f365dfede78f rust/hgcli/build.rs diff -r 27fe8cc1338f -r f365dfede78f rust/hgcli/src/main.rs diff -r 27fe8cc1338f -r f365dfede78f setup.py --- 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', diff -r 27fe8cc1338f -r f365dfede78f tests/test-convert-hg-source.t --- 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 diff -r 27fe8cc1338f -r f365dfede78f tests/test-infinitepush-ci.t --- 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 diff -r 27fe8cc1338f -r f365dfede78f tests/test-lfs-serve.t --- 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) diff -r 27fe8cc1338f -r f365dfede78f tests/test-log.t --- 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 diff -r 27fe8cc1338f -r f365dfede78f tests/test-status.t --- 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 diff -r 27fe8cc1338f -r f365dfede78f tests/test-upgrade-repo.t --- 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 ": 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 ": 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 ": 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 diff -r 27fe8cc1338f -r f365dfede78f tests/testlib/wait-on-file --- 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"