Thu, 13 Feb 2020 19:04:00 +0800 packaging: simply prune some directories in MANIFEST.in in a dedicated block
Anton Shestakov <av6@dwimlabs.net> [Thu, 13 Feb 2020 19:04:00 +0800] rev 5128
packaging: simply prune some directories in MANIFEST.in in a dedicated block exclude+recursive-exclude is basically prune.
Tue, 04 Feb 2020 13:00:05 -0800 metaedit: replace a compat condition with a less specific proxy
Martin von Zweigbergk <martinvonz@google.com> [Tue, 04 Feb 2020 13:00:05 -0800] rev 5127
metaedit: replace a compat condition with a less specific proxy Same reasoning as for the previous patch. In this case, the closest commit I could find was 36 commits later (3d35304bd09b).
Tue, 04 Feb 2020 12:46:55 -0800 fold: replace a compat condition with a less specific proxy
Martin von Zweigbergk <martinvonz@google.com> [Tue, 04 Feb 2020 12:46:55 -0800] rev 5126
fold: replace a compat condition with a less specific proxy If `scmutil.cleanupnodes()` is overridden, the check in `scmutil.cleanupnodes.__code__.co_varnames` will fail. Let's use a less specific proxy for that condition so extensions are safely override `scmutil.cleanupnodes()`. I picked `util.safehasattr(scmutil, 'nullrev')` as the proxy. That basically checks for Mercurial commit d739f423bf06, which is two commits later than the commit we actually care about.
Tue, 11 Feb 2020 17:21:43 +0800 tests: drop useless "(glob)" for timezone offsets
Anton Shestakov <av6@dwimlabs.net> [Tue, 11 Feb 2020 17:21:43 +0800] rev 5125
tests: drop useless "(glob)" for timezone offsets
Tue, 04 Feb 2020 14:07:29 +0700 changelog: obslog shows folds now
Anton Shestakov <av6@dwimlabs.net> [Tue, 04 Feb 2020 14:07:29 +0700] rev 5124
changelog: obslog shows folds now
Tue, 14 Jan 2020 20:20:13 +0700 obslog: use _successorsetverb() in regular obslog too
Anton Shestakov <av6@dwimlabs.net> [Tue, 14 Jan 2020 20:20:13 +0700] rev 5123
obslog: use _successorsetverb() in regular obslog too It was already used for obslog --filternonlocal.
Sun, 02 Feb 2020 16:18:18 +0100 release: do not forget to tweet about it
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Feb 2020 16:18:18 +0100] rev 5122
release: do not forget to tweet about it
Sun, 02 Feb 2020 15:49:31 +0100 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Feb 2020 15:49:31 +0100] rev 5121
branching: merge with stable
Sun, 02 Feb 2020 13:40:13 +0100 release: fix a silly typo stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Feb 2020 13:40:13 +0100] rev 5120
release: fix a silly typo
Sun, 02 Feb 2020 13:28:47 +0100 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Feb 2020 13:28:47 +0100] rev 5119
branching: merge with stable
Sun, 02 Feb 2020 13:25:23 +0100 release: add missing checklist items stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Feb 2020 13:25:23 +0100] rev 5118
release: add missing checklist items
Sat, 01 Feb 2020 11:24:46 +0100 heptapod: add an issue template for new version stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 01 Feb 2020 11:24:46 +0100] rev 5117
heptapod: add an issue template for new version
Thu, 30 Jan 2020 18:14:14 +0100 packaging: create a release check list stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 30 Jan 2020 18:14:14 +0100] rev 5116
packaging: create a release check list This should help other to release version of evolve.
Tue, 14 Jan 2020 19:42:06 +0700 obshistory: add 'folded' to the list of precise verbs
Anton Shestakov <av6@dwimlabs.net> [Tue, 14 Jan 2020 19:42:06 +0700] rev 5115
obshistory: add 'folded' to the list of precise verbs It's used for templates and for obslog --filternonlocal, but not for regular obslog.
Sat, 11 Jan 2020 19:53:11 +0700 metaedit: actually track folds using fold-* metadata in obsmarkers
Anton Shestakov <av6@dwimlabs.net> [Sat, 11 Jan 2020 19:53:11 +0700] rev 5114
metaedit: actually track folds using fold-* metadata in obsmarkers
Sat, 11 Jan 2020 19:52:56 +0700 fold: actually track folds using fold-* metadata in obsmarkers
Anton Shestakov <av6@dwimlabs.net> [Sat, 11 Jan 2020 19:52:56 +0700] rev 5113
fold: actually track folds using fold-* metadata in obsmarkers
Sun, 02 Feb 2020 15:51:10 +0700 tests: adjust test output for an early return in mergecopies()
Anton Shestakov <av6@dwimlabs.net> [Sun, 02 Feb 2020 15:51:10 +0700] rev 5112
tests: adjust test output for an early return in mergecopies() CORE-TEST-OUTPUT-UPDATE: baf3fe2977cc
Sat, 01 Feb 2020 12:50:10 +0100 branching
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 01 Feb 2020 12:50:10 +0100] rev 5111
branching
Fri, 31 Jan 2020 14:50:37 +0100 packaging: mark as developer version stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 31 Jan 2020 14:50:37 +0100] rev 5110
packaging: mark as developer version This avoid confusion when installing from source.
Fri, 31 Jan 2020 15:03:59 +0100 Added tag 9.2.2 for changeset ef41094c34e1 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 31 Jan 2020 15:03:59 +0100] rev 5109
Added tag 9.2.2 for changeset ef41094c34e1
Fri, 31 Jan 2020 14:44:45 +0100 packaging: prepare version 9.2.2 stable 9.2.2
Anton Shestakov <av6@dwimlabs.net> [Fri, 31 Jan 2020 14:44:45 +0100] rev 5108
packaging: prepare version 9.2.2
Fri, 31 Jan 2020 14:52:38 +0100 packaging: update tested with version stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 31 Jan 2020 14:52:38 +0100] rev 5107
packaging: update tested with version We have tested this with 5.3rc so let mark 5.3 as tested too.
Fri, 31 Jan 2020 14:44:39 +0100 packaging: update changelog for version 9.2.2 stable
Anton Shestakov <av6@dwimlabs.net> [Fri, 31 Jan 2020 14:44:39 +0100] rev 5106
packaging: update changelog for version 9.2.2
Thu, 30 Jan 2020 14:32:11 +0700 test-compat: merge mercurial-4.6 into mercurial-4.5 mercurial-4.5
Anton Shestakov <av6@dwimlabs.net> [Thu, 30 Jan 2020 14:32:11 +0700] rev 5105
test-compat: merge mercurial-4.6 into mercurial-4.5
Thu, 30 Jan 2020 14:32:10 +0700 test-compat: merge mercurial-4.7 into mercurial-4.6 mercurial-4.6
Anton Shestakov <av6@dwimlabs.net> [Thu, 30 Jan 2020 14:32:10 +0700] rev 5104
test-compat: merge mercurial-4.7 into mercurial-4.6
Thu, 30 Jan 2020 14:32:09 +0700 test-compat: merge mercurial-4.8 into mercurial-4.7 mercurial-4.7
Anton Shestakov <av6@dwimlabs.net> [Thu, 30 Jan 2020 14:32:09 +0700] rev 5103
test-compat: merge mercurial-4.8 into mercurial-4.7
Thu, 30 Jan 2020 14:32:08 +0700 test-compat: merge mercurial-4.9 into mercurial-4.8 mercurial-4.8
Anton Shestakov <av6@dwimlabs.net> [Thu, 30 Jan 2020 14:32:08 +0700] rev 5102
test-compat: merge mercurial-4.9 into mercurial-4.8
Thu, 30 Jan 2020 14:32:06 +0700 test-compat: merge mercurial-5.0 into mercurial-4.9 mercurial-4.9
Anton Shestakov <av6@dwimlabs.net> [Thu, 30 Jan 2020 14:32:06 +0700] rev 5101
test-compat: merge mercurial-5.0 into mercurial-4.9
Thu, 30 Jan 2020 14:32:05 +0700 test-compat: merge mercurial-5.1 into mercurial-5.0 mercurial-5.0
Anton Shestakov <av6@dwimlabs.net> [Thu, 30 Jan 2020 14:32:05 +0700] rev 5100
test-compat: merge mercurial-5.1 into mercurial-5.0
Thu, 30 Jan 2020 14:32:04 +0700 test-compat: merge mercurial-5.2 into mercurial-5.1 mercurial-5.1
Anton Shestakov <av6@dwimlabs.net> [Thu, 30 Jan 2020 14:32:04 +0700] rev 5099
test-compat: merge mercurial-5.2 into mercurial-5.1
Thu, 30 Jan 2020 14:32:03 +0700 test-compat: merge stable into mercurial-5.2 mercurial-5.2
Anton Shestakov <av6@dwimlabs.net> [Thu, 30 Jan 2020 14:32:03 +0700] rev 5098
test-compat: merge stable into mercurial-5.2
Mon, 27 Jan 2020 14:55:35 +0700 tests: allow an empty merge commit to have tests pass without too many changes stable
Anton Shestakov <av6@dwimlabs.net> [Mon, 27 Jan 2020 14:55:35 +0700] rev 5097
tests: allow an empty merge commit to have tests pass without too many changes Not the greatest fix, but this allows us to have the same test case for all versions of Mercurial. Hash of 29 changes because instead of both parents only one is set in hg 5.3.
Tue, 28 Jan 2020 20:12:04 +0700 compat: add a context manager that calls _quick_access_changeid_invalidate() stable
Anton Shestakov <av6@dwimlabs.net> [Tue, 28 Jan 2020 20:12:04 +0700] rev 5096
compat: add a context manager that calls _quick_access_changeid_invalidate()
Fri, 17 Jan 2020 20:40:24 +0700 evolve: provide branch argument to overlayworkingctx.tomemctx() stable
Anton Shestakov <av6@dwimlabs.net> [Fri, 17 Jan 2020 20:40:24 +0700] rev 5095
evolve: provide branch argument to overlayworkingctx.tomemctx() This is related to upstream 2ecbc4ec87d8 and fixes test-evolve.t.
Thu, 23 Jan 2020 19:33:40 +0700 evolve: compatibility with copies.graftcopies() from hg 5.3 stable
Anton Shestakov <av6@dwimlabs.net> [Thu, 23 Jan 2020 19:33:40 +0700] rev 5094
evolve: compatibility with copies.graftcopies() from hg 5.3
Fri, 15 Nov 2019 08:14:06 -0800 cmdrewrite: avoid accessing scmutil.status fields by index stable
Martin von Zweigbergk <martinvonz@google.com> [Fri, 15 Nov 2019 08:14:06 -0800] rev 5093
cmdrewrite: avoid accessing scmutil.status fields by index Support for indexed access is going away in Mercurial. Accessing the fields by name is clearer anyway.
Thu, 23 Jan 2020 17:41:00 +0700 test-compat: merge mercurial-4.6 into mercurial-4.5 mercurial-4.5
Anton Shestakov <av6@dwimlabs.net> [Thu, 23 Jan 2020 17:41:00 +0700] rev 5092
test-compat: merge mercurial-4.6 into mercurial-4.5
Thu, 23 Jan 2020 17:40:59 +0700 test-compat: merge mercurial-4.7 into mercurial-4.6 mercurial-4.6
Anton Shestakov <av6@dwimlabs.net> [Thu, 23 Jan 2020 17:40:59 +0700] rev 5091
test-compat: merge mercurial-4.7 into mercurial-4.6
Thu, 23 Jan 2020 17:40:57 +0700 test-compat: merge mercurial-4.8 into mercurial-4.7 mercurial-4.7
Anton Shestakov <av6@dwimlabs.net> [Thu, 23 Jan 2020 17:40:57 +0700] rev 5090
test-compat: merge mercurial-4.8 into mercurial-4.7
Thu, 23 Jan 2020 17:40:56 +0700 test-compat: merge mercurial-4.9 into mercurial-4.8 mercurial-4.8
Anton Shestakov <av6@dwimlabs.net> [Thu, 23 Jan 2020 17:40:56 +0700] rev 5089
test-compat: merge mercurial-4.9 into mercurial-4.8
Thu, 23 Jan 2020 17:40:54 +0700 test-compat: merge mercurial-5.0 into mercurial-4.9 mercurial-4.9
Anton Shestakov <av6@dwimlabs.net> [Thu, 23 Jan 2020 17:40:54 +0700] rev 5088
test-compat: merge mercurial-5.0 into mercurial-4.9
Thu, 23 Jan 2020 17:40:52 +0700 test-compat: merge mercurial-5.1 into mercurial-5.0 mercurial-5.0
Anton Shestakov <av6@dwimlabs.net> [Thu, 23 Jan 2020 17:40:52 +0700] rev 5087
test-compat: merge mercurial-5.1 into mercurial-5.0
Thu, 23 Jan 2020 17:40:51 +0700 test-compat: merge mercurial-5.2 into mercurial-5.1 mercurial-5.1
Anton Shestakov <av6@dwimlabs.net> [Thu, 23 Jan 2020 17:40:51 +0700] rev 5086
test-compat: merge mercurial-5.2 into mercurial-5.1
Thu, 23 Jan 2020 18:22:47 +0700 test-compat: merge stable into mercurial-5.2 mercurial-5.2
Anton Shestakov <av6@dwimlabs.net> [Thu, 23 Jan 2020 18:22:47 +0700] rev 5085
test-compat: merge stable into mercurial-5.2
Thu, 23 Jan 2020 18:19:36 +0700 tests: use --tool flag instead of --config ui.merge stable
Anton Shestakov <av6@dwimlabs.net> [Thu, 23 Jan 2020 18:19:36 +0700] rev 5084
tests: use --tool flag instead of --config ui.merge Makes this test not fail on older hg versions.
Mon, 04 Nov 2019 00:18:55 +0530 evolve: remove a check which is already done by rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com> [Mon, 04 Nov 2019 00:18:55 +0530] rev 5083
evolve: remove a check which is already done by rewriteutil.precheck() We have tests to check if fold is being performed on public cset. There is no changes in test files because testing that never touched the part this patch removes, and already caught in rewriteutil.precheck()
Thu, 23 Jan 2020 11:05:38 +0100 test-compat: create a compatibility branch for Mercurial 5.2 mercurial-5.2
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 23 Jan 2020 11:05:38 +0100] rev 5082
test-compat: create a compatibility branch for Mercurial 5.2 Mercurial 5.3rc have been released, so the stable branch is no longer about 5.2.
Thu, 23 Jan 2020 11:01:46 +0100 contrib: make merge-test-compat.sh more topic-friendly stable
Anton Shestakov <av6@dwimlabs.net> [Thu, 23 Jan 2020 11:01:46 +0100] rev 5081
contrib: make merge-test-compat.sh more topic-friendly
Mon, 20 Jan 2020 22:43:11 +0700 contrib: shellcheck merge-test-compat.sh stable
Anton Shestakov <av6@dwimlabs.net> [Mon, 20 Jan 2020 22:43:11 +0700] rev 5080
contrib: shellcheck merge-test-compat.sh
Mon, 04 Nov 2019 01:30:50 +0530 evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com> [Mon, 04 Nov 2019 01:30:50 +0530] rev 5079
evolve: add pre-check logic for content-divergence in rewriteutil.precheck() For now, pre-check will abort if rewriting a rev create divergence (and config experimental.evolution.allowdivergence is not set to True). But this behaviour can be improved where instead of abort maybe we can confirm the user to either proceed with divergence or some other options depends on what command user is running. Changes in test file are used to overrides the pre-check for testing purpose (using experimental.evolution.allowdivergence=yes).
Wed, 01 Jan 2020 21:36:21 +0530 evolve: rename a function to make it explicit
Sushil khanchi <sushilkhanchi97@gmail.com> [Wed, 01 Jan 2020 21:36:21 +0530] rev 5078
evolve: rename a function to make it explicit
Tue, 21 Jan 2020 23:48:41 +0700 obsdiscovery: compatibility when importing forcebytestr() stable
Anton Shestakov <av6@dwimlabs.net> [Tue, 21 Jan 2020 23:48:41 +0700] rev 5077
obsdiscovery: compatibility when importing forcebytestr()
Tue, 03 Dec 2019 14:56:25 +0700 heptapod-ci: add pytype job, allow it to fail for now
Anton Shestakov <av6@dwimlabs.net> [Tue, 03 Dec 2019 14:56:25 +0700] rev 5076
heptapod-ci: add pytype job, allow it to fail for now
Sun, 08 Dec 2019 02:17:11 +0530 evolve: add a new method picksplitsuccessor() in utility.py
Sushil khanchi <sushilkhanchi97@gmail.com> [Sun, 08 Dec 2019 02:17:11 +0530] rev 5075
evolve: add a new method picksplitsuccessor() in utility.py This patch adds the logic to return a single successor of a rev which was split. If split revisions are on a single topological branch then we return highest one; otherwise prompt user to choose an evolve destination.
Mon, 20 Jan 2020 22:52:05 +0700 changelog: add missing entries stable
Anton Shestakov <av6@dwimlabs.net> [Mon, 20 Jan 2020 22:52:05 +0700] rev 5074
changelog: add missing entries
Wed, 15 Jan 2020 15:28:44 +0700 compat: also import datestr from dateutil
Anton Shestakov <av6@dwimlabs.net> [Wed, 15 Jan 2020 15:28:44 +0700] rev 5073
compat: also import datestr from dateutil
Mon, 13 Jan 2020 15:36:24 +0700 obshistory: remove unused ismetablacklisted()
Anton Shestakov <av6@dwimlabs.net> [Mon, 13 Jan 2020 15:36:24 +0700] rev 5072
obshistory: remove unused ismetablacklisted() Code that used this function was removed in 461b9a91b662. But we still need to add one item currently missing from METABLACKLIST in core: touch noise.
Mon, 13 Jan 2020 15:05:34 +0700 obshistory: remove unused successorsetallmarkers()
Anton Shestakov <av6@dwimlabs.net> [Mon, 13 Jan 2020 15:05:34 +0700] rev 5071
obshistory: remove unused successorsetallmarkers() This function was used in code that was removed in 901186e1fe05.
Mon, 13 Jan 2020 15:04:02 +0700 obshistory: remove unused _successorsetdates() and _successorsetusers()
Anton Shestakov <av6@dwimlabs.net> [Mon, 13 Jan 2020 15:04:02 +0700] rev 5070
obshistory: remove unused _successorsetdates() and _successorsetusers() They were used by preparesuccessorset() that was removed in the previous patch.
Mon, 13 Jan 2020 14:59:08 +0700 obshistory: remove unused preparesuccessorset()
Anton Shestakov <av6@dwimlabs.net> [Mon, 13 Jan 2020 14:59:08 +0700] rev 5069
obshistory: remove unused preparesuccessorset() It was used in code that was removed in 901186e1fe05.
Sat, 11 Jan 2020 20:10:06 +0700 obshistory: use effect flags from obsutil
Anton Shestakov <av6@dwimlabs.net> [Sat, 11 Jan 2020 20:10:06 +0700] rev 5068
obshistory: use effect flags from obsutil They were added there in 51aadc0d0da2::187bc224554a (hg 4.4).
Sat, 11 Jan 2020 20:06:26 +0700 obshistory: make a {flag value: description} dict for _markerseffects()
Anton Shestakov <av6@dwimlabs.net> [Sat, 11 Jan 2020 20:06:26 +0700] rev 5067
obshistory: make a {flag value: description} dict for _markerseffects()
Sat, 11 Jan 2020 19:49:45 +0700 obshistory: factor out _markerseffects()
Anton Shestakov <av6@dwimlabs.net> [Sat, 11 Jan 2020 19:49:45 +0700] rev 5066
obshistory: factor out _markerseffects()
Sat, 11 Jan 2020 19:24:21 +0700 obshistory: factor out _markerspreciseverb()
Anton Shestakov <av6@dwimlabs.net> [Sat, 11 Jan 2020 19:24:21 +0700] rev 5065
obshistory: factor out _markerspreciseverb()
Fri, 17 Jan 2020 20:40:24 +0700 evolve: provide branch argument to overlayworkingctx.tomemctx()
Anton Shestakov <av6@dwimlabs.net> [Fri, 17 Jan 2020 20:40:24 +0700] rev 5064
evolve: provide branch argument to overlayworkingctx.tomemctx() This is related to upstream 2ecbc4ec87d8 and fixes test-evolve.t.
Wed, 08 Jan 2020 18:44:18 +0700 changelog: mention all the cleanups as one item
Anton Shestakov <av6@dwimlabs.net> [Wed, 08 Jan 2020 18:44:18 +0700] rev 5063
changelog: mention all the cleanups as one item
Wed, 08 Jan 2020 15:34:34 +0700 templatekw: drop obsfatedata and related code
Anton Shestakov <av6@dwimlabs.net> [Wed, 08 Jan 2020 15:34:34 +0700] rev 5062
templatekw: drop obsfatedata and related code AFAIU, this function exists so that people could hack together a replacement template for {obsfate} if they weren't satisfied with the default, but only on older versions. It seems that 3d0f8918351b::d0f1e3d3ef4d was the series introducing obsfate* functions that can show specific obsmarker properties, and that was included in hg 4.4. obsfatedata was already claimed to be removed in 35ffd7a4b339 and then more of its usage was removed in 9882fed37ea9. There are no users in evolve and in core hg, no tests and nothing else mentions obsfatedata.
Tue, 07 Jan 2020 16:33:37 +0700 templatekw: drop obsfateprinter() and obsfatelineprinter()
Anton Shestakov <av6@dwimlabs.net> [Tue, 07 Jan 2020 16:33:37 +0700] rev 5061
templatekw: drop obsfateprinter() and obsfatelineprinter() They were unused (probably because their versions were already pushed to hg 4.4).
Tue, 07 Jan 2020 16:30:18 +0700 compat: drop isobsnotesupported() that checks if storing notes is supported
Anton Shestakov <av6@dwimlabs.net> [Tue, 07 Jan 2020 16:30:18 +0700] rev 5060
compat: drop isobsnotesupported() that checks if storing notes is supported The check is identical to checking if core has e27f1f04c2cf (hg 4.4).
Tue, 07 Jan 2020 16:05:44 +0700 templatekw: use literal set syntax
Anton Shestakov <av6@dwimlabs.net> [Tue, 07 Jan 2020 16:05:44 +0700] rev 5059
templatekw: use literal set syntax According to https://www.mercurial-scm.org/wiki/SupportedPythonVersions, we don't support Python 2.6 since 4.3.
Sat, 04 Jan 2020 21:07:38 +0700 obshistory: remove obsfateverb/obsfateprinter patching compatibility
Anton Shestakov <av6@dwimlabs.net> [Sat, 04 Jan 2020 21:07:38 +0700] rev 5058
obshistory: remove obsfateverb/obsfateprinter patching compatibility obsutil.obsfateverb() was introduced in 3d0f8918351b (hg 4.4) and renamed in b81ad5b78a81 (hg 4.5). Considering the supported evolve versions, the first check is unnecessary (the condition is always True) obsutil.obsfateprinter() was introduced in e27f1f04c2cf (hg 4.4).
Fri, 03 Jan 2020 23:32:48 +0700 obshistory: drop unused keyword argument to _getobsfateandsuccs()
Anton Shestakov <av6@dwimlabs.net> [Fri, 03 Jan 2020 23:32:48 +0700] rev 5057
obshistory: drop unused keyword argument to _getobsfateandsuccs()
Thu, 02 Jan 2020 01:16:18 +0700 obshistory: use successorsandmarkers() from obsutil, drop local variant
Anton Shestakov <av6@dwimlabs.net> [Thu, 02 Jan 2020 01:16:18 +0700] rev 5056
obshistory: use successorsandmarkers() from obsutil, drop local variant It's been in core since 4.4 and is identical to the version removed by this patch, except it returns None if ctx is not obsolete.
Tue, 31 Dec 2019 21:41:22 +0700 compat: drop code from 35b2d201eb71 (compatibility with hg 4.3)
Anton Shestakov <av6@dwimlabs.net> [Tue, 31 Dec 2019 21:41:22 +0700] rev 5055
compat: drop code from 35b2d201eb71 (compatibility with hg 4.3)
Thu, 26 Dec 2019 22:32:44 +0700 tests: rename precursors to predecessors in test-evolve-templates.t
Anton Shestakov <av6@dwimlabs.net> [Thu, 26 Dec 2019 22:32:44 +0700] rev 5054
tests: rename precursors to predecessors in test-evolve-templates.t
Thu, 28 Nov 2019 11:41:17 +0700 evolve: correct spelling of superseded everywhere else
Anton Shestakov <av6@dwimlabs.net> [Thu, 28 Nov 2019 11:41:17 +0700] rev 5053
evolve: correct spelling of superseded everywhere else
Thu, 28 Nov 2019 11:37:56 +0700 evolve: use obsutil._getobsfate() directly
Anton Shestakov <av6@dwimlabs.net> [Thu, 28 Nov 2019 11:37:56 +0700] rev 5052
evolve: use obsutil._getobsfate() directly It's been there since 4.5 (265cd9e19d26), we can safely rely on it. It's necessary though to use the correct spelling of superseded.
Sat, 28 Dec 2019 23:20:05 +0530 evolve: remove dead code
Sushil khanchi <sushilkhanchi97@gmail.com> [Sat, 28 Dec 2019 23:20:05 +0530] rev 5051
evolve: remove dead code
Sat, 07 Dec 2019 23:13:40 +0530 evolve: use utility._singlesuccessor() in _solveunstable()
Sushil khanchi <sushilkhanchi97@gmail.com> [Sat, 07 Dec 2019 23:13:40 +0530] rev 5050
evolve: use utility._singlesuccessor() in _solveunstable()
Wed, 18 Dec 2019 16:21:37 +0100 evolve: preliminary indentation
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 18 Dec 2019 16:21:37 +0100] rev 5049
evolve: preliminary indentation The whole code will end up in a try/except clause. We pre-indent the code to clarify the next patch.
Fri, 03 Jan 2020 23:12:19 +0700 evolve: provide cache argument to obsutil.successorssets() correctly stable
Anton Shestakov <av6@dwimlabs.net> [Fri, 03 Jan 2020 23:12:19 +0700] rev 5048
evolve: provide cache argument to obsutil.successorssets() correctly After 68f3e819d41d (4.3) the 3rd argument to that function is `closest`.
Fri, 20 Dec 2019 14:08:37 +0700 pullbundle: random.sample() chokes on a spanset, turn it into a list instead
Anton Shestakov <av6@dwimlabs.net> [Fri, 20 Dec 2019 14:08:37 +0700] rev 5047
pullbundle: random.sample() chokes on a spanset, turn it into a list instead On Python 3.
Fri, 20 Dec 2019 13:50:31 +0700 pullbundle: use % instead of .format() because % exists for bytes
Anton Shestakov <av6@dwimlabs.net> [Fri, 20 Dec 2019 13:50:31 +0700] rev 5046
pullbundle: use % instead of .format() because % exists for bytes
Thu, 19 Dec 2019 18:16:18 +0700 tests: test that debugpullbundlecacheoverlap command works
Anton Shestakov <av6@dwimlabs.net> [Thu, 19 Dec 2019 18:16:18 +0700] rev 5045
tests: test that debugpullbundlecacheoverlap command works
Thu, 19 Dec 2019 18:02:31 +0700 pullbundle: compatibility for progress in hg <= 4.6
Anton Shestakov <av6@dwimlabs.net> [Thu, 19 Dec 2019 18:02:31 +0700] rev 5044
pullbundle: compatibility for progress in hg <= 4.6
Thu, 19 Dec 2019 18:01:15 +0700 compat: add hg version to progress compatibility code
Anton Shestakov <av6@dwimlabs.net> [Thu, 19 Dec 2019 18:01:15 +0700] rev 5043
compat: add hg version to progress compatibility code
Mon, 09 Dec 2019 19:59:51 +0700 serverminitopic: ask pytype to disable import-error on a block handling hg 4.5
Anton Shestakov <av6@dwimlabs.net> [Mon, 09 Dec 2019 19:59:51 +0700] rev 5042
serverminitopic: ask pytype to disable import-error on a block handling hg 4.5
Mon, 09 Dec 2019 19:58:58 +0700 topic: ask pytype to disable import-error on a block handling hg 4.5
Anton Shestakov <av6@dwimlabs.net> [Mon, 09 Dec 2019 19:58:58 +0700] rev 5041
topic: ask pytype to disable import-error on a block handling hg 4.5
Mon, 09 Dec 2019 16:40:53 +0700 evolve: remove unused struct import
Anton Shestakov <av6@dwimlabs.net> [Mon, 09 Dec 2019 16:40:53 +0700] rev 5040
evolve: remove unused struct import
Mon, 09 Dec 2019 19:44:10 +0700 compat: ask pytype to ignore some warnings
Anton Shestakov <av6@dwimlabs.net> [Mon, 09 Dec 2019 19:44:10 +0700] rev 5039
compat: ask pytype to ignore some warnings It's expected to have a bunch of import and attribute errors in this module because it's for compatibility with different versions of hg and Python. Although it doesn't explain why a function wouldn't have __code__ attribute? So far I think it's a quirk of pytype.
Wed, 06 Nov 2019 18:15:00 +0530 evolve: extract logic of pre-checking divergence risk to its own function
Sushil khanchi <sushilkhanchi97@gmail.com> [Wed, 06 Nov 2019 18:15:00 +0530] rev 5038
evolve: extract logic of pre-checking divergence risk to its own function Extracting the logic (which is used to check if rewriting an obsolete revision will create divergence) to a function. This function will be used in upcoming patches of pre-checking. This is how we check if rewriting an obsolete revision will create divergence. We need to check two cases: If there is any 1) non-obsolete successor. -> easily done by `obsutil.successorssets()` 2) precursor with non-obsolete successor. -> using `evolvecmd.divergentsets()`
Tue, 24 Dec 2019 23:31:42 +0700 heptapod-ci: skip test-evolve.t in tests-py2-pure job mercurial-4.5
Anton Shestakov <av6@dwimlabs.net> [Tue, 24 Dec 2019 23:31:42 +0700] rev 5037
heptapod-ci: skip test-evolve.t in tests-py2-pure job It seems pure mode on Mercurial 4.5 was broken in case of this test. The error was: Traceback (most recent call last): File "/tmp/hgtests.YoK65c/install/bin/hg", line 41, in <module> dispatch.run() File "/tmp/hgtests.YoK65c/install/lib/python/mercurial/dispatch.py", line 88, in run status = (dispatch(req) or 0) & 255 File "/tmp/hgtests.YoK65c/install/lib/python/mercurial/dispatch.py", line 183, in dispatch ret = _runcatch(req) File "/tmp/hgtests.YoK65c/install/lib/python/mercurial/dispatch.py", line 324, in _runcatch return _callcatch(ui, _runcatchfunc) File "/tmp/hgtests.YoK65c/install/lib/python/mercurial/dispatch.py", line 332, in _callcatch return scmutil.callcatch(ui, func) File "/tmp/hgtests.YoK65c/install/lib/python/mercurial/scmutil.py", line 154, in callcatch return func() File "/tmp/hgtests.YoK65c/install/lib/python/mercurial/dispatch.py", line 314, in _runcatchfunc return _dispatch(req) File "/tmp/hgtests.YoK65c/install/lib/python/mercurial/dispatch.py", line 918, in _dispatch cmdpats, cmdoptions) File "/tmp/hgtests.YoK65c/install/lib/python/mercurial/dispatch.py", line 673, in runcommand ret = _runcommand(ui, options, cmd, d) File "/tmp/hgtests.YoK65c/install/lib/python/mercurial/dispatch.py", line 926, in _runcommand return cmdfunc() File "/tmp/hgtests.YoK65c/install/lib/python/mercurial/dispatch.py", line 915, in <lambda> d = lambda: util.checksignature(func)(ui, *args, **strcmdopt) File "/tmp/hgtests.YoK65c/install/lib/python/mercurial/util.py", line 1195, in check return func(*args, **kwargs) File "/builds/mercurial/evolve/hgext3rd/evolve/evolvecmd.py", line 1603, in evolve return _performevolve(ui, repo, **opts) File "/builds/mercurial/evolve/hgext3rd/evolve/evolvecmd.py", line 1726, in _performevolve targetcat, lastsolved) File "/builds/mercurial/evolve/hgext3rd/evolve/evolvecmd.py", line 1752, in _solveonerev lastsolved=lastsolved, stacktmplt=stacktmplt) File "/builds/mercurial/evolve/hgext3rd/evolve/evolvecmd.py", line 80, in _solveone lastsolved=lastsolved) File "/builds/mercurial/evolve/hgext3rd/evolve/evolvecmd.py", line 183, in _solveunstable keepbranch, b'orphan') File "/builds/mercurial/evolve/hgext3rd/evolve/evolvecmd.py", line 952, in relocate fullnode = unfi.changelog.index.partialmatch(sha1) AttributeError: 'InlinedIndexObject' object has no attribute 'partialmatch'
Tue, 10 Dec 2019 00:05:23 +0100 heptapod-ci: test python 4.5 with the pure version of Mercurial mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 10 Dec 2019 00:05:23 +0100] rev 5036
heptapod-ci: test python 4.5 with the pure version of Mercurial the evolve extension is currently broken on 4.5-pure. So we get it in its own commit.
Thu, 26 Dec 2019 21:23:30 +0100 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 26 Dec 2019 21:23:30 +0100] rev 5035
branching: merge with stable
Thu, 26 Dec 2019 12:22:49 +0700 pullbundle: kwarg to changegroup.makestream() is called matcher stable
Anton Shestakov <av6@dwimlabs.net> [Thu, 26 Dec 2019 12:22:49 +0700] rev 5034
pullbundle: kwarg to changegroup.makestream() is called matcher Caught by pytype.
Sun, 01 Dec 2019 12:41:20 +0530 evolve: extract pre merging content-div csets logic to its own function
Sushil khanchi <sushilkhanchi97@gmail.com> [Sun, 01 Dec 2019 12:41:20 +0530] rev 5033
evolve: extract pre merging content-div csets logic to its own function
Thu, 26 Dec 2019 20:28:21 +0100 evolve: further simplify a conditional
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 26 Dec 2019 20:28:21 +0100] rev 5032
evolve: further simplify a conditional The case is simple enough to be handled on its own.
Thu, 26 Dec 2019 20:23:27 +0100 evolve: simplify some conditional
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 26 Dec 2019 20:23:27 +0100] rev 5031
evolve: simplify some conditional extracted from a changeset of Sushil khanchi <sushilkhanchi97@gmail.com>
Thu, 26 Dec 2019 20:17:01 +0100 evolve: rename some variable ahead of time
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 26 Dec 2019 20:17:01 +0100] rev 5030
evolve: rename some variable ahead of time A refactoring of the content divergence resolution in on its way. use a distinctive name for some variable early to make the change easier to read later.
Thu, 28 Nov 2019 19:01:28 +0530 evolve: add logic to cover --stop when "divergent" relocation in play
Sushil khanchi <sushilkhanchi97@gmail.com> [Thu, 28 Nov 2019 19:01:28 +0530] rev 5029
evolve: add logic to cover --stop when "divergent" relocation in play Changes in test file reflect the added behaviour. The intermediate changeset has been properly cleaned up by the `hg evolve --stop` call.
Thu, 28 Nov 2019 17:58:45 +0530 evolve: test to show that --stop is not working when "divergent" relocated
Sushil khanchi <sushilkhanchi97@gmail.com> [Thu, 28 Nov 2019 17:58:45 +0530] rev 5028
evolve: test to show that --stop is not working when "divergent" relocated Right now, --stop leave the intermediate changeset (relocating the divergent changeset to its new location behind). This this is an incomplete step it should be removed by `hg --stop`.
Wed, 27 Nov 2019 22:52:08 +0530 evolve: add test to show that --abort is working fine
Sushil khanchi <sushilkhanchi97@gmail.com> [Wed, 27 Nov 2019 22:52:08 +0530] rev 5027
evolve: add test to show that --abort is working fine When resolving content-divergence where relocation of "divergent" changeset is also required, this test file make sure that --abort option is working fine.
Fri, 20 Dec 2019 17:39:44 +0530 evolve: fix a bug in logic to choose destination when no active topic stable
Sushil khanchi <sushilkhanchi97@gmail.com> [Fri, 20 Dec 2019 17:39:44 +0530] rev 5026
evolve: fix a bug in logic to choose destination when no active topic
Fri, 20 Dec 2019 17:32:07 +0530 evolve: add test to demonstrate a bug when no active topic stable
Sushil khanchi <sushilkhanchi97@gmail.com> [Fri, 20 Dec 2019 17:32:07 +0530] rev 5025
evolve: add test to demonstrate a bug when no active topic Added test shows that the logic to find the destination for `hg up` in the case when "working directory parent has a topic but wdir has no active topic" is buggy. This will be fixed in next patch.
Fri, 20 Dec 2019 17:31:57 +0530 evolve: fix a bug in logic of choosing destination for hg update stable
Sushil khanchi <sushilkhanchi97@gmail.com> [Fri, 20 Dec 2019 17:31:57 +0530] rev 5024
evolve: fix a bug in logic of choosing destination for hg update
Fri, 20 Dec 2019 17:17:30 +0530 evolve: add test to demonstrate a bug when active topic is empty stable
Sushil khanchi <sushilkhanchi97@gmail.com> [Fri, 20 Dec 2019 17:17:30 +0530] rev 5023
evolve: add test to demonstrate a bug when active topic is empty Added test shows that when current active topic is empty and we try to run `hg up`, it fails with an error. It's because this case is not correctly handled when we find a destination to update (when topics are in play) Next patch will fix this.
Thu, 19 Dec 2019 21:36:59 -0800 evolvecmd: fix a typo node->None
Martin von Zweigbergk <martinvonz@google.com> [Thu, 19 Dec 2019 21:36:59 -0800] rev 5022
evolvecmd: fix a typo node->None
Thu, 19 Dec 2019 21:15:31 -0800 evolvecmd: avoid a ctx->node->ctx conversion
Martin von Zweigbergk <martinvonz@google.com> [Thu, 19 Dec 2019 21:15:31 -0800] rev 5021
evolvecmd: avoid a ctx->node->ctx conversion
Thu, 19 Dec 2019 13:06:29 -0800 evolvecmd: mark relocate() private
Martin von Zweigbergk <martinvonz@google.com> [Thu, 19 Dec 2019 13:06:29 -0800] rev 5020
evolvecmd: mark relocate() private
Thu, 19 Dec 2019 22:31:13 -0800 cleanup: replace .parents()[0] by .p1()
Martin von Zweigbergk <martinvonz@google.com> [Thu, 19 Dec 2019 22:31:13 -0800] rev 5019
cleanup: replace .parents()[0] by .p1()
Wed, 27 Nov 2019 20:54:48 +0530 evolve: add more tests for --continue case when relocating "divergent"
Sushil khanchi <sushilkhanchi97@gmail.com> [Wed, 27 Nov 2019 20:54:48 +0530] rev 5018
evolve: add more tests for --continue case when relocating "divergent"
Wed, 27 Nov 2019 19:50:33 +0530 evolve: use meaningful variable names for a return value
Sushil khanchi <sushilkhanchi97@gmail.com> [Wed, 27 Nov 2019 19:50:33 +0530] rev 5017
evolve: use meaningful variable names for a return value
Wed, 27 Nov 2019 12:34:19 +0530 evolve: add logic to cover --continue case when relocating "divergent"
Sushil khanchi <sushilkhanchi97@gmail.com> [Wed, 27 Nov 2019 12:34:19 +0530] rev 5016
evolve: add logic to cover --continue case when relocating "divergent" Changes in test file demonstrate the added behaviour.
Mon, 25 Nov 2019 21:28:52 +0530 evolve: add test for `--continue` case when relocating "divergent"
Sushil khanchi <sushilkhanchi97@gmail.com> [Mon, 25 Nov 2019 21:28:52 +0530] rev 5015
evolve: add test for `--continue` case when relocating "divergent" This test shows that for now we don't handle the continue case when relocating "divergent" cset hit merge conflict while resolving content-divergence. Next patch will be adding the support for --continue case.
Mon, 25 Nov 2019 19:12:51 +0530 evolve: use more specific key name to store in evolvestate
Sushil khanchi <sushilkhanchi97@gmail.com> [Mon, 25 Nov 2019 19:12:51 +0530] rev 5014
evolve: use more specific key name to store in evolvestate Now, as we also relocate divergent cset if required, so let's use more specific key to track the relocation of "divergent" and "other".
Fri, 13 Dec 2019 01:29:27 +0530 evolve: move a test where it makes more sense
Sushil khanchi <sushilkhanchi97@gmail.com> [Fri, 13 Dec 2019 01:29:27 +0530] rev 5013
evolve: move a test where it makes more sense
Thu, 12 Dec 2019 17:22:18 +0530 evolve: remove the unnecessary condition to check empty successors set
Sushil khanchi <sushilkhanchi97@gmail.com> [Thu, 12 Dec 2019 17:22:18 +0530] rev 5012
evolve: remove the unnecessary condition to check empty successors set I annotated the history of this "newer == [()]" condition and found that it was added in the initial stages of evolution project (more than 8 years ago) and there is no test where we get [()] as a successor set. So looks like "if not newer" is enough to check if it is empty. I also looked into obsutil.successorssets() implementation and I don't think it would give us [()] in any case.
Tue, 19 Nov 2019 14:54:13 -0800 evolve: delete redundant and incorrect code for updating dirstate
Martin von Zweigbergk <martinvonz@google.com> [Tue, 19 Nov 2019 14:54:13 -0800] rev 5011
evolve: delete redundant and incorrect code for updating dirstate In relocate() when we notice conflicts, we will try to fix up the dirstate by calling copies.duplicatecopies() and dirstatedance(). However, we had called _evolvemerge() just before that point and that has already fixed up the dirstate, so there's no need to do it again. Also, we did it incorrectly as the test case shows.
Tue, 19 Nov 2019 14:24:31 -0800 tests: demonstrate how evolve loses transitive copies when interrupted
Martin von Zweigbergk <martinvonz@google.com> [Tue, 19 Nov 2019 14:24:31 -0800] rev 5010
tests: demonstrate how evolve loses transitive copies when interrupted Let's say `b` has been renamed to `c` in commit A and then renamed to `d` in commit B. We now modify A in a way that will cause a conflict when we evolve B. `hg evolve` will now stop and let the user resolve the conflicts, but it will have lost the copy information in the working copy (should still be c->d).
Mon, 09 Dec 2019 10:36:11 -0800 evolve: use ui.configoverride() instead of ui.backupconfig()
Martin von Zweigbergk <martinvonz@google.com> [Mon, 09 Dec 2019 10:36:11 -0800] rev 5009
evolve: use ui.configoverride() instead of ui.backupconfig() ui.configoverride() was added in hg 4.1. util.nullcontextmanager() was added in hg 4.4.
(0) -3000 -1000 -120 +120 tip