Mon, 23 Nov 2020 14:15:26 +0530 share: show warning if share is outdated while source supports share-safe
Pulkit Goyal <pulkit@yandex-team.ru> [Mon, 23 Nov 2020 14:15:26 +0530] rev 46019
share: show warning if share is outdated while source supports share-safe Previous patches in the series and some which are already committed implements share safe functionality where config and requirements will be shared too. Rolling this feature has a problem that existing shares may never upgrade as they will never learn about the new config. To help the transition, we show a warning message if the share source supports share-safe mechanism. This provides the source repo ability to upgrade and pass on the message to shares that you should reshare and upgrade too. Differential Revision: https://phab.mercurial-scm.org/D9369
Fri, 16 Oct 2020 18:57:55 +0530 upgrade: add support to downgrade share safe mode
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 16 Oct 2020 18:57:55 +0530] rev 46018
upgrade: add support to downgrade share safe mode In previous patch we added support to upgrade current repository to use share safe mode. This patch adds support to downgrade to remove share-safe mode. Differential Revision: https://phab.mercurial-scm.org/D9358
Thu, 25 Jun 2020 13:13:21 +0530 upgrade: add support for experimental safe share mode
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 25 Jun 2020 13:13:21 +0530] rev 46017
upgrade: add support for experimental safe share mode Recently we introduce the share-safe functionality which makes shares share requirements and config of share source. This patch adds support to `debugupgraderepo` command to upgrade repository to share-safe mode when `format.exp-share-safe` config is enabled. Differential Revision: https://phab.mercurial-scm.org/D9144
Mon, 30 Nov 2020 14:11:03 +0530 chgserver: catch RepoError while loading configuration
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 30 Nov 2020 14:11:03 +0530] rev 46016
chgserver: catch RepoError while loading configuration Recent share safe work introduced functionality to read share source config file on dispatch. This can result in RepoError while reading config file as the shared source might not be present. `test-share.t#safe` was failing with chg earlier because of this. Differential Revision: https://phab.mercurial-scm.org/D9462
Sat, 28 Nov 2020 16:59:40 -0500 registrar: clarify the documentation about some byte strings being required
Matt Harbison <matt_harbison@yahoo.com> [Sat, 28 Nov 2020 16:59:40 -0500] rev 46015
registrar: clarify the documentation about some byte strings being required I *thought* these needed to be byte strings, but didn't remember and had to search out examples. Differential Revision: https://phab.mercurial-scm.org/D9489
Mon, 30 Nov 2020 12:30:58 -0800 match: skip walking up the directory hierarchy if the number of pats are small
Kyle Lippincott <spectral@google.com> [Mon, 30 Nov 2020 12:30:58 -0800] rev 46014
match: skip walking up the directory hierarchy if the number of pats are small Previously, we would receive a path like abc/def/ghi and "walk up" the directory hierarchy, checking abc/def, abc, and `b''` to see if they were in the set of prefixes that this matcher covered. We did this indiscriminately - we generated all of these paths even if the set of prefixes the matcher covered was completely empty, which is the case for a lot of repos at my company (the narrow matcher we use is usually non-recursive). This brings the time for a rebase in one of my repos from 12.20s to 10.87s. In this particular repo, this is entirely due to the `len(prefix_set) == 0` check, as I do not have any recursive patterns in the narrowspec. Differential Revision: https://phab.mercurial-scm.org/D9488
Tue, 01 Dec 2020 22:19:01 +0100 relnotes: document better memory use for unbundle
Joerg Sonnenberger <joerg@bec.de> [Tue, 01 Dec 2020 22:19:01 +0100] rev 46013
relnotes: document better memory use for unbundle Differential Revision: https://phab.mercurial-scm.org/D9481
Mon, 30 Nov 2020 14:06:45 +0100 upgrade: add an explicite --filelogs arguments
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 30 Nov 2020 14:06:45 +0100] rev 46012
upgrade: add an explicite --filelogs arguments This make it possible to select no revlog for upgrade, which is useful for some upgrade target or in some specific cases (eg: persistent-nodemap or share-safe update). Differential Revision: https://phab.mercurial-scm.org/D9468
Mon, 30 Nov 2020 19:26:54 +0100 rhg: add a test for --rev with a hex changeset ID
Simon Sapin <simon-commits@exyr.org> [Mon, 30 Nov 2020 19:26:54 +0100] rev 46011
rhg: add a test for --rev with a hex changeset ID And fix error message formatting Differential Revision: https://phab.mercurial-scm.org/D9478
Tue, 01 Dec 2020 02:07:15 +0100 upgrade: move optimisation to something more declarative
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 01 Dec 2020 02:07:15 +0100] rev 46010
upgrade: move optimisation to something more declarative This is not great yet, but still better than the previous state. This get use one step closer to having all the possible "actions" clearly declared and moved in a dedicated module. Differential Revision: https://phab.mercurial-scm.org/D9475
Mon, 30 Nov 2020 23:54:25 +0100 upgrade: capitalize the `deficiency` constant
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 30 Nov 2020 23:54:25 +0100] rev 46009
upgrade: capitalize the `deficiency` constant I am reworking this code and moving to the current naming scheme help readability. Differential Revision: https://phab.mercurial-scm.org/D9474
Mon, 30 Nov 2020 23:52:29 +0100 upgrade: capitalize the `deficiency` constant
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 30 Nov 2020 23:52:29 +0100] rev 46008
upgrade: capitalize the `deficiency` constant I am reworking this code and moving to the current naming scheme help readability. Differential Revision: https://phab.mercurial-scm.org/D9473
Mon, 30 Nov 2020 09:47:46 -0800 tests: set old git default branch name for compatibility
Martin von Zweigbergk <martinvonz@google.com> [Mon, 30 Nov 2020 09:47:46 -0800] rev 46007
tests: set old git default branch name for compatibility Git's default branch name has changed on my machine (from "master" to "main"). Let's set the old name in our tests so we're compatible with both defaults (and maybe still compatible with Git versions that don't know about the config option). Differential Revision: https://phab.mercurial-scm.org/D9470
Sat, 28 Nov 2020 14:15:55 +0100 heptapod-ci: automatically refresh existing phabricator Diff on push
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 28 Nov 2020 14:15:55 +0100] rev 46006
heptapod-ci: automatically refresh existing phabricator Diff on push If a changeset have been submitted to Phabricator and a new version is pushed to heptapod, we should refresh the state on Phabricator. If we do not do this, they are a risk of an older version being applied from Phabricator. In this situation content-divergence will be (rightfully) detected by evolution. We only refresh the Diff if the test pass, to avoid updating Phabricator with broken content. Differential Revision: https://phab.mercurial-scm.org/D9451
Sat, 28 Nov 2020 14:11:54 +0100 contrib: add a small script to refresh all diff in the current stack
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 28 Nov 2020 14:11:54 +0100] rev 46005
contrib: add a small script to refresh all diff in the current stack This will be useful to introduce automatic refresh through heptapod. Differential Revision: https://phab.mercurial-scm.org/D9460
Mon, 30 Nov 2020 14:48:02 +0530 tests: conditionalize return code on chg in test-config.t
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 30 Nov 2020 14:48:02 +0530] rev 46004
tests: conditionalize return code on chg in test-config.t If there is any error while reading config, chg just returns 255 instead of 30. It seems to me that we cannot conditionalize only return codes in output using trailing `(chg !)` and hence used testcases. The test was failing with chg but after this patch, it now passes. Differential Revision: https://phab.mercurial-scm.org/D9463
Fri, 27 Nov 2020 21:32:42 +0530 tests: update test-chg.t with output change
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 27 Nov 2020 21:32:42 +0530] rev 46003
tests: update test-chg.t with output change Since this part of tests is only run with chg, hence it didn't get updated when the error message changed. Differential Revision: https://phab.mercurial-scm.org/D9414
Mon, 23 Nov 2020 14:33:58 +0100 rust-format: pin the formatted to a specific nightly version
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 23 Nov 2020 14:33:58 +0100] rev 46002
rust-format: pin the formatted to a specific nightly version Version 1.50 change the way rust-format behave. We pin the version for now, we can figure out something better later.
Fri, 20 Nov 2020 11:22:28 +0100 copies: clarify the return of _merge_copies_dict
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 20 Nov 2020 11:22:28 +0100] rev 46001
copies: clarify the return of _merge_copies_dict I misused that function twice in the past few days, so lets clarify the API. Differential Revision: https://phab.mercurial-scm.org/D9418
Fri, 20 Nov 2020 10:38:46 +0100 copies: avoid unwanted side effect from one branch to another
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 20 Nov 2020 10:38:46 +0100] rev 46000
copies: avoid unwanted side effect from one branch to another Without this copy, change in a one descendant branch (With "remove" change only) could affect computation on another descendant branches. This was not caugh by the test because the test graph are "too simple". I started writing more test in that regards, but I a submitting this changes earlier because I want to get more code landed to allow other optimisation work to happens. Differential Revision: https://phab.mercurial-scm.org/D9416
Thu, 26 Nov 2020 09:54:16 +0100 rhg: use `format_bytes!` for error messages
Raphaël Gomès <rgomes@octobus.net> [Thu, 26 Nov 2020 09:54:16 +0100] rev 45999
rhg: use `format_bytes!` for error messages This change also includes a formatting changing with the new `rustfmt` version, but I'm expecting it to have already been applied in another patch by the time this lands. Differential Revision: https://phab.mercurial-scm.org/D9407
Mon, 30 Nov 2020 10:18:36 +0100 packaging: don't use plain 'python' if another python has been specified
Mathias De Mare <mathias.de_mare@nokia.com> [Mon, 30 Nov 2020 10:18:36 +0100] rev 45998
packaging: don't use plain 'python' if another python has been specified Before this change, packaging on CentOS 8 failed because 'python' is used instead of 'python3'. Change was tested with: - make docker-centos7 - make docker-centos8 - make docker-ubuntu-bionic Differential Revision: https://phab.mercurial-scm.org/D9464
Thu, 26 Nov 2020 02:00:00 -0500 packaging: add pygit2 to the py3 Windows installers
Matt Harbison <matt_harbison@yahoo.com> [Thu, 26 Nov 2020 02:00:00 -0500] rev 45997
packaging: add pygit2 to the py3 Windows installers This is needed to be able to use the git extension. The extension no longer complains about the library being not installed, but `hg log -r .` on a repo that works in WSL yielded a TypeError: ... File "mercurial.hg", line 188, in _peerorrepo File "mercurial.localrepo", line 3224, in instance File "mercurial.localrepo", line 623, in makelocalrepository File "hgext.git", line 117, in _makestore File "hgext.git", line 48, in __init__ TypeError: Repository unable to unpack backend. Differential Revision: https://phab.mercurial-scm.org/D9405
Mon, 30 Nov 2020 12:40:28 +0100 upgrade: directly use the upgrade action constant
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 30 Nov 2020 12:40:28 +0100] rev 45996
upgrade: directly use the upgrade action constant This make the code simpler and will make it simpler to add more case in the future. Differential Revision: https://phab.mercurial-scm.org/D9467
Mon, 30 Nov 2020 12:24:36 +0100 upgrade: rename UPGRADE_FILELOG to UPGRADE_FILELOGS
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 30 Nov 2020 12:24:36 +0100] rev 45995
upgrade: rename UPGRADE_FILELOG to UPGRADE_FILELOGS They are multiple filelog to upgrade, so this seems more accurate. Differential Revision: https://phab.mercurial-scm.org/D9466
Mon, 23 Nov 2020 12:54:46 +0100 bisect: add `-G` to an `hg log` command in a test
Simon Sapin <simon-commits@exyr.org> [Mon, 23 Nov 2020 12:54:46 +0100] rev 45994
bisect: add `-G` to an `hg log` command in a test This helps readers see what shape of DAG to expect Differential Revision: https://phab.mercurial-scm.org/D9373
Mon, 23 Nov 2020 12:45:39 +0100 bisect: refactor to work on a list of revspecs
Simon Sapin <simon-commits@exyr.org> [Mon, 23 Nov 2020 12:45:39 +0100] rev 45993
bisect: refactor to work on a list of revspecs This will allow adding a `--rev` flag that can be passed more than once. Differential Revision: https://phab.mercurial-scm.org/D9372
Fri, 20 Nov 2020 10:35:42 +0100 copies: simplify the call to _merge_copies_dict
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 20 Nov 2020 10:35:42 +0100] rev 45992
copies: simplify the call to _merge_copies_dict Let's get the argument into the right order, then call the function once. Differential Revision: https://phab.mercurial-scm.org/D9417
Fri, 20 Nov 2020 10:49:32 +0100 copies: fast path no-op merge
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 20 Nov 2020 10:49:32 +0100] rev 45991
copies: fast path no-op merge If the two sides of the merge are the same (they come an unaltered common ancestors) we don't need any merging. Differential Revision: https://phab.mercurial-scm.org/D9415
Mon, 05 Oct 2020 01:49:04 +0200 copies-rust: encapsulate internal sets on `changes`
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 05 Oct 2020 01:49:04 +0200] rev 45990
copies-rust: encapsulate internal sets on `changes` The goal is to eventually stop creating the underlying set. So we need to encapsulate the call first. Differential Revision: https://phab.mercurial-scm.org/D9306
(0) -30000 -10000 -3000 -1000 -300 -100 -50 -30 +30 +50 +100 +300 +1000 +3000 tip