Sat, 02 Mar 2019 01:37:04 +0530 split: add tests which demonstrate the issue6048 stable
Sushil khanchi <sushilkhanchi97@gmail.com> [Sat, 02 Mar 2019 01:37:04 +0530] rev 4409
split: add tests which demonstrate the issue6048 Next patch will fix this issue.
Fri, 22 Feb 2019 21:01:06 +0530 evolve: fix the broken behaviour on div resolution in relocation case
Sushil khanchi <sushilkhanchi97@gmail.com> [Fri, 22 Feb 2019 21:01:06 +0530] rev 4408
evolve: fix the broken behaviour on div resolution in relocation case In content divergence resolution, I see that when "relocationreq" is True which means both the cset are on different parent and relocation is required. In this case when "divergent" is the one who is behind the "other" cset in DAG, we swap them. At this point one thing we missed is to update the evolvestate['divergent']. Because of this in continue case we didn't get the right value of obsmarkers creation. In this patch I added the code to update the evolvestate when we swap them. Now as we know "divergent" and "other" can be swapped in some cases, it is better to store the intial divergent separately in evolvestate which is evolvestate['orig-divergent'] and later this value is used to update the evolvestate['replacements'] which is the track of revisions which has been resolved. Changes in tests demonstrate the fixed behaviour.
Fri, 22 Feb 2019 23:49:37 +0530 evolve: change in a test which demonstrate divergence resolution can break
Sushil khanchi <sushilkhanchi97@gmail.com> [Fri, 22 Feb 2019 23:49:37 +0530] rev 4407
evolve: change in a test which demonstrate divergence resolution can break This patch just add "--any" flag to "hg evolve --content-divergent" in a test and changed output reflect that there is something which is not handled correctly. After looking into code I found that it is because of using a evolvestate value which is not updated i.e evolvestate['divergent'] Next patch will fix this problem.
Fri, 22 Feb 2019 23:57:18 +0530 tests: update the title of a test as it's not what it says
Sushil khanchi <sushilkhanchi97@gmail.com> [Fri, 22 Feb 2019 23:57:18 +0530] rev 4406
tests: update the title of a test as it's not what it says I see that this test has conflict in relocation and in merging also. We do have a test for the case when only relocation leads to conflict.
Wed, 13 Feb 2019 21:56:29 +0800 obsexchange: avoid importing io/StringIO module with a different name
Anton Shestakov <av6@dwimlabs.net> [Wed, 13 Feb 2019 21:56:29 +0800] rev 4405
obsexchange: avoid importing io/StringIO module with a different name Since we're not interested in the whole module, let's shorten the imports and aviod the lint warnings. Otherwise pep8-naming complains: - import io as StringIO: N812 lowercase imported as non lowercase - import StringIO as io: N813 camelcase imported as lowercase
Wed, 13 Feb 2019 21:56:05 +0800 evolve: remove unused StringIO import
Anton Shestakov <av6@dwimlabs.net> [Wed, 13 Feb 2019 21:56:05 +0800] rev 4404
evolve: remove unused StringIO import
Wed, 13 Feb 2019 21:39:10 +0800 evolve: unindent some lines caught by flake8
Anton Shestakov <av6@dwimlabs.net> [Wed, 13 Feb 2019 21:39:10 +0800] rev 4403
evolve: unindent some lines caught by flake8 The message was: "E117 over-indented".
Wed, 13 Feb 2019 12:46:57 +0100 branching: overwrite broken merge with a correct one
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 13 Feb 2019 12:46:57 +0100] rev 4402
branching: overwrite broken merge with a correct one Thanks goes to Anton Shestakov for spotting and fixing this.
Wed, 13 Feb 2019 19:18:17 +0800 branching: merge with stable
Anton Shestakov <av6@dwimlabs.net> [Wed, 13 Feb 2019 19:18:17 +0800] rev 4401
branching: merge with stable
Tue, 12 Feb 2019 15:03:14 +0100 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 12 Feb 2019 15:03:14 +0100] rev 4400
branching: merge with stable
Mon, 11 Feb 2019 21:33:02 +0800 obshistory: omit keyword arguments with default values in patch.diffui() calls stable
Anton Shestakov <av6@dwimlabs.net> [Mon, 11 Feb 2019 21:33:02 +0800] rev 4399
obshistory: omit keyword arguments with default values in patch.diffui() calls d4c9eebdd72d made that function not take "relroot" and "prefix" anymore, and instead expect "pathfn". These two chunks of code in this patch simply generate patches for obslog -p and they broke because they tried to provide default values for "prefix" and "relroot" for no apparent reason (and also for "changes"). Let's instead rely on defaults of patch.diffui().
Fri, 08 Feb 2019 17:52:49 +0100 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 08 Feb 2019 17:52:49 +0100] rev 4398
branching: merge with stable
Fri, 08 Feb 2019 10:21:09 +0100 test: wider another time matching in prev/next lock testing stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 08 Feb 2019 10:21:09 +0100] rev 4397
test: wider another time matching in prev/next lock testing There does not seems to be a reasons for specifically matching 4-6 seconds. Wider matching will avoid intermittent failure.
Fri, 08 Feb 2019 09:29:54 +0100 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 08 Feb 2019 09:29:54 +0100] rev 4396
branching: merge with stable
Fri, 08 Feb 2019 09:26:48 +0100 test: wider time matching in prev/next lock testing stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 08 Feb 2019 09:26:48 +0100] rev 4395
test: wider time matching in prev/next lock testing There does not seems to be a reasons for specifically matching 4-6 seconds. Wider matching will avoid intermittent failure.
Wed, 21 Nov 2018 12:00:46 +0000 topic: make topics compatible with branchmap refactor
Martijn Pieters <mj@octobus.net> [Wed, 21 Nov 2018 12:00:46 +0000] rev 4394
topic: make topics compatible with branchmap refactor See https://phab.mercurial-scm.org/D5290
Wed, 30 Jan 2019 10:03:00 -0800 prompts: use 1-indexing in revselectionprompt()
Martin von Zweigbergk <martinvonz@google.com> [Wed, 30 Jan 2019 10:03:00 -0800] rev 4393
prompts: use 1-indexing in revselectionprompt() The consumer is generally a human, not a computer. I've made the mistake of entering "1" instead of "0" a few times myself.
Thu, 07 Feb 2019 16:24:59 +0800 test-split: split now ignores diff.* settings
Anton Shestakov <av6@dwimlabs.net> [Thu, 07 Feb 2019 16:24:59 +0800] rev 4392
test-split: split now ignores diff.* settings From 66399f2e92aa: "It is assumed by the author that the `[diff]` section is primarily for *viewing* diffs, and that it is unlikely what people intend when attempting to commit or revert."
Sun, 03 Feb 2019 17:03:02 +0530 pick: add --tool for hg pick to specify mergetool
Sangeet Kumar Mishra <mail2sangeetmishra@gmail.com> [Sun, 03 Feb 2019 17:03:02 +0530] rev 4391
pick: add --tool for hg pick to specify mergetool This patch used configuration override to enable you to pass a mergetool via the --tool flag in case there is any merge conflict.
Wed, 06 Feb 2019 13:49:29 +0800 revset: use getintrange() to parse relation subscript
Anton Shestakov <av6@dwimlabs.net> [Wed, 06 Feb 2019 13:49:29 +0800] rev 4390
revset: use getintrange() to parse relation subscript After 13f7a6a4f0db parsing the tokens into usable values needs to happen inside subscript relation functions.
Sun, 03 Feb 2019 12:04:50 +0100 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 03 Feb 2019 12:04:50 +0100] rev 4389
branching: merge with stable
Thu, 31 Jan 2019 15:38:48 +0530 compat: pass contexts to _findlimit() (issue6066) stable
Sushil khanchi <sushilkhanchi97@gmail.com> [Thu, 31 Jan 2019 15:38:48 +0530] rev 4388
compat: pass contexts to _findlimit() (issue6066) Now _findlimit() in copies module accept context instead of rev number. See https://phab.mercurial-scm.org/D5595
Sun, 03 Feb 2019 08:10:48 +0100 packaging: fix debian changelog stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 03 Feb 2019 08:10:48 +0100] rev 4387
packaging: fix debian changelog
Wed, 30 Jan 2019 04:45:40 +0100 changelog: add relevant entries
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 30 Jan 2019 04:45:40 +0100] rev 4386
changelog: add relevant entries
Tue, 22 Jan 2019 18:40:10 +0530 evolve: add test for the case where public divergence on difference parents
Sushil khanchi <sushilkhanchi97@gmail.com> [Tue, 22 Jan 2019 18:40:10 +0530] rev 4385
evolve: add test for the case where public divergence on difference parents This test make sure that public divergence resolution also handle the case when divergentes changeset does not share the same parent at one end because one end simply rebase. The other side has actual an actual diff change. For now this would work only for the case when we need to relocate the mutable one. Other case is still left to work on.
Mon, 21 Jan 2019 23:06:10 +0530 evolve: update the public divergence resolution logic to cover --continue case
Sushil khanchi <sushilkhanchi97@gmail.com> [Mon, 21 Jan 2019 23:06:10 +0530] rev 4384
evolve: update the public divergence resolution logic to cover --continue case To continue the interrupted evolve in case of public divergence: we will have to store the node of that public cset which was in content divergence with the other cset, so that we can perform the phase divergence resolution between that public cset and a newnode which is the result of content-divergence resolution. Added tests reflect the behaviour this patch adds.
Mon, 21 Jan 2019 23:06:34 +0530 evolve: add logic to resolve content-divergence with a public cset
Sushil khanchi <sushilkhanchi97@gmail.com> [Mon, 21 Jan 2019 23:06:34 +0530] rev 4383
evolve: add logic to resolve content-divergence with a public cset Public content-divergence is the divergence where a cset is content-divergent with a public cset. To solve public divergence: 1) perform content-divergent resolution 2) resultant node is phase divergent 3) perform phase divergence resolution It is the intial logic to solve public divergence. Next patches will be the covering the cases of: 1) relocation: when we need to relocate to node 2) continue: to add this resolution in case of --continue 3) the case when content-divergence resolution gives a result similar to public cset. Added test-evolve-public-content-divergent.t reflect the added behaviour.
Sun, 13 Jan 2019 19:33:19 +0530 evolve: introduce function to create a obsmarker relation even for public cset
Sushil khanchi <sushilkhanchi97@gmail.com> [Sun, 13 Jan 2019 19:33:19 +0530] rev 4382
evolve: introduce function to create a obsmarker relation even for public cset To create obsmarkers we use obsolete.createmarkers() function, but because of security reasons this function refuses to create obsmarkers for public cset. And we need to create obsmarkers for a public cset while solving public content divergence. So introducing this function which create a obsmarker relation even for immutable cset. Currently this function create obsmarker for a single relation, in contrast of obsolete.createmarkers() which create markers for multiple relations. Upcoming pathces will be using this function.
Tue, 29 Jan 2019 20:45:14 +0800 topic: make ranges work in revset relations like 'foo#stack[1:2]'
Anton Shestakov <av6@dwimlabs.net> [Tue, 29 Jan 2019 20:45:14 +0800] rev 4381
topic: make ranges work in revset relations like 'foo#stack[1:2]'
Mon, 28 Jan 2019 22:31:31 +0800 topic: simplify #stack index check/access
Anton Shestakov <av6@dwimlabs.net> [Mon, 28 Jan 2019 22:31:31 +0800] rev 4380
topic: simplify #stack index check/access Also using stack.revs instead of list(stack). It's equivalent and stack.revs is @propertycache'd.
Sun, 27 Jan 2019 17:39:09 +0800 topic: make ranges work in revset relations like 'foo#topic[1:2]'
Anton Shestakov <av6@dwimlabs.net> [Sun, 27 Jan 2019 17:39:09 +0800] rev 4379
topic: make ranges work in revset relations like 'foo#topic[1:2]' Since #topic is very similar to #generations, we reuse the function directly. Few tests because #generations is already tested in core.
Fri, 25 Jan 2019 16:51:36 +0530 evolve: add description of function solveobswdp
Sushil khanchi <sushilkhanchi97@gmail.com> [Fri, 25 Jan 2019 16:51:36 +0530] rev 4378
evolve: add description of function solveobswdp
Wed, 23 Jan 2019 12:11:36 -0800 evolve: document the "if not shouldupdate" block
Martin von Zweigbergk <martinvonz@google.com> [Wed, 23 Jan 2019 12:11:36 -0800] rev 4377
evolve: document the "if not shouldupdate" block I missed the "not" in "if not shouldupdate: ... hg.updaterepo()" and it took a long time for me to realize it's about updating *back* to the original commit (or to its successor). Let's add a comment to maybe help the person not make the same mistake.
Wed, 23 Jan 2019 11:55:20 -0800 evolve: make "startnode" consistently be a node, not a context
Martin von Zweigbergk <martinvonz@google.com> [Wed, 23 Jan 2019 11:55:20 -0800] rev 4376
evolve: make "startnode" consistently be a node, not a context This fixes a bug where we didn't print "working directory is not at ..." after `hg evolve --continue` because we were comparing a node and a context.
Tue, 22 Jan 2019 22:36:29 -0800 evolve: use context managers for locks and transaction
Martin von Zweigbergk <martinvonz@google.com> [Tue, 22 Jan 2019 22:36:29 -0800] rev 4375
evolve: use context managers for locks and transaction
Tue, 22 Jan 2019 10:17:58 -0800 prune: use scmutil.cleanupnodes()
Martin von Zweigbergk <martinvonz@google.com> [Tue, 22 Jan 2019 10:17:58 -0800] rev 4374
prune: use scmutil.cleanupnodes()
Tue, 22 Jan 2019 10:45:16 -0800 uncommit: use scmtutil.cleanupnodes()
Martin von Zweigbergk <martinvonz@google.com> [Tue, 22 Jan 2019 10:45:16 -0800] rev 4373
uncommit: use scmtutil.cleanupnodes()
Tue, 22 Jan 2019 10:33:02 -0800 amend: use scmutil.cleanupnodes() with --patch
Martin von Zweigbergk <martinvonz@google.com> [Tue, 22 Jan 2019 10:33:02 -0800] rev 4372
amend: use scmutil.cleanupnodes() with --patch
Tue, 22 Jan 2019 10:32:44 -0800 pick: use scmutil.cleanupnodes()
Martin von Zweigbergk <martinvonz@google.com> [Tue, 22 Jan 2019 10:32:44 -0800] rev 4371
pick: use scmutil.cleanupnodes() A side-effect is that `pick` should now also move bookmarks.
Tue, 22 Jan 2019 09:45:25 -0800 fold: use scmutil.cleanupnodes()
Martin von Zweigbergk <martinvonz@google.com> [Tue, 22 Jan 2019 09:45:25 -0800] rev 4370
fold: use scmutil.cleanupnodes() scmutil.cleanupnodes() has existed since 4.3 and had the metadata argument since 4.4, so we can now safely depend on it.
Sat, 26 Jan 2019 23:58:18 +0800 revset: subscriptrelations functions now have two bounds
Anton Shestakov <av6@dwimlabs.net> [Sat, 26 Jan 2019 23:58:18 +0800] rev 4369
revset: subscriptrelations functions now have two bounds
Wed, 23 Jan 2019 15:49:44 -0500 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 23 Jan 2019 15:49:44 -0500] rev 4368
branching: merge with stable A new version has been released
Wed, 23 Jan 2019 15:48:44 -0500 packaging: mark as development version stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 23 Jan 2019 15:48:44 -0500] rev 4367
packaging: mark as development version
Wed, 23 Jan 2019 15:46:38 -0500 Added tag 8.4.0 for changeset 8c4289d0e91e stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 23 Jan 2019 15:46:38 -0500] rev 4366
Added tag 8.4.0 for changeset 8c4289d0e91e
Tue, 22 Jan 2019 20:25:36 -0500 packaging: prepare release 8.4.0 stable 8.4.0
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 22 Jan 2019 20:25:36 -0500] rev 4365
packaging: prepare release 8.4.0
Wed, 23 Jan 2019 09:05:12 -0500 minitopic: add warning about extensions state and testing stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 23 Jan 2019 09:05:12 -0500] rev 4364
minitopic: add warning about extensions state and testing
Tue, 22 Jan 2019 12:57:25 -0500 test-compat: merge mercurial-4.5 into mercurial-4.4 mercurial-4.4
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 22 Jan 2019 12:57:25 -0500] rev 4363
test-compat: merge mercurial-4.5 into mercurial-4.4
Tue, 22 Jan 2019 12:55:09 -0500 test-compat: merge mercurial-4.6 into mercurial-4.5 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 22 Jan 2019 12:55:09 -0500] rev 4362
test-compat: merge mercurial-4.6 into mercurial-4.5
Tue, 22 Jan 2019 12:59:33 -0500 branching: closing test-compat branch for mercurial-4.3 mercurial-4.3
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 22 Jan 2019 12:59:33 -0500] rev 4361
branching: closing test-compat branch for mercurial-4.3 We are dropping support for this version.
Tue, 22 Jan 2019 12:54:44 -0500 test-compat: merge mercurial-4.7 into mercurial-4.6 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 22 Jan 2019 12:54:44 -0500] rev 4360
test-compat: merge mercurial-4.7 into mercurial-4.6
Tue, 22 Jan 2019 12:54:43 -0500 test-compat: merge mercurial-4.8 into mercurial-4.7 mercurial-4.7
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 22 Jan 2019 12:54:43 -0500] rev 4359
test-compat: merge mercurial-4.8 into mercurial-4.7
Tue, 22 Jan 2019 12:54:41 -0500 test-compat: merge stable into mercurial-4.8 mercurial-4.8
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 22 Jan 2019 12:54:41 -0500] rev 4358
test-compat: merge stable into mercurial-4.8
Tue, 22 Jan 2019 12:50:54 -0500 changelog: explicit the part related to topic stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 22 Jan 2019 12:50:54 -0500] rev 4357
changelog: explicit the part related to topic
Tue, 22 Jan 2019 10:46:02 -0500 branching: merge with future version mercurial-4.8
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 22 Jan 2019 10:46:02 -0500] rev 4356
branching: merge with future version
Tue, 22 Jan 2019 10:43:44 -0500 branching: start branch for test compat with Mercurial 4.8 mercurial-4.8
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 22 Jan 2019 10:43:44 -0500] rev 4355
branching: start branch for test compat with Mercurial 4.8
Tue, 22 Jan 2019 10:45:09 -0500 test-compat: reverse test change from 9bce7e6c18b3 mercurial-4.8
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 22 Jan 2019 10:45:09 -0500] rev 4354
test-compat: reverse test change from 9bce7e6c18b3 This change are 4.9 only
Tue, 22 Jan 2019 10:44:49 -0500 test-compat: reverse test change from db87432df8de mercurial-4.8
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 22 Jan 2019 10:44:49 -0500] rev 4353
test-compat: reverse test change from db87432df8de This change are 4.9 only
Tue, 22 Jan 2019 10:44:33 -0500 test-compat: reverse test change from ac39cfb5bddd mercurial-4.8
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 22 Jan 2019 10:44:33 -0500] rev 4352
test-compat: reverse test change from ac39cfb5bddd This change are 4.9 only
Tue, 22 Jan 2019 10:41:53 -0500 branching: merge stable into default prior to new version stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 22 Jan 2019 10:41:53 -0500] rev 4351
branching: merge stable into default prior to new version
Sat, 19 Jan 2019 21:41:15 +0100 branching: merge wit stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 19 Jan 2019 21:41:15 +0100] rev 4350
branching: merge wit stable
Thu, 17 Jan 2019 12:37:40 +0100 obsdiscovery: use consistent filtering during discovery
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 17 Jan 2019 12:37:40 +0100] rev 4349
obsdiscovery: use consistent filtering during discovery If we computed revision using an unfiltered repository, we should run the discovery unfiltered too.
Fri, 18 Jan 2019 23:09:44 +0530 evolve: make sure we don't stop after evolution of obsparent (issue5881)
Sushil khanchi <sushilkhanchi97@gmail.com> [Fri, 18 Jan 2019 23:09:44 +0530] rev 4348
evolve: make sure we don't stop after evolution of obsparent (issue5881) Before this patch, we were not handling the case when revset given by user also contain wdir parent which is obsolete. We were explicitly checking if wdir parent is obsolete, then update to its successor and return; without checking if we still have some revisions to be evolved. This patch make sure that after it update to the successor of obsolete parent it doesn't stop and continue to evolve other remaining revisions. Changes in tests/test-evolve-issue5881.t reflect the fixed behaviour.
Fri, 18 Jan 2019 23:08:43 +0530 evolve: extract "update" code into its own function
Sushil khanchi <sushilkhanchi97@gmail.com> [Fri, 18 Jan 2019 23:08:43 +0530] rev 4347
evolve: extract "update" code into its own function This patch moves the code to a function which handles the case when wdir parent is obsolete and evolve will just update to its successor. And extraction of this to a function will also help us to fix the issue5881.
Tue, 25 Dec 2018 16:08:05 +0530 evolve: add test case for issue 5881
Sushil khanchi <sushilkhanchi97@gmail.com> [Tue, 25 Dec 2018 16:08:05 +0530] rev 4346
evolve: add test case for issue 5881
Fri, 18 Jan 2019 13:54:30 +0530 evolve: add test which shows fixed behaviour of `hg evolve` (issue5686)
Sushil khanchi <sushilkhanchi97@gmail.com> [Fri, 18 Jan 2019 13:54:30 +0530] rev 4345
evolve: add test which shows fixed behaviour of `hg evolve` (issue5686)
Tue, 25 Dec 2018 14:35:54 +0530 evolve: cover the orphanmerge part missed by lastsolved
Sushil khanchi <sushilkhanchi97@gmail.com> [Tue, 25 Dec 2018 14:35:54 +0530] rev 4344
evolve: cover the orphanmerge part missed by lastsolved Let's cover the orphanmerge part also as it was missed at the time when we introduced "lastsolved". Chagnes in test-evolve.t reflect the fixed behaviour.
Thu, 17 Jan 2019 16:20:35 +0530 evolve: add test which shows orphan-merge resolution can result to crash
Sushil khanchi <sushilkhanchi97@gmail.com> [Thu, 17 Jan 2019 16:20:35 +0530] rev 4343
evolve: add test which shows orphan-merge resolution can result to crash It happens when there are still some revisions to evolve after evoluiton of a orphan-merge. And the reason behind crash is that `lastsolved` is not being updated and contain a wrong value which is now hidden. Next patch will fix this problem.
Tue, 25 Dec 2018 10:10:12 +0530 next: populate stacktemplate to the missed _nextevolve function
Sushil khanchi <sushilkhanchi97@gmail.com> [Tue, 25 Dec 2018 10:10:12 +0530] rev 4342
next: populate stacktemplate to the missed _nextevolve function
Mon, 14 Jan 2019 09:14:38 -0800 evolve: adapt for deprecated ui.progress()
Martin von Zweigbergk <martinvonz@google.com> [Mon, 14 Jan 2019 09:14:38 -0800] rev 4341
evolve: adapt for deprecated ui.progress() This makes a wrapper that has an interface like ui.progress() even though that's the old interface that will eventually go away. That's because it's a lot easier to convert from the ui.progress() to the ui.makeprogress() interface than the other way around. Once we no longer support hg<4.7, we can migrate our callers to ui.makeprogress() and drop the wrapper.
Fri, 11 Jan 2019 09:26:41 -0800 fold: sort concatenated commit messages in topological order
Martin von Zweigbergk <martinvonz@google.com> [Fri, 11 Jan 2019 09:26:41 -0800] rev 4340
fold: sort concatenated commit messages in topological order It seems better to have the proposed commit message look the same whether the user ran `hg fold --exact -r . -r .^` or `hg fold --exact -r .^ -r .`.
Wed, 26 Dec 2018 14:52:07 +0800 topic: make revsets like 'foo#topic[0]' work
Anton Shestakov <av6@dwimlabs.net> [Wed, 26 Dec 2018 14:52:07 +0800] rev 4339
topic: make revsets like 'foo#topic[0]' work Essentially, 'topic' relation subscript function is the same as 'generations', but is limited to revisions marked with one particular topic.
Thu, 10 Jan 2019 17:30:01 +0100 changelog: add an entry about the revset stack indexing
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 10 Jan 2019 17:30:01 +0100] rev 4338
changelog: add an entry about the revset stack indexing
Thu, 10 Jan 2019 17:36:59 +0100 test: adapt output to minor behavior change
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 10 Jan 2019 17:36:59 +0100] rev 4337
test: adapt output to minor behavior change CORE-TEST-OUTPUT-UPDATE: bad05a6afdc8
Sun, 06 Jan 2019 00:27:54 +0800 tests: remove unused variable and needless subshell in testlib/pythonpath.sh stable
Anton Shestakov <av6@dwimlabs.net> [Sun, 06 Jan 2019 00:27:54 +0800] rev 4336
tests: remove unused variable and needless subshell in testlib/pythonpath.sh
Sat, 05 Jan 2019 05:21:37 +0100 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 05 Jan 2019 05:21:37 +0100] rev 4335
branching: merge with stable
Fri, 04 Jan 2019 19:17:38 -0500 tests: conditionalize some output for Windows stable
Matt Harbison <matt_harbison@yahoo.com> [Fri, 04 Jan 2019 19:17:38 -0500] rev 4334
tests: conditionalize some output for Windows A couple of these were already present, but out of place.
Fri, 04 Jan 2019 18:49:53 -0500 test-pyflakes: use '/' when printing the files to check stable
Matt Harbison <matt_harbison@yahoo.com> [Fri, 04 Jan 2019 18:49:53 -0500] rev 4333
test-pyflakes: use '/' when printing the files to check If paths are printed with '\', `xargs` sees the parts allsmooshedtogether, and pyflakes errors out.
Fri, 04 Jan 2019 18:46:46 -0500 tests: fix PYTHONPATH manipulation on Windows stable
Matt Harbison <matt_harbison@yahoo.com> [Fri, 04 Jan 2019 18:46:46 -0500] rev 4332
tests: fix PYTHONPATH manipulation on Windows Without the semicolon separator and quotes, the variables ends up like this: c:\Users\Matt\projects\hg-evolve:c:\Users\Matt\projects\hg-evolve: c:\Users\Matt\projects\hg;c:\Users\Matt\projects\hg-evolve\tests; c:\Users\Matt\projects\hg\tests That in turn makes the local evolve code unreachable, and the system installed code is tested instead. I'm testing against `uname` instead of a trivial python script printing os.name because maybe one day tests will run on WSL.
Thu, 03 Jan 2019 00:01:54 -0500 exthelper: update documentation with some examples for using registrar aliases
Matt Harbison <matt_harbison@yahoo.com> [Thu, 03 Jan 2019 00:01:54 -0500] rev 4331
exthelper: update documentation with some examples for using registrar aliases
Thu, 27 Dec 2018 23:46:35 -0500 exthelper: simplify the ability to register filesets
Matt Harbison <matt_harbison@yahoo.com> [Thu, 27 Dec 2018 23:46:35 -0500] rev 4330
exthelper: simplify the ability to register filesets Same mechanism as revsets earlier in this series.
Thu, 27 Dec 2018 21:55:22 -0500 exthelper: simplify the ability to register templates
Matt Harbison <matt_harbison@yahoo.com> [Thu, 27 Dec 2018 21:55:22 -0500] rev 4329
exthelper: simplify the ability to register templates Same mechanism as revsets earlier in this series.
Thu, 27 Dec 2018 21:26:17 -0500 exthelper: simplify the ability to register revsets
Matt Harbison <matt_harbison@yahoo.com> [Thu, 27 Dec 2018 21:26:17 -0500] rev 4328
exthelper: simplify the ability to register revsets I think this is what Yuya and Boris agreed on.[1] This happens *after* the extsetup phase now (and after the _aftercallback notifications). But this is trivial, mergeable between exthelper instances, and doesn't need to have the extension name supplied when registering. [1] https://www.mercurial-scm.org/pipermail/mercurial-devel/2018-December/125888.html
Sun, 23 Dec 2018 21:54:56 -0500 exthelper: support the option argument when registering a command
Matt Harbison <matt_harbison@yahoo.com> [Sun, 23 Dec 2018 21:54:56 -0500] rev 4327
exthelper: support the option argument when registering a command Largefiles uses this 5th argument with push and pull, so this will be tested in the next commit. I assume the reason for unrolling and reforming the tuple in each finalxxxsetup() is to validate that something proper was passed in when registering. But it's better to explode when decorating than during the delayed actual registration.
Sat, 22 Dec 2018 22:26:36 -0500 exthelper: simplify configitem registration
Matt Harbison <matt_harbison@yahoo.com> [Sat, 22 Dec 2018 22:26:36 -0500] rev 4326
exthelper: simplify configitem registration
Thu, 27 Dec 2018 21:26:17 -0500 exthelper: avoid a [] default arg to wrapcommand()
Matt Harbison <matt_harbison@yahoo.com> [Thu, 27 Dec 2018 21:26:17 -0500] rev 4325
exthelper: avoid a [] default arg to wrapcommand()
Fri, 04 Jan 2019 00:10:44 -0500 configitems: move the default values to the registrar decorator
Matt Harbison <matt_harbison@yahoo.com> [Fri, 04 Jan 2019 00:10:44 -0500] rev 4324
configitems: move the default values to the registrar decorator The exthelper refactoring of configitems stopped registering dynamicdefault for everything, which in turn causes a lot of warnings about mismatched defaults. There are a few stragglers- I didn't fix topic-mode because I wasn't sure what the default should be, and the alias for odiff was explicitly given a default for compatibility.
Wed, 26 Dec 2018 22:14:23 +0800 topic: make revsets like foo#stack[-1] work too
Anton Shestakov <av6@dwimlabs.net> [Wed, 26 Dec 2018 22:14:23 +0800] rev 4323
topic: make revsets like foo#stack[-1] work too We remove base commit when n < 0 because it's confusing to see base (which technically isn't a commit inside the stack) at both 0 and -n.
Sun, 16 Dec 2018 11:22:04 +0800 topic: make revsets like 'foo#stack[0]' work
Anton Shestakov <av6@dwimlabs.net> [Sun, 16 Dec 2018 11:22:04 +0800] rev 4322
topic: make revsets like 'foo#stack[0]' work 'stack' relation subscript function is another way to refer to s0, s1, etc. But instead of aborting in many cases it will simply return an empty set.
Sat, 22 Dec 2018 01:29:59 -0500 exthelper: remove '_' in final_xxx() function names to conform to hg style
Matt Harbison <matt_harbison@yahoo.com> [Sat, 22 Dec 2018 01:29:59 -0500] rev 4321
exthelper: remove '_' in final_xxx() function names to conform to hg style
Mon, 24 Dec 2018 18:38:25 +0100 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 24 Dec 2018 18:38:25 +0100] rev 4320
branching: merge with stable
Mon, 24 Dec 2018 18:36:25 +0100 packaging: mark as development version stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 24 Dec 2018 18:36:25 +0100] rev 4319
packaging: mark as development version This avoid confusion when installing from source.
Mon, 24 Dec 2018 18:01:30 +0100 Added tag 8.3.3 for changeset 97b18934d6db stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 24 Dec 2018 18:01:30 +0100] rev 4318
Added tag 8.3.3 for changeset 97b18934d6db
Mon, 24 Dec 2018 17:55:25 +0100 packaging: prepare version 8.3.3 stable 8.3.3
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 24 Dec 2018 17:55:25 +0100] rev 4317
packaging: prepare version 8.3.3
Mon, 24 Dec 2018 17:47:40 +0100 test-compat: merge mercurial-4.4 into mercurial-4.3 mercurial-4.3
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 24 Dec 2018 17:47:40 +0100] rev 4316
test-compat: merge mercurial-4.4 into mercurial-4.3
Mon, 24 Dec 2018 17:47:31 +0100 test-compat: merge mercurial-4.5 into mercurial-4.4 mercurial-4.4
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 24 Dec 2018 17:47:31 +0100] rev 4315
test-compat: merge mercurial-4.5 into mercurial-4.4
Mon, 24 Dec 2018 17:47:29 +0100 test-compat: merge mercurial-4.6 into mercurial-4.5 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 24 Dec 2018 17:47:29 +0100] rev 4314
test-compat: merge mercurial-4.6 into mercurial-4.5
Mon, 24 Dec 2018 17:47:28 +0100 test-compat: merge mercurial-4.7 into mercurial-4.6 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 24 Dec 2018 17:47:28 +0100] rev 4313
test-compat: merge mercurial-4.7 into mercurial-4.6
Mon, 24 Dec 2018 17:47:27 +0100 test-compat: merge stable into mercurial-4.7 mercurial-4.7
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 24 Dec 2018 17:47:27 +0100] rev 4312
test-compat: merge stable into mercurial-4.7
Fri, 21 Dec 2018 13:14:59 +0800 evolve: detect unresolved conflict during evolve --continue (issue5966) stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Dec 2018 13:14:59 +0800] rev 4311
evolve: detect unresolved conflict during evolve --continue (issue5966) Evolve --continue was ignoring unresolved conflict, proceeding with its operation without any check. This is now fixed. This test case was built and formalized by Matt Harbison and Anton Shestakov.
Thu, 20 Dec 2018 13:59:07 +0800 tests: filter out uninteresting log events
Anton Shestakov <av6@dwimlabs.net> [Thu, 20 Dec 2018 13:59:07 +0800] rev 4310
tests: filter out uninteresting log events Core has new ui.log() calls added (for tracking extension loading and performance, for example), but in test-discovery-obshashrange.t it produces a bunch of lines that are unrelated to the test. So we filter them out to not touch test output. This is inspired by 1de3364320af in core.
Fri, 21 Dec 2018 20:14:26 +0100 test-compat: merge mercurial-4.4 into mercurial-4.3 mercurial-4.3
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Dec 2018 20:14:26 +0100] rev 4309
test-compat: merge mercurial-4.4 into mercurial-4.3
Fri, 21 Dec 2018 20:14:23 +0100 test-compat: merge mercurial-4.5 into mercurial-4.4 mercurial-4.4
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Dec 2018 20:14:23 +0100] rev 4308
test-compat: merge mercurial-4.5 into mercurial-4.4
Fri, 21 Dec 2018 20:14:21 +0100 test-compat: merge mercurial-4.6 into mercurial-4.5 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Dec 2018 20:14:21 +0100] rev 4307
test-compat: merge mercurial-4.6 into mercurial-4.5
Fri, 21 Dec 2018 20:14:20 +0100 test-compat: merge mercurial-4.7 into mercurial-4.6 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Dec 2018 20:14:20 +0100] rev 4306
test-compat: merge mercurial-4.7 into mercurial-4.6
Fri, 21 Dec 2018 20:14:18 +0100 test-compat: merge stable into mercurial-4.7 mercurial-4.7
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Dec 2018 20:14:18 +0100] rev 4305
test-compat: merge stable into mercurial-4.7
Fri, 21 Dec 2018 19:48:01 +0100 linter: silence rightful complains about unused variable stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Dec 2018 19:48:01 +0100] rev 4304
linter: silence rightful complains about unused variable
Mon, 03 Dec 2018 14:41:03 +0800 topic: merge _showlasttouched logic into _listtopics
Anton Shestakov <av6@dwimlabs.net> [Mon, 03 Dec 2018 14:41:03 +0800] rev 4303
topic: merge _showlasttouched logic into _listtopics Makes --age work with --verbose.
Mon, 03 Dec 2018 14:15:00 +0800 topic: simplify _showlasttouched and _getlasttouched (and its data structure)
Anton Shestakov <av6@dwimlabs.net> [Mon, 03 Dec 2018 14:15:00 +0800] rev 4302
topic: simplify _showlasttouched and _getlasttouched (and its data structure)
Thu, 13 Dec 2018 18:57:49 +0100 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 13 Dec 2018 18:57:49 +0100] rev 4301
branching: merge with stable
Thu, 13 Dec 2018 17:40:41 +0000 split: add a --interactive flag
Boris Feld <boris.feld@octobus.net> [Thu, 13 Dec 2018 17:40:41 +0000] rev 4300
split: add a --interactive flag While the interactive mode is useful for end-users, there are some cases where they don't need the interactivity overhead. Moreover, this allow the split command to be used in automated scripts.
Wed, 21 Feb 2018 14:39:48 +0100 split: take file patterns to limit selection on matching file patterns
Boris Feld <boris.feld@octobus.net> [Wed, 21 Feb 2018 14:39:48 +0100] rev 4299
split: take file patterns to limit selection on matching file patterns When splitting a big changeset, the user often wants to extract specific files from the changeset while leaving the others files intact. The split command can now be called with multiple file patterns. Only files that match one of the patterns will be shown in the interactive selection. The user will be able to create one or more commits with those files. When the user finishes splitting the matching files, a last commit will be made with the remaining of the files.
Wed, 21 Feb 2018 12:39:17 +0100 split: only accept explicit revision through the `-r` option
Boris Feld <boris.feld@octobus.net> [Wed, 21 Feb 2018 12:39:17 +0100] rev 4298
split: only accept explicit revision through the `-r` option We are about to introduce new non-optionnal arguments to defines files patterns. To avoid confusion and to be closer to the standard options, only accepts revisions with the `-r` option.
Thu, 13 Dec 2018 17:41:06 +0100 issue-6028: resolves 6028 - return (False, ".") instead of (False, '') stable
James Reynolds <james.glenn.reynolds@gmail.com> [Thu, 13 Dec 2018 17:41:06 +0100] rev 4297
issue-6028: resolves 6028 - return (False, ".") instead of (False, '') Since 4.8, repo[] no longer takes an empty string, so we update to a valid with similar semantic. This value is strange and we should probably use an actual node ID here, however, this is an independent issue.
Thu, 13 Dec 2018 17:26:26 +0100 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 13 Dec 2018 17:26:26 +0100] rev 4296
branching: merge with stable
Wed, 12 Dec 2018 01:19:30 +0800 tests: add sparserevlog cap since hg now has sparse revlogs by default
Anton Shestakov <av6@dwimlabs.net> [Wed, 12 Dec 2018 01:19:30 +0800] rev 4295
tests: add sparserevlog cap since hg now has sparse revlogs by default CORE-TEST-OUTPUT-UPDATE: 3764330f76a6
Wed, 12 Dec 2018 17:22:58 +0100 split: rework the prompt to be more standard
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 12 Dec 2018 17:22:58 +0100] rev 4294
split: rework the prompt to be more standard We dropped the initial capital and moved to a positive question.
Tue, 20 Feb 2018 09:35:16 +0100 split: add a option to discard remaining change during split
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 20 Feb 2018 09:35:16 +0100] rev 4293
split: add a option to discard remaining change during split This is useful to drop unwanted remaining change spotted during the split.
Tue, 20 Feb 2018 09:35:16 +0100 split: add a way to abort a split from the prompt
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 20 Feb 2018 09:35:16 +0100] rev 4292
split: add a way to abort a split from the prompt This prompt is asking the user about the next step. Offering to abort there make sense.
Tue, 20 Feb 2018 09:36:55 +0100 split: add a help entry to the final prompt
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 20 Feb 2018 09:36:55 +0100] rev 4291
split: add a help entry to the final prompt We are about to add more option in this prompt. Adding a way to document then seems like a good first step.
Wed, 05 Dec 2018 23:15:29 +0800 topic: make revset argument messages be similar to such messages in core stable
Anton Shestakov <av6@dwimlabs.net> [Wed, 05 Dec 2018 23:15:29 +0800] rev 4290
topic: make revset argument messages be similar to such messages in core
Wed, 05 Dec 2018 23:13:26 +0800 tests: don't forget to add hg serve pid to DAEMON_PIDS in test-wireproto.t stable
Anton Shestakov <av6@dwimlabs.net> [Wed, 05 Dec 2018 23:13:26 +0800] rev 4289
tests: don't forget to add hg serve pid to DAEMON_PIDS in test-wireproto.t Otherwise it leaves a process running after each run-tests.py launch.
Tue, 04 Dec 2018 13:33:51 +0100 test: adapt to change output change on default
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 04 Dec 2018 13:33:51 +0100] rev 4288
test: adapt to change output change on default We now have a `wcache` directory in `.hg`.
Sat, 01 Dec 2018 16:08:42 +0800 safeguard: don't reimplement auto-publish if it's in core (will be in 4.9)
Anton Shestakov <av6@dwimlabs.net> [Sat, 01 Dec 2018 16:08:42 +0800] rev 4287
safeguard: don't reimplement auto-publish if it's in core (will be in 4.9)
Sat, 01 Dec 2018 16:07:55 +0800 safeguard: the new default for auto-publish is 'publish'
Anton Shestakov <av6@dwimlabs.net> [Sat, 01 Dec 2018 16:07:55 +0800] rev 4286
safeguard: the new default for auto-publish is 'publish'
Fri, 21 Sep 2018 11:44:34 -0400 stack: add a --children flag to stack
James Reynolds <jreynolds@backstage.com> [Fri, 21 Sep 2018 11:44:34 -0400] rev 4285
stack: add a --children flag to stack If a commit in the stack has been merged outside the current topic, show a trailing status of (external-children)
Sun, 02 Dec 2018 16:52:14 +0100 extensions: avoid shadowing imported module names with exthelper methods
Matt Harbison <matt_harbison@yahoo.com> [Sun, 02 Dec 2018 16:52:14 +0100] rev 4284
extensions: avoid shadowing imported module names with exthelper methods The previous code worked, but confused pyscripter.
Fri, 30 Nov 2018 22:10:39 -0500 extensions: add fileset support to exthelper
Matt Harbison <matt_harbison@yahoo.com> [Fri, 30 Nov 2018 22:10:39 -0500] rev 4283
extensions: add fileset support to exthelper This will be tested by using it in lfs.
Sun, 02 Dec 2018 16:48:05 +0100 extensions: add uipopulate() support to exthelper
Matt Harbison <matt_harbison@yahoo.com> [Sun, 02 Dec 2018 16:48:05 +0100] rev 4282
extensions: add uipopulate() support to exthelper
Sun, 02 Dec 2018 16:45:08 +0100 exthelper: clarify copyright and licence for the module
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 02 Dec 2018 16:45:08 +0100] rev 4281
exthelper: clarify copyright and licence for the module The exthelper is quite useful and Matt Harbison is looking into having it upstreamed. We clarify the legal situation first.
Tue, 27 Nov 2018 04:46:35 +0100 packaging: merge with version 8.3.2
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 27 Nov 2018 04:46:35 +0100] rev 4280
packaging: merge with version 8.3.2
Tue, 27 Nov 2018 04:42:45 +0100 packaging: mark development version stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 27 Nov 2018 04:42:45 +0100] rev 4279
packaging: mark development version This help reduce the confusion when people install from source.
Tue, 27 Nov 2018 12:53:24 +0100 Added tag 8.3.2 for changeset 7edc5c148df0 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 27 Nov 2018 12:53:24 +0100] rev 4278
Added tag 8.3.2 for changeset 7edc5c148df0
Tue, 27 Nov 2018 04:31:03 +0100 packagin: prepare release 8.3.2 stable 8.3.2
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 27 Nov 2018 04:31:03 +0100] rev 4277
packagin: prepare release 8.3.2
Tue, 27 Nov 2018 04:07:38 +0100 test-compat: merge mercurial-4.4 into mercurial-4.3 mercurial-4.3
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 27 Nov 2018 04:07:38 +0100] rev 4276
test-compat: merge mercurial-4.4 into mercurial-4.3
Tue, 27 Nov 2018 04:07:36 +0100 test-compat: merge mercurial-4.5 into mercurial-4.4 mercurial-4.4
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 27 Nov 2018 04:07:36 +0100] rev 4275
test-compat: merge mercurial-4.5 into mercurial-4.4
Tue, 27 Nov 2018 04:07:35 +0100 test-compat: merge mercurial-4.6 into mercurial-4.5 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 27 Nov 2018 04:07:35 +0100] rev 4274
test-compat: merge mercurial-4.6 into mercurial-4.5
Tue, 27 Nov 2018 04:07:33 +0100 test-compat: merge mercurial-4.7 into mercurial-4.6 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 27 Nov 2018 04:07:33 +0100] rev 4273
test-compat: merge mercurial-4.7 into mercurial-4.6
Tue, 27 Nov 2018 04:07:31 +0100 test-compat: merge stable into mercurial-4.7 mercurial-4.7
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 27 Nov 2018 04:07:31 +0100] rev 4272
test-compat: merge stable into mercurial-4.7
Tue, 27 Nov 2018 03:57:30 +0100 changelog: add information about the topic message improvements
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 27 Nov 2018 03:57:30 +0100] rev 4271
changelog: add information about the topic message improvements
Tue, 27 Nov 2018 03:56:27 +0100 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 27 Nov 2018 03:56:27 +0100] rev 4270
branching: merge with stable
Tue, 27 Nov 2018 03:46:06 +0100 evolve: update the abort to a ProgrammingError stable
Sushil khanchi <sushilkhanchi97@gmail.com> [Tue, 27 Nov 2018 03:46:06 +0100] rev 4269
evolve: update the abort to a ProgrammingError This error should be a ProgrammingError and as Pierre-Yves David said ProgrammingError type did not existed when this code was written, so lets update this now.
Mon, 26 Nov 2018 16:43:39 +0300 topics: improve the message around topic changing
Pulkit Goyal <pulkit@yandex-team.ru> [Mon, 26 Nov 2018 16:43:39 +0300] rev 4268
topics: improve the message around topic changing The new message says 'cleared' when topic name is cleared, if we change to a new topic name, it mentions the new topic name too.
Wed, 21 Nov 2018 11:13:21 +0000 tests: fix for POSIX compliance
Martijn Pieters <mj@octobus.net> [Wed, 21 Nov 2018 11:13:21 +0000] rev 4267
tests: fix for POSIX compliance * Mac ls will exit with a different message and exit code [1], replace with grep (which is what mercurial tests do) * POSIX echo has no -n switch, use printf instead
Wed, 21 Nov 2018 10:47:07 +0000 style: remove unused variables
Martijn Pieters <mj@octobus.net> [Wed, 21 Nov 2018 10:47:07 +0000] rev 4266
style: remove unused variables Both `as e` references are not used and can go.
Tue, 20 Nov 2018 11:33:38 -0500 evolve: fix a documentation typo stable
Eric Spishak-Thomas <spishak@google.com> [Tue, 20 Nov 2018 11:33:38 -0500] rev 4265
evolve: fix a documentation typo
Mon, 19 Nov 2018 02:34:39 +0000 compat: drop 4.3 related obsfate code
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Nov 2018 02:34:39 +0000] rev 4264
compat: drop 4.3 related obsfate code All the necessary piece are supported starting 4.4.
Mon, 19 Nov 2018 02:27:13 +0000 compat: drop code dealing with incompatibility for --publish with 4.3
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Nov 2018 02:27:13 +0000] rev 4263
compat: drop code dealing with incompatibility for --publish with 4.3 We dropped 4.3 support.
Mon, 19 Nov 2018 02:25:37 +0000 compat: clarify when some conditional are used
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Nov 2018 02:25:37 +0000] rev 4262
compat: clarify when some conditional are used The middle condition was an intermediate state that never existed into a release. We can safely drop it.
Mon, 19 Nov 2018 02:20:44 +0000 compat: drop 4.3 "new troubles" report code
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Nov 2018 02:20:44 +0000] rev 4261
compat: drop 4.3 "new troubles" report code This is supported natively for Mercurial 4.4 and above.
Mon, 19 Nov 2018 02:18:58 +0000 compat: drop 4.3 wrapping of createmarker for effect flag support
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Nov 2018 02:18:58 +0000] rev 4260
compat: drop 4.3 wrapping of createmarker for effect flag support This is supported natively in 4.4 and above.
Mon, 19 Nov 2018 01:52:45 +0000 compat: drop 4.3 monkey patch of `copies.mergecopies`
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Nov 2018 01:52:45 +0000] rev 4259
compat: drop 4.3 monkey patch of `copies.mergecopies`
Mon, 19 Nov 2018 01:45:34 +0000 compat: drop 4.3 compatiblity code for `obsutil.allprecursors` function
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Nov 2018 01:45:34 +0000] rev 4258
compat: drop 4.3 compatiblity code for `obsutil.allprecursors` function
Mon, 19 Nov 2018 01:44:28 +0000 compat: drop 4.3 compatiblity code for `ui.edit` method
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Nov 2018 01:44:28 +0000] rev 4257
compat: drop 4.3 compatiblity code for `ui.edit` method
Mon, 19 Nov 2018 01:42:50 +0000 compat: drop 4.3 compatiblity code for 'successors' revset
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Nov 2018 01:42:50 +0000] rev 4256
compat: drop 4.3 compatiblity code for 'successors' revset
Mon, 19 Nov 2018 01:41:36 +0000 compat: drop 4.3 compatiblity code for 'precursors' revset
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Nov 2018 01:41:36 +0000] rev 4255
compat: drop 4.3 compatiblity code for 'precursors' revset
Sat, 10 Nov 2018 23:54:46 -0500 compat: drop Mercurial 4.3 support for exthelper
Matt Harbison <matt_harbison@yahoo.com> [Sat, 10 Nov 2018 23:54:46 -0500] rev 4254
compat: drop Mercurial 4.3 support for exthelper The last release email noted plans to drop 4.3 and 4.4 support in the next feature release. I'd like to move this code into core, and dropping this should allow the class to be copied in unmodified.
Mon, 19 Nov 2018 01:49:34 +0000 compat: update metadata about minimum ag version
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Nov 2018 01:49:34 +0000] rev 4253
compat: update metadata about minimum ag version
Tue, 06 Nov 2018 10:41:50 +0530 next: solve the issue of `next` get confused by split
Sushil khanchi <sushilkhanchi97@gmail.com> [Tue, 06 Nov 2018 10:41:50 +0530] rev 4252
next: solve the issue of `next` get confused by split This patch solve a problem of next command which get confused by split. Let me describe how it was getting confused: Initial state of repo: A---B---C After splitting B to (B1,B2): @ A---B1---B2 \ ---B---C X * (note: C is orphan; checkedout to B1) Lets make an amend on B1: @ B1' / A---B1---B2 \ X * \ ---B---C X * Now, if run `hg next` (--evolve is True by default now): $ it would give you choice to choose from B2 and C thinking that C could also be a possbile children for B1, instead of stablizing B2 on B1. I fixed this problem by filtering those aspiring children which can be stablized on one of the aspiring children itself. Changes made in test-prev-next.t shows the changed expected behaviour.
Tue, 06 Nov 2018 15:10:56 +0530 next: add test which shows that `next` get confused by split
Sushil khanchi <sushilkhanchi97@gmail.com> [Tue, 06 Nov 2018 15:10:56 +0530] rev 4251
next: add test which shows that `next` get confused by split
Wed, 31 Oct 2018 14:08:56 +0530 cleanup: avoid a Yoda condition
Sushil khanchi <sushilkhanchi97@gmail.com> [Wed, 31 Oct 2018 14:08:56 +0530] rev 4250
cleanup: avoid a Yoda condition
Wed, 31 Oct 2018 14:06:17 +0530 evolve: modify and move the comment to appropriate position
Sushil khanchi <sushilkhanchi97@gmail.com> [Wed, 31 Oct 2018 14:06:17 +0530] rev 4249
evolve: modify and move the comment to appropriate position
Wed, 31 Oct 2018 14:01:58 +0530 next: update the command description
Sushil khanchi <sushilkhanchi97@gmail.com> [Wed, 31 Oct 2018 14:01:58 +0530] rev 4248
next: update the command description Now, if necessary next command evolve the next child revision by defualt. You don't need to pass the --evolve flag.
Sat, 10 Nov 2018 15:50:05 +0100 next: make next command --evolve by default
Sushil khanchi <sushilkhanchi97@gmail.com> [Sat, 10 Nov 2018 15:50:05 +0100] rev 4247
next: make next command --evolve by default Before this patch, if we need to evolve to update to the next child, we were suggesting the user to use --evolve flag. This patch make some changes to evolve by default in that conditions. After making next command to evolve by default we have to consider the following points: 1) If we don't need to evolve while updating to the next child: a) And if wdir is dirty, we suggest to use --merge flag b) if wdir is clean, we simply update to next child (if ambiguous, prompt the user to select one) 2) If we need to evolve: a) when wdir is dirty, we suggest the user to use `hg shelve` first, to make wdir clean. As we don't support --merge while evovling. b) when wdir is clean, we evolve the next cset. Changes made in test-prev-next.t reflect the changed behaviour.
Mon, 05 Nov 2018 19:56:33 +0800 safeguard: allow push to succeed (and without warning) with --publish
Anton Shestakov <av6@dwimlabs.net> [Mon, 05 Nov 2018 19:56:33 +0800] rev 4246
safeguard: allow push to succeed (and without warning) with --publish
Sun, 04 Nov 2018 22:06:23 +0800 topic: only add --publish flag to push if it's not already there
Anton Shestakov <av6@dwimlabs.net> [Sun, 04 Nov 2018 22:06:23 +0800] rev 4245
topic: only add --publish flag to push if it's not already there
Mon, 05 Nov 2018 16:04:01 +0800 safeguard: check auto-publish value before sending listkeys command
Anton Shestakov <av6@dwimlabs.net> [Mon, 05 Nov 2018 16:04:01 +0800] rev 4244
safeguard: check auto-publish value before sending listkeys command Always sending listkeys command is just wasteful, let's first make sure users even care about auto-publish behavior.
Sat, 10 Nov 2018 17:54:28 +0100 style: silence another flak8 warning
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 10 Nov 2018 17:54:28 +0100] rev 4243
style: silence another flak8 warning Default should be green now.
Sat, 10 Nov 2018 16:11:19 +0100 oops: backed out changeset df22f010cf24 pushed by error
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 10 Nov 2018 16:11:19 +0100] rev 4242
oops: backed out changeset df22f010cf24 pushed by error The changeset still fails some test
Sat, 10 Nov 2018 15:50:05 +0100 next: make next command --evolve by default
Sushil khanchi <sushilkhanchi97@gmail.com> [Sat, 10 Nov 2018 15:50:05 +0100] rev 4241
next: make next command --evolve by default Before this patch, if we need to evolve to update to the next child, we were suggesting the user to use --evolve flag. This patch make some changes to evolve by default in that conditions. After making next command to evolve by default we have to consider the following points: 1) If we don't need to evolve while updating to the next child: a) And if wdir is dirty, we suggest to use --merge flag b) if wdir is clean, we simply update to next child (if ambiguous, prompt the user to select one) 2) If we need to evolve: a) when wdir is dirty, we suggest the user to use `hg shelve` first, to make wdir clean. As we don't support --merge while evovling. b) when wdir is clean, we evolve the next cset. Changes made in test-prev-next.t reflect the changed behaviour.
Sat, 10 Nov 2018 16:05:34 +0100 next: improve the message for dirty working copy with --evolve
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 10 Nov 2018 16:05:34 +0100] rev 4240
next: improve the message for dirty working copy with --evolve This will be important soon when --evolve will be the default.
Sat, 10 Nov 2018 16:01:31 +0100 next: use the `hint` argument of bail if changed
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 10 Nov 2018 16:01:31 +0100] rev 4239
next: use the `hint` argument of bail if changed The argument is availabel since Mercurial 4.1. So let's use it.
Sat, 10 Nov 2018 15:59:16 +0100 prev: use the `hint` argument of bail if changed
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 10 Nov 2018 15:59:16 +0100] rev 4238
prev: use the `hint` argument of bail if changed The argument is availabel since Mercurial 4.1. So let's use it.
Sat, 10 Nov 2018 15:28:44 +0100 next: explicitly specify --no-evolve in the tests
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 10 Nov 2018 15:28:44 +0100] rev 4237
next: explicitly specify --no-evolve in the tests The default value for this flag is about to switch.
Sat, 10 Nov 2018 15:47:46 +0100 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 10 Nov 2018 15:47:46 +0100] rev 4236
branching: merge with stable
Sat, 10 Nov 2018 15:37:22 +0100 style: fix various flake8 warning stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 10 Nov 2018 15:37:22 +0100] rev 4235
style: fix various flake8 warning
Sat, 10 Nov 2018 15:30:10 +0100 next: set if we need to evolve or not; also move logic to appropriate pos
Sushil khanchi <sushilkhanchi97@gmail.com> [Sat, 10 Nov 2018 15:30:10 +0100] rev 4234
next: set if we need to evolve or not; also move logic to appropriate pos set the value `needevolve` and also move the logic to find aspiringchildren to appropriate position i.e before we suggest user to use other flags like --merge.
Tue, 06 Nov 2018 11:22:39 +0530 next: move some code to prepare for `next --evolve` by default
Sushil khanchi <sushilkhanchi97@gmail.com> [Tue, 06 Nov 2018 11:22:39 +0530] rev 4233
next: move some code to prepare for `next --evolve` by default Moved some values before the block where we suggest the user to use --merge flag. As we would need these values to find if we need to evolve or not before we can suggest user to use `--merge` flag. We will suggest user to use `--merge` flag only when we don't need to evolve. Because currently we don't support both --evolve(going to be True by default) and --merge at the same time.
Sat, 10 Nov 2018 00:55:34 +0100 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 10 Nov 2018 00:55:34 +0100] rev 4232
branching: merge with stable
Tue, 06 Nov 2018 15:53:18 +0530 topic: improve UX by using pager only when we should stable
Sushil khanchi <sushilkhanchi97@gmail.com> [Tue, 06 Nov 2018 15:53:18 +0530] rev 4231
topic: improve UX by using pager only when we should Before this patch we were using pager in every case of topic command, either it is setting up a new topic or clearing the active topic. After this patch it will not use pager in following commands: $ hg topic [TOPIC] -r [rev] $ hg topic --clear
Tue, 06 Nov 2018 10:43:35 +0530 evolvecmd: _possibledestination() skip visiting empty parent stable
Sushil khanchi <sushilkhanchi97@gmail.com> [Tue, 06 Nov 2018 10:43:35 +0530] rev 4230
evolvecmd: _possibledestination() skip visiting empty parent I see that even in the case when "parent == -1" we are visiting that also and find succsets for that and in last -1 is being added in the set of possible destination. Why not skip that?
Sat, 03 Nov 2018 12:21:19 +0530 pick: `hg help` was not showing the full cmd desc of `pick` stable
Sushil khanchi <sushilkhanchi97@gmail.com> [Sat, 03 Nov 2018 12:21:19 +0530] rev 4229
pick: `hg help` was not showing the full cmd desc of `pick` after running command `hg help` it was not including the second line of command description. I guess it picks the firstline only. So I moved that part in first line of cmd description.
Fri, 09 Nov 2018 20:19:01 +0100 test-compat: merge mercurial-4.4 into mercurial-4.3 mercurial-4.3
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 09 Nov 2018 20:19:01 +0100] rev 4228
test-compat: merge mercurial-4.4 into mercurial-4.3
Fri, 09 Nov 2018 20:18:59 +0100 test-compat: merge mercurial-4.5 into mercurial-4.4 mercurial-4.4
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 09 Nov 2018 20:18:59 +0100] rev 4227
test-compat: merge mercurial-4.5 into mercurial-4.4
Fri, 09 Nov 2018 20:18:58 +0100 test-compat: merge mercurial-4.6 into mercurial-4.5 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 09 Nov 2018 20:18:58 +0100] rev 4226
test-compat: merge mercurial-4.6 into mercurial-4.5
Fri, 09 Nov 2018 20:18:57 +0100 test-compat: merge mercurial-4.7 into mercurial-4.6 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 09 Nov 2018 20:18:57 +0100] rev 4225
test-compat: merge mercurial-4.7 into mercurial-4.6
Fri, 09 Nov 2018 20:18:55 +0100 test-compat: merge stable into mercurial-4.7 mercurial-4.7
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 09 Nov 2018 20:18:55 +0100] rev 4224
test-compat: merge stable into mercurial-4.7
Wed, 07 Nov 2018 19:35:48 +0100 compat: fix fixedcopytracing compatibility with mercurial 4.8 and narrow stable
Boris Feld <boris.feld@octobus.net> [Wed, 07 Nov 2018 19:35:48 +0100] rev 4223
compat: fix fixedcopytracing compatibility with mercurial 4.8 and narrow Mercurial 4.8 version of _fullcopytracing includes some new narrow code. As https://phab.mercurial-scm.org/D3896 has not yet landed, update fixedcopytracing behind a version detection condition. This was spotted by Augie Fackler.
Thu, 01 Nov 2018 21:33:15 +0300 utility: don't translate commit messages in revselection prompt (issue6016) stable
Pulkit Goyal <pulkit@yandex-team.ru> [Thu, 01 Nov 2018 21:33:15 +0300] rev 4222
utility: don't translate commit messages in revselection prompt (issue6016) Commit messages should not be translated and should be shown the same. I am not sure if I can add a test for this by creating a commit with non-ascii character in commit message.
Fri, 26 Oct 2018 12:54:40 +0530 evolve: use stack template in --continue case also
Sushil khanchi <sushilkhanchi97@gmail.com> [Fri, 26 Oct 2018 12:54:40 +0530] rev 4221
evolve: use stack template in --continue case also We use stack indexes (s#) in evolve msging when revs being evolved are in active topic. Before this patch we are not covering the --continue case. So this patch cover the same and use the stack indexes s# even when we continue an interrupted evolve. In this patch I used the same concept (to check if we should use s#) as we are using in cases other than `--continue`. Thanks to PYD for refactoring those lines. Changes in tests also reflects the expected behaviour.
Wed, 24 Oct 2018 19:38:02 +0530 evolve: add test showing currently stackalias fails in --continue case
Sushil khanchi <sushilkhanchi97@gmail.com> [Wed, 24 Oct 2018 19:38:02 +0530] rev 4220
evolve: add test showing currently stackalias fails in --continue case
Thu, 25 Oct 2018 18:51:55 +0200 branching; merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 18:51:55 +0200] rev 4219
branching; merge with stable
Thu, 25 Oct 2018 18:50:42 +0200 packaging: mark version as devel version stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 18:50:42 +0200] rev 4218
packaging: mark version as devel version This avoid confusion from people installing from source.
Thu, 25 Oct 2018 18:44:07 +0200 Added tag 8.3.1 for changeset b90422a11a88 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 18:44:07 +0200] rev 4217
Added tag 8.3.1 for changeset b90422a11a88
Thu, 25 Oct 2018 18:42:49 +0200 packaging: prepare version 8.3.1 stable 8.3.1
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 18:42:49 +0200] rev 4216
packaging: prepare version 8.3.1
Thu, 25 Oct 2018 18:32:54 +0200 test-compat: merge mercurial-4.4 into mercurial-4.3 mercurial-4.3
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 18:32:54 +0200] rev 4215
test-compat: merge mercurial-4.4 into mercurial-4.3
Thu, 25 Oct 2018 18:32:52 +0200 test-compat: merge mercurial-4.5 into mercurial-4.4 mercurial-4.4
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 18:32:52 +0200] rev 4214
test-compat: merge mercurial-4.5 into mercurial-4.4
Thu, 25 Oct 2018 18:32:51 +0200 test-compat: merge mercurial-4.6 into mercurial-4.5 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 18:32:51 +0200] rev 4213
test-compat: merge mercurial-4.6 into mercurial-4.5
Thu, 25 Oct 2018 18:32:50 +0200 test-compat: merge mercurial-4.7 into mercurial-4.6 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 18:32:50 +0200] rev 4212
test-compat: merge mercurial-4.7 into mercurial-4.6
Thu, 25 Oct 2018 18:32:49 +0200 test-compat: merge stable into mercurial-4.7 mercurial-4.7
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 18:32:49 +0200] rev 4211
test-compat: merge stable into mercurial-4.7
Thu, 25 Oct 2018 18:09:08 +0200 evolve: do not try to display stack index of changeset who do not have one stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 18:09:08 +0200] rev 4210
evolve: do not try to display stack index of changeset who do not have one
Thu, 25 Oct 2018 18:08:34 +0200 evolve: check if we should use stack template for each item in the stack stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 18:08:34 +0200] rev 4209
evolve: check if we should use stack template for each item in the stack We should probably just track the current topic and move all the logic in the template itself. However, this is a good first step.
Thu, 25 Oct 2018 17:03:34 +0200 branching: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 17:03:34 +0200] rev 4208
branching: merge stable back into default
Thu, 25 Oct 2018 16:33:10 +0200 test-compat: merge mercurial-4.4 into mercurial-4.3 mercurial-4.3
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 16:33:10 +0200] rev 4207
test-compat: merge mercurial-4.4 into mercurial-4.3
Thu, 25 Oct 2018 13:05:14 +0200 test-compat: merge mercurial-4.5 into mercurial-4.4 mercurial-4.4
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 13:05:14 +0200] rev 4206
test-compat: merge mercurial-4.5 into mercurial-4.4
Thu, 25 Oct 2018 13:04:08 +0200 test-compat: merge mercurial-4.6 into mercurial-4.5 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 13:04:08 +0200] rev 4205
test-compat: merge mercurial-4.6 into mercurial-4.5
Thu, 25 Oct 2018 13:03:30 +0200 test-compat: merge mercurial-4.7 into mercurial-4.6 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 13:03:30 +0200] rev 4204
test-compat: merge mercurial-4.7 into mercurial-4.6
Thu, 25 Oct 2018 13:03:03 +0200 test-compat: merge stable into mercurial-4.7 mercurial-4.7
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 13:03:03 +0200] rev 4203
test-compat: merge stable into mercurial-4.7
Thu, 25 Oct 2018 13:24:34 +0200 branching: revert test outptu change for 4.7 mercurial-4.7
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 13:24:34 +0200] rev 4202
branching: revert test outptu change for 4.7
Thu, 25 Oct 2018 10:01:58 +0200 pullbundle: drop erroneous flagging of the command as basic stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 10:01:58 +0200] rev 4201
pullbundle: drop erroneous flagging of the command as basic This is a debug command, not a basic part of the UI.
Thu, 25 Oct 2018 12:55:37 +0200 test-compat: backed out changeset ba1e83c841f2 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 12:55:37 +0200] rev 4200
test-compat: backed out changeset ba1e83c841f2 Preparing the branch for 4.8.
Thu, 25 Oct 2018 12:55:22 +0200 test-compat: backed out changeset b0084d599112 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 12:55:22 +0200] rev 4199
test-compat: backed out changeset b0084d599112 Preparing the branch for 4.8.
Thu, 25 Oct 2018 12:55:12 +0200 test-compat: backed out changeset e2d083cc447e stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 12:55:12 +0200] rev 4198
test-compat: backed out changeset e2d083cc447e Preparing the branch for 4.8.
Thu, 25 Oct 2018 12:53:48 +0200 test-compat: backed out changeset ccbfbeee6cf3 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 12:53:48 +0200] rev 4197
test-compat: backed out changeset ccbfbeee6cf3 Preparing the branch for 4.8.
Thu, 25 Oct 2018 12:53:09 +0200 test-compat: backed out changeset 7091f7215651 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 12:53:09 +0200] rev 4196
test-compat: backed out changeset 7091f7215651 Preparing the branch for 4.8.
Thu, 25 Oct 2018 12:52:34 +0200 test-compat: backed out changeset 8eec9422bd8e stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 12:52:34 +0200] rev 4195
test-compat: backed out changeset 8eec9422bd8e Preparing the branch for 4.8.
Thu, 25 Oct 2018 12:49:48 +0200 branching: merge stable into default
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 12:49:48 +0200] rev 4194
branching: merge stable into default
Thu, 25 Oct 2018 12:41:16 +0200 branching: start test compatibility branch for Mercurial 4.7 mercurial-4.7
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 12:41:16 +0200] rev 4193
branching: start test compatibility branch for Mercurial 4.7 Mercurial 4.8-rc0 have been released
Sun, 21 Oct 2018 00:08:27 +0300 topic: add the changelog argument to branchinfo() stable
Pulkit Goyal <pulkit@yandex-team.ru> [Sun, 21 Oct 2018 00:08:27 +0300] rev 4192
topic: add the changelog argument to branchinfo() 47c03042cd1d in core added a changelog argument to revbranchcache.branchinfo() and we wrap that function in topic extension. So let's add this optional argument in topic extension too.
Thu, 18 Oct 2018 22:11:43 -0700 evolve: adapt for changed @command decorator stable
Martin von Zweigbergk <martinvonz@google.com> [Thu, 18 Oct 2018 22:11:43 -0700] rev 4191
evolve: adapt for changed @command decorator Core changed the hacky "^command" syntax to be a proper decorator option in fa88170c10bb (help: adding a proper declaration for shortlist/basic commands (API), 2018-10-12). This patch makes evolve compatible with that.
Wed, 17 Oct 2018 14:47:38 +0200 topicidx: stop assigning index number to obsolete changesets stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 Oct 2018 14:47:38 +0200] rev 4190
topicidx: stop assigning index number to obsolete changesets Obsolete changeset are no longer part of the stack, the old logic tried to assigns them the index of their successors but this is flacky and error prone. So we stop doing so.
Thu, 25 Oct 2018 11:32:43 +0200 stack-index: add some test featuring content diversion stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 11:32:43 +0200] rev 4189
stack-index: add some test featuring content diversion This will be useful to display various issues.
Thu, 25 Oct 2018 10:01:58 +0200 pullbundle: drop erroneous flagging of the command as basic
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 25 Oct 2018 10:01:58 +0200] rev 4188
pullbundle: drop erroneous flagging of the command as basic This is a debug command, not a basic part of the UI.
Sun, 21 Oct 2018 00:08:27 +0300 topic: add the changelog argument to branchinfo()
Pulkit Goyal <pulkit@yandex-team.ru> [Sun, 21 Oct 2018 00:08:27 +0300] rev 4187
topic: add the changelog argument to branchinfo() 47c03042cd1d in core added a changelog argument to revbranchcache.branchinfo() and we wrap that function in topic extension. So let's add this optional argument in topic extension too.
Fri, 19 Oct 2018 09:02:35 -0700 topics: "prairie" is a not an animal (AFAIK, anyway)
Martin von Zweigbergk <martinvonz@google.com> [Fri, 19 Oct 2018 09:02:35 -0700] rev 4186
topics: "prairie" is a not an animal (AFAIK, anyway)
Thu, 18 Oct 2018 21:59:24 -0700 tests: remove a"| head -n 2" that just hides an error code
Martin von Zweigbergk <martinvonz@google.com> [Thu, 18 Oct 2018 21:59:24 -0700] rev 4185
tests: remove a"| head -n 2" that just hides an error code The output from core used to be longer and it made sense, but no longer does. CORE-TEST-OUTPUT-UPDATE: 5199c5b6fd29
Thu, 18 Oct 2018 22:11:43 -0700 evolve: adapt for changed @command decorator
Martin von Zweigbergk <martinvonz@google.com> [Thu, 18 Oct 2018 22:11:43 -0700] rev 4184
evolve: adapt for changed @command decorator Core changed the hacky "^command" syntax to be a proper decorator option in fa88170c10bb (help: adding a proper declaration for shortlist/basic commands (API), 2018-10-12). This patch makes evolve compatible with that.
Wed, 17 Oct 2018 23:10:30 +0800 commands: adjust metavariables as appropriate
Anton Shestakov <av6@dwimlabs.net> [Wed, 17 Oct 2018 23:10:30 +0800] rev 4183
commands: adjust metavariables as appropriate Apart from looking better in hg help command, these strings are also helpful when generating shell completions programmatically.
Wed, 17 Oct 2018 14:02:18 +0200 branching: merge with default
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 Oct 2018 14:02:18 +0200] rev 4182
branching: merge with default
Wed, 17 Oct 2018 13:44:06 +0200 branching: preserve the expected output on default
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 Oct 2018 13:44:06 +0200] rev 4181
branching: preserve the expected output on default
Sun, 14 Oct 2018 13:37:11 +0200 evolvecmd: use modern vocabulary in help text for evolve stable
Anton Shestakov <av6@dwimlabs.net> [Sun, 14 Oct 2018 13:37:11 +0200] rev 4180
evolvecmd: use modern vocabulary in help text for evolve
Sun, 14 Oct 2018 13:35:13 +0200 evolvecmd: mark flags with old instability names as deprecated stable
Anton Shestakov <av6@dwimlabs.net> [Sun, 14 Oct 2018 13:35:13 +0200] rev 4179
evolvecmd: mark flags with old instability names as deprecated
Wed, 17 Oct 2018 13:36:08 +0200 packaging: mark as development version stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 17 Oct 2018 13:36:08 +0200] rev 4178
packaging: mark as development version
Fri, 12 Oct 2018 16:31:20 +0200 Added tag 8.3.0 for changeset 45d4b49d81d9 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 Oct 2018 16:31:20 +0200] rev 4177
Added tag 8.3.0 for changeset 45d4b49d81d9
Fri, 12 Oct 2018 16:19:39 +0200 packaging: prepare release 8.3.0 stable 8.3.0
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 Oct 2018 16:19:39 +0200] rev 4176
packaging: prepare release 8.3.0
Fri, 12 Oct 2018 16:25:06 +0200 pullbundle: document working version and update changelog to mention it stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 Oct 2018 16:25:06 +0200] rev 4175
pullbundle: document working version and update changelog to mention it
Fri, 12 Oct 2018 15:20:54 +0200 test-compat: merge mercurial-4.4 into mercurial-4.3 mercurial-4.3
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 Oct 2018 15:20:54 +0200] rev 4174
test-compat: merge mercurial-4.4 into mercurial-4.3
Fri, 12 Oct 2018 15:15:09 +0200 test-compat: merge mercurial-4.5 into mercurial-4.4 mercurial-4.4
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 Oct 2018 15:15:09 +0200] rev 4173
test-compat: merge mercurial-4.5 into mercurial-4.4
Fri, 12 Oct 2018 15:15:07 +0200 test-compat: merge mercurial-4.6 into mercurial-4.5 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 Oct 2018 15:15:07 +0200] rev 4172
test-compat: merge mercurial-4.6 into mercurial-4.5
Fri, 12 Oct 2018 15:15:05 +0200 test-compat: merge stable into mercurial-4.6 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 Oct 2018 15:15:05 +0200] rev 4171
test-compat: merge stable into mercurial-4.6
Fri, 12 Oct 2018 15:37:22 +0200 topic: fix '{topicidx}' keyword registration for mercurial <= 4.5 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 Oct 2018 15:37:22 +0200] rev 4170
topic: fix '{topicidx}' keyword registration for mercurial <= 4.5
Fri, 12 Oct 2018 15:03:29 +0200 branching: prepare release 8.3.0 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 Oct 2018 15:03:29 +0200] rev 4169
branching: prepare release 8.3.0
Fri, 12 Oct 2018 15:07:23 +0200 test: other harmless output change stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 Oct 2018 15:07:23 +0200] rev 4168
test: other harmless output change These are new test that need adjustment for 4.7 output.
Fri, 12 Oct 2018 15:02:51 +0200 changelog: mention the fix of cache warming on hg strip stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 Oct 2018 15:02:51 +0200] rev 4167
changelog: mention the fix of cache warming on hg strip
Fri, 12 Oct 2018 14:56:00 +0200 test: backed out output changes from changeset 6f391c2a773b stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 Oct 2018 14:56:00 +0200] rev 4166
test: backed out output changes from changeset 6f391c2a773b
Fri, 12 Oct 2018 14:55:46 +0200 test: backed out test output changes from changeset ef22eef37ecc stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 Oct 2018 14:55:46 +0200] rev 4165
test: backed out test output changes from changeset ef22eef37ecc
Fri, 12 Oct 2018 14:55:37 +0200 test: backed out output changes from changeset 0171a7ceb574 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 Oct 2018 14:55:37 +0200] rev 4164
test: backed out output changes from changeset 0171a7ceb574
Fri, 12 Oct 2018 14:55:27 +0200 test: backed out output changes from changeset dfa69b5ece87 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 Oct 2018 14:55:27 +0200] rev 4163
test: backed out output changes from changeset dfa69b5ece87
Fri, 12 Oct 2018 14:55:20 +0200 test: backed out output changes from changeset 01ad46551d7c stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 Oct 2018 14:55:20 +0200] rev 4162
test: backed out output changes from changeset 01ad46551d7c
Fri, 12 Oct 2018 14:40:03 +0200 prev: also use stack shortcut in output when possible
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 Oct 2018 14:40:03 +0200] rev 4161
prev: also use stack shortcut in output when possible This mirror what `hg evolve` is doing since cc3a0b13ae57.
Fri, 12 Oct 2018 14:33:03 +0200 next: also use stack shortcut in output when possible
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 Oct 2018 14:33:03 +0200] rev 4160
next: also use stack shortcut in output when possible This mirror what `hg evolve` is doing since cc3a0b13ae57.
Fri, 12 Oct 2018 11:33:30 +0200 branching: merge stable into default
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 Oct 2018 11:33:30 +0200] rev 4159
branching: merge stable into default
Fri, 12 Oct 2018 02:12:23 +0300 rewind: alias the command to undo
Pulkit Goyal <pulkit@yandex-team.ru> [Fri, 12 Oct 2018 02:12:23 +0300] rev 4158
rewind: alias the command to undo This is a step in unifiying rewind and undo and not talk about them as different commands or concepts. If there exists rewind command, that should be an alias of undo and the vice versa. The exact implmentation detail and how the command works etc. is a different thing but there should be just one command.
Fri, 12 Oct 2018 01:23:16 +0200 changelog: add a line about the usage of s# in evolve
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 12 Oct 2018 01:23:16 +0200] rev 4157
changelog: add a line about the usage of s# in evolve
Thu, 11 Oct 2018 13:38:38 +0200 caches: no longer warm the cache on strip in "auto" mode stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 11 Oct 2018 13:38:38 +0200] rev 4156
caches: no longer warm the cache on strip in "auto" mode Before this patch, a strip would trigger a full and blind cache load that would include the stablerange cache. In repository like Mozilla this was a bit painful. The default "auto" mode now behave has intended.
Tue, 02 Oct 2018 12:55:29 +0530 evolve: use stack alias s# in `hg evolve` msgs
Sushil khanchi <sushilkhanchi97@gmail.com> [Tue, 02 Oct 2018 12:55:29 +0530] rev 4155
evolve: use stack alias s# in `hg evolve` msgs As repository grows revision number lose their usefulness. To make it a little better than now, after this patch we will be using short stack aliases introduced by the topic extension (as displayed by `hg stack`). These stack aliases s# will be used only when user has enabled topic extension and his repo's current active topic is same as the revs to be evolved. For now, this patch doesn't cover `continue` case. I will discuss about this with Pierre-Yves David. Maybe we have to store the info in evolvestate that "we were using stack aliases".
Mon, 01 Oct 2018 19:59:17 +0530 evolve: extract displayer to _solveone()
Sushil khanchi <sushilkhanchi97@gmail.com> [Mon, 01 Oct 2018 19:59:17 +0530] rev 4154
evolve: extract displayer to _solveone() I extracted this displayer method to _solveone() so that it would be easy to pass a different template to show evolve msgs. In upcoming patches we will be using stacktemplate in some cases where we want to include stack alias s# in evolve msgs.
Mon, 01 Oct 2018 13:20:30 +0530 utility: add a template alias that will be used in evolve msgs
Sushil khanchi <sushilkhanchi97@gmail.com> [Mon, 01 Oct 2018 13:20:30 +0530] rev 4153
utility: add a template alias that will be used in evolve msgs This template use stack alias s# instead of rev number in messages printed when we run `hg evolve`. For example, this template's msgs will look like this: move:[s3] add aaa atop:[s2] add bbb move:[s4] add ccc I will be using this template in upcoming patches.
Mon, 01 Oct 2018 12:37:42 +0530 topic: add topicidx template keyword
Sushil khanchi <sushilkhanchi97@gmail.com> [Mon, 01 Oct 2018 12:37:42 +0530] rev 4152
topic: add topicidx template keyword This keyword will be useful where we want to see the index of the changeset in the stack when we run `hg stack`.
Tue, 09 Oct 2018 15:14:32 +0200 changelog: fix version number
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 09 Oct 2018 15:14:32 +0200] rev 4151
changelog: fix version number
Tue, 02 Oct 2018 20:38:37 +0300 tests: update the test-topic.t with changes in core mercurial
Pulkit Goyal <pulkit@yandex-team.ru> [Tue, 02 Oct 2018 20:38:37 +0300] rev 4150
tests: update the test-topic.t with changes in core mercurial Yuya stabilized the -T option and now it's in help by default. CORE-TEST-OUTPUT-UPDATE: 0d703063d0c8
Wed, 26 Sep 2018 19:17:04 +0200 pullbundle: fix style warning
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 26 Sep 2018 19:17:04 +0200] rev 4149
pullbundle: fix style warning
Wed, 26 Sep 2018 18:41:55 +0200 pullbundle: improves management of multiple branch while dealing with a head
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 26 Sep 2018 18:41:55 +0200] rev 4148
pullbundle: improves management of multiple branch while dealing with a head There were still case where a range was issued too early.
Wed, 26 Sep 2018 18:42:44 +0200 pullbundle: deal with head in a predicable order
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 26 Sep 2018 18:42:44 +0200] rev 4147
pullbundle: deal with head in a predicable order We use node order to make this repeatable from one clone to another. This is an arbitrary pick.
Wed, 26 Sep 2018 17:17:11 +0200 pullbundle: deal with another special case introduced by arbitrary ranges
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 26 Sep 2018 17:17:11 +0200] rev 4146
pullbundle: deal with another special case introduced by arbitrary ranges previous, we dealt with the case where the tippest subrange of the stable parent was too long. Now, we need to deal with the case where it is too small.
Wed, 26 Sep 2018 13:15:40 +0200 pullbundle: compat with Mercurial 4.7
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 26 Sep 2018 13:15:40 +0200] rev 4145
pullbundle: compat with Mercurial 4.7
Tue, 25 Sep 2018 19:35:33 +0200 pullbundle: add some information on the cached change
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 25 Sep 2018 19:35:33 +0200] rev 4144
pullbundle: add some information on the cached change This also adds a way to skip "caching" smaller range in the debugcommand (not in the extensions itself).
Tue, 25 Sep 2018 18:41:51 +0200 pullbundle: add data about the cached bundle size and hit
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 25 Sep 2018 18:41:51 +0200] rev 4143
pullbundle: add data about the cached bundle size and hit
Tue, 25 Sep 2018 18:23:46 +0200 pullbundle: add a command to generate cache hit statistic
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 25 Sep 2018 18:23:46 +0200] rev 4142
pullbundle: add a command to generate cache hit statistic This new command should help checking that the stable range produce reusable bundle.
Tue, 25 Sep 2018 13:44:32 +0200 pullbundle: point out the output flooding issue from core
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 25 Sep 2018 13:44:32 +0200] rev 4141
pullbundle: point out the output flooding issue from core Right now, we don't have a reliable progress report when using pullbundle.
Tue, 25 Sep 2018 13:29:49 +0200 pullbundle: issue local branches in the right order
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 25 Sep 2018 13:29:49 +0200] rev 4140
pullbundle: issue local branches in the right order
Tue, 25 Sep 2018 12:53:34 +0200 pullbundle: delay cache file opening
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 25 Sep 2018 12:53:34 +0200] rev 4139
pullbundle: delay cache file opening Otherwise we can end-up with a too many file open at the same time.
Tue, 25 Sep 2018 12:20:26 +0200 pullbundle: improve slicing of the lower part of range
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 25 Sep 2018 12:20:26 +0200] rev 4138
pullbundle: improve slicing of the lower part of range The previous method could get confuse by merge and overslice. The new method is better at using sticking on power of two boundaries.
Tue, 25 Sep 2018 12:19:41 +0200 stablerange: fix slicing of arbitrary ranges
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 25 Sep 2018 12:19:41 +0200] rev 4137
stablerange: fix slicing of arbitrary ranges Pull bundle trigger slicing from range with arbitrary initial skip. We have to adjust the current slicing to take this into account.
Mon, 24 Sep 2018 01:16:00 +0200 pullbundle: attempt to save stablerange cache after each computation
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 24 Sep 2018 01:16:00 +0200] rev 4136
pullbundle: attempt to save stablerange cache after each computation Since we do not serve the full repository, we use more stablerange starting from a random point. These are probably not loaded yet and should be cached. This is best effort caching, if we can't save them we won't.
Mon, 24 Sep 2018 00:51:39 +0200 pullbundle: add basic extension metadata
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 24 Sep 2018 00:51:39 +0200] rev 4135
pullbundle: add basic extension metadata
Mon, 24 Sep 2018 00:28:10 +0200 pullbundle: add a config option for the cache directory
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 24 Sep 2018 00:28:10 +0200] rev 4134
pullbundle: add a config option for the cache directory
Sun, 23 Sep 2018 22:58:11 +0200 pullbundle: add an output about the time spent slicing the set
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 23 Sep 2018 22:58:11 +0200] rev 4133
pullbundle: add an output about the time spent slicing the set This will be useful to monitor overall performance.
Sun, 23 Sep 2018 22:45:23 +0200 pullbundle: add extension documentation
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 23 Sep 2018 22:45:23 +0200] rev 4132
pullbundle: add extension documentation
Sun, 23 Sep 2018 23:46:49 +0200 pullbundle: add an extra test showing how cache are reusable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 23 Sep 2018 23:46:49 +0200] rev 4131
pullbundle: add an extra test showing how cache are reusable We issue a single final pull, most of its item are reusable.
Sun, 23 Sep 2018 00:08:02 +0200 pullbundle: add caching logic
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 23 Sep 2018 00:08:02 +0200] rev 4130
pullbundle: add caching logic We now only generate a bundle once (and store it to disk). If we need it again, we use it directly from disk.
Sun, 23 Sep 2018 23:41:08 +0200 pullbundle: slice pull into multiple ranges
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 23 Sep 2018 23:41:08 +0200] rev 4129
pullbundle: slice pull into multiple ranges We subdivide the set of missing revisions into multiple "range" using the "stable range" data structure. This slicing aims at maximizing the capability of the resulting ranges.
Sun, 23 Sep 2018 23:53:23 +0200 pullbundle: initial commit
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 23 Sep 2018 23:53:23 +0200] rev 4128
pullbundle: initial commit Right now, we do not do any slicing, but we install the wrapping and the tests.
Fri, 21 Sep 2018 20:02:03 +0200 test: update output to make streamv2 capabilities
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Sep 2018 20:02:03 +0200] rev 4127
test: update output to make streamv2 capabilities CORE-TEST-OUTPUT-UPDATE: 4bd6e444c76f
Fri, 21 Sep 2018 18:33:55 +0200 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Sep 2018 18:33:55 +0200] rev 4126
branching: merge with stable
Sat, 22 Sep 2018 13:09:06 +0200 topic: respect preexisting 'topic' value on workingcommitctx stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 22 Sep 2018 13:09:06 +0200] rev 4125
topic: respect preexisting 'topic' value on workingcommitctx Mercurial's core changeset: 6c8ceebce309 revealed an issue. If the creator of a workingcommitctx explicitly assigned a 'topic', it was silently overridden by the current active on. This break import of patch with topic information. We now respect preexisting topic information.
Fri, 21 Sep 2018 19:49:28 +0200 topic: add a compatibility to access transaction's names stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Sep 2018 19:49:28 +0200] rev 4124
topic: add a compatibility to access transaction's names The attribute was made private in 4024c363cd33.
Fri, 21 Sep 2018 17:50:28 +0200 topic: add a compatibility to access transaction's validator stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Sep 2018 17:50:28 +0200] rev 4123
topic: add a compatibility to access transaction's validator The attribute was made private in ebbba3ba3f66.
Fri, 21 Sep 2018 15:52:53 +0530 evovle: remove redundancy in evolve output
Sushil khanchi <sushilkhanchi97@gmail.com> [Fri, 21 Sep 2018 15:52:53 +0530] rev 4122
evovle: remove redundancy in evolve output Copying the discription of this redundancy issue given by Pierre Yves David: When running `hg evolve` to stabilize orphan changeset output about the currently stabilized changeset is issued. For example: $ hg evolve move:[3] a3 atop:[4] a2 working directory is now at 7c5649f73d11 This output can become quite repetitive when orphan are stabilized atop each other. For example: $ hg evolve --all move:[8] dansk 2! atop:[10] dansk! merging main-file-1 move:[9] dansk 3! atop:[11] dansk 2! In this case it would be smoother to issue: $ hg evolve --all move:[8] dansk 2! atop:[10] dansk! merging main-file-1 move:[9] dansk 3! Since we are moving "dansk 3!" atop the changeset we just stabilized. When adding this be careful that we still want to issue the "atop" message in various cases: 1. first changesets in a stack 2. when the orphan is not stabilized atop previous one 3. when using hg evolve --continue to resume an evolution So, I have made the changes which also respect above listed three points. And changes in tests/test-evovle*.t reflecting the changed behavior.
Fri, 21 Sep 2018 11:58:42 +0200 amend: handle crash before transaction initialization with --patch stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 21 Sep 2018 11:58:42 +0200] rev 4121
amend: handle crash before transaction initialization with --patch The `tr` object can be None.
Tue, 18 Sep 2018 02:14:10 +0200 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 18 Sep 2018 02:14:10 +0200] rev 4120
branching: merge with stable
Mon, 17 Sep 2018 09:25:28 -0700 obsdiscovery: adopt to calling convention change stable
Gregory Szorc <gregory.szorc@gmail.com> [Mon, 17 Sep 2018 09:25:28 -0700] rev 4119
obsdiscovery: adopt to calling convention change Upstream commits 71d83b315778 and abce899c985f changed the calling convention of setdiscovery._takefullsample(). We inspect the signature of the function before calling it so we can pass the proper arguments.
Fri, 14 Sep 2018 12:21:32 +0200 branching: merge stable into default
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 14 Sep 2018 12:21:32 +0200] rev 4118
branching: merge stable into default
Fri, 14 Sep 2018 12:18:22 +0200 packaging: mark as development version stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 14 Sep 2018 12:18:22 +0200] rev 4117
packaging: mark as development version This avoid confusion when people install version from source.
Fri, 14 Sep 2018 12:17:21 +0200 Added tag 8.2.1 for changeset c6362c4abd69 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 14 Sep 2018 12:17:21 +0200] rev 4116
Added tag 8.2.1 for changeset c6362c4abd69
Fri, 14 Sep 2018 12:17:06 +0200 packagin: prepare release 8.2.1 stable 8.2.1
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 14 Sep 2018 12:17:06 +0200] rev 4115
packagin: prepare release 8.2.1
Fri, 14 Sep 2018 10:51:44 +0200 test-compat: merge mercurial-4.4 into mercurial-4.3 mercurial-4.3
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 14 Sep 2018 10:51:44 +0200] rev 4114
test-compat: merge mercurial-4.4 into mercurial-4.3
Fri, 14 Sep 2018 10:51:43 +0200 test-compat: merge mercurial-4.5 into mercurial-4.4 mercurial-4.4
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 14 Sep 2018 10:51:43 +0200] rev 4113
test-compat: merge mercurial-4.5 into mercurial-4.4
Fri, 14 Sep 2018 10:51:42 +0200 test-compat: merge mercurial-4.6 into mercurial-4.5 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 14 Sep 2018 10:51:42 +0200] rev 4112
test-compat: merge mercurial-4.6 into mercurial-4.5
Fri, 14 Sep 2018 10:51:40 +0200 test-compat: merge stable into mercurial-4.6 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 14 Sep 2018 10:51:40 +0200] rev 4111
test-compat: merge stable into mercurial-4.6
Fri, 14 Sep 2018 10:47:57 +0200 branching: merge stable into default
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 14 Sep 2018 10:47:57 +0200] rev 4110
branching: merge stable into default
Fri, 14 Sep 2018 10:39:01 +0200 caches: issue both debug and blackbox log message stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 14 Sep 2018 10:39:01 +0200] rev 4109
caches: issue both debug and blackbox log message This increase the odd someone looking for issue will find them.
Thu, 13 Sep 2018 00:04:17 +0800 cmdrewrite: rename variable and move it closer to where it is used
Anton Shestakov <av6@dwimlabs.net> [Thu, 13 Sep 2018 00:04:17 +0800] rev 4108
cmdrewrite: rename variable and move it closer to where it is used Renaming to satisfy pep8-naming linter plugin, which complained on this variable because all-uppercase names are reserved for constants, and constants need to be module-level. This variable is not a good choice for moving up to the module level because it's used only in one place. Additionally, let's have it closer to the place it's actually used to potentially avoid an extra call to _() function (however cheap it may be).
Thu, 13 Sep 2018 19:46:05 +0200 changelog: mention the cache improvements stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 13 Sep 2018 19:46:05 +0200] rev 4107
changelog: mention the cache improvements
Thu, 13 Sep 2018 17:09:44 +0200 obshashrangecache: be more paranoid in the errors we catch stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 13 Sep 2018 17:09:44 +0200] rev 4106
obshashrangecache: be more paranoid in the errors we catch It seems like there error were already covered. Better safe than sorry.
Thu, 13 Sep 2018 17:09:34 +0200 stablerangecache: be more paranoid in the errors we catch stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 13 Sep 2018 17:09:34 +0200] rev 4105
stablerangecache: be more paranoid in the errors we catch It seems like there error were already covered. Better safe than sorry.
Thu, 13 Sep 2018 19:22:03 +0200 stablesortcache: update the variable tracking on-disk state after write stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 13 Sep 2018 19:22:03 +0200] rev 4104
stablesortcache: update the variable tracking on-disk state after write Since we updated the on disk content, we should update that value. In practice the object will likely be discarded after the write, but there is nothing wrong in being more correct.
Thu, 13 Sep 2018 19:22:39 +0200 stablesortcache: ignore permission and OS errors when writing stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 13 Sep 2018 19:22:39 +0200] rev 4103
stablesortcache: ignore permission and OS errors when writing This cache is related to the obshashrange one and we update it lazily by default. This can be an issue when pulling locally from a read only repository that was not configured for a more aggressive cache warming. The raised permission error was uncaught and could crash the whole process. Errors during cache update should not block Mercurial operations.
Thu, 13 Sep 2018 19:09:48 +0200 firstmergecache: update the variable tracking on-disk state after write stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 13 Sep 2018 19:09:48 +0200] rev 4102
firstmergecache: update the variable tracking on-disk state after write Since we updated the on disk content, we should update that value. In practice the object will likely be discarded after the write, but there is nothing wrong in being more correct.
Thu, 13 Sep 2018 17:08:18 +0200 firstmergecache: ignore permission and OS errors when writing stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 13 Sep 2018 17:08:18 +0200] rev 4101
firstmergecache: ignore permission and OS errors when writing This cache is related to the obshashrange one and we update it lazily by default. This can be an issue when pulling locally from a read only repository that was not configured for a more aggressive cache warming. The raised permission error was uncaught and could crash the whole process. Errors during cache update should not block Mercurial operations.
Thu, 13 Sep 2018 18:56:04 +0200 depthcache: update the variable tracking on disk state after write stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 13 Sep 2018 18:56:04 +0200] rev 4100
depthcache: update the variable tracking on disk state after write Since we updated the on disk content, we should update that value. In practice the object will likely be discarded after the write, but there is nothing wrong in being more correct.
Thu, 13 Sep 2018 17:08:05 +0200 depthcache: ignore permission and OS errors when writing stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 13 Sep 2018 17:08:05 +0200] rev 4099
depthcache: ignore permission and OS errors when writing This cache is related to the obshashrange one and we update it lazily by default. This can be an issue when pulling locally from a read only repository that was not configured for a more aggressive cache warming. The raised permission error was uncaught and could crash the whole process. Errors during Cache update should not block Mercurial operations.
Thu, 13 Sep 2018 18:20:50 +0200 obscache: update the variable tracking on disk state after write stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 13 Sep 2018 18:20:50 +0200] rev 4098
obscache: update the variable tracking on disk state after write Since we updated the on disk content, we should update that value. In practice the object will likely be discarded after the write, but there is nothing wrong in being more correct.
Thu, 13 Sep 2018 18:21:07 +0200 obscache: ignore permission and OS errors when writing stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 13 Sep 2018 18:21:07 +0200] rev 4097
obscache: ignore permission and OS errors when writing In practice we always update this cache along side a new transaction, with lock taken so permission issues should not happens. However, staying on the safe side is better. Errors during Cache update should not block Mercurial operations.
Thu, 13 Sep 2018 02:49:58 +0200 obshashrange: force reset if many changes stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 13 Sep 2018 02:49:58 +0200] rev 4096
obshashrange: force reset if many changes If there is many new markers (or the markers affect many changesets) resetting affected changeset can get slow. A common case for that is then changeset and markers are added in different transaction, (eg: when using clone bundle). When we detect such case, we reset the obshashrange cache, rewarming it should be faster. Here many is arbitrarily set to 10 000. The number might get adjusted.
Tue, 04 Sep 2018 19:30:19 +0800 topic: refactor revset.py slightly
Anton Shestakov <av6@dwimlabs.net> [Tue, 04 Sep 2018 19:30:19 +0800] rev 4095
topic: refactor revset.py slightly Checking both kind == 'literal' and topic.startswith('literal:') seems to be redundant, because of how stringutil.stringmatcher() works.
Wed, 12 Sep 2018 12:02:17 +0200 test: update output to match new `hg verify` reports
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 12 Sep 2018 12:02:17 +0200] rev 4094
test: update output to match new `hg verify` reports CORE-TEST-OUTPUT-UPDATE: f1186c292d03
Wed, 12 Sep 2018 11:53:41 +0200 test: update output to match new "pull" phase report
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 12 Sep 2018 11:53:41 +0200] rev 4093
test: update output to match new "pull" phase report CORE-TEST-OUTPUT-UPDATE: 89630d0b3e23
Wed, 12 Sep 2018 10:37:14 +0200 test: adapt to change in revert messages order
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 12 Sep 2018 10:37:14 +0200] rev 4092
test: adapt to change in revert messages order CORE-TEST-OUTPUT-UPDATE: cb70501d8b71
Fri, 07 Sep 2018 11:08:47 -0700 rewind: fix help text (mostly grammar, but also s/precursor/predecessor) stable
Martin von Zweigbergk <martinvonz@google.com> [Fri, 07 Sep 2018 11:08:47 -0700] rev 4091
rewind: fix help text (mostly grammar, but also s/precursor/predecessor)
Thu, 06 Sep 2018 16:14:24 -0700 evolve: fix use of "'%d' % ctx" stable
Martin von Zweigbergk <martinvonz@google.com> [Thu, 06 Sep 2018 16:14:24 -0700] rev 4090
evolve: fix use of "'%d' % ctx" ctx has not been convertible to int since Mercurial commit 38f480502043 (context: remove basectx.__int__ (API), 2018-02-24). I decided to use "%s" instead to match other similar messages in evolvecmd.py. I also added a space to match the other messages.
Thu, 06 Sep 2018 23:24:26 -0400 stablerange: only issue the message once stable
Gerald Squelart <gsquelart@mozilla.com> [Thu, 06 Sep 2018 23:24:26 -0400] rev 4089
stablerange: only issue the message once There is a flag to prevent issuing the long load message multiple time. However, it was never set. This is now fixed
Fri, 07 Sep 2018 00:06:00 -0400 changelog: fix version number stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 07 Sep 2018 00:06:00 -0400] rev 4088
changelog: fix version number
Mon, 03 Sep 2018 23:30:28 +0200 branching: merge back with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 23:30:28 +0200] rev 4087
branching: merge back with stable
Mon, 03 Sep 2018 23:29:15 +0200 packaing: mark as development version stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 23:29:15 +0200] rev 4086
packaing: mark as development version This help avoid confusion when installing in progress work.
Mon, 03 Sep 2018 23:27:54 +0200 Added tag 8.2.0 for changeset 8d8f08245f97 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 23:27:54 +0200] rev 4085
Added tag 8.2.0 for changeset 8d8f08245f97
Mon, 03 Sep 2018 23:21:39 +0200 branching: merge back with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 23:21:39 +0200] rev 4084
branching: merge back with stable
Mon, 03 Sep 2018 23:17:50 +0200 packaging: prepare new release stable 8.2.0
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 23:17:50 +0200] rev 4083
packaging: prepare new release
Mon, 03 Sep 2018 22:59:20 +0200 test-compat: merge mercurial-4.4 into mercurial-4.3 mercurial-4.3
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 22:59:20 +0200] rev 4082
test-compat: merge mercurial-4.4 into mercurial-4.3
Mon, 03 Sep 2018 22:59:19 +0200 test-compat: merge mercurial-4.5 into mercurial-4.4 mercurial-4.4
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 22:59:19 +0200] rev 4081
test-compat: merge mercurial-4.5 into mercurial-4.4
Mon, 03 Sep 2018 22:59:18 +0200 test-compat: merge mercurial-4.6 into mercurial-4.5 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 22:59:18 +0200] rev 4080
test-compat: merge mercurial-4.6 into mercurial-4.5
Mon, 03 Sep 2018 22:59:16 +0200 test-compat: merge stable into mercurial-4.6 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 22:59:16 +0200] rev 4079
test-compat: merge stable into mercurial-4.6
Mon, 03 Sep 2018 22:47:18 +0200 topic: rework topic templatekw declaration to be 4.5 compatible again stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 22:47:18 +0200] rev 4078
topic: rework topic templatekw declaration to be 4.5 compatible again Mercurial prior to 4.5 does not have a requires keyword, so we need a compatibility layer.
Mon, 03 Sep 2018 22:09:26 +0200 test-compat: merge mercurial-4.4 into mercurial-4.3 mercurial-4.3
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 22:09:26 +0200] rev 4077
test-compat: merge mercurial-4.4 into mercurial-4.3
Mon, 03 Sep 2018 22:06:12 +0200 test-compat: merge mercurial-4.5 into mercurial-4.4 mercurial-4.4
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 22:06:12 +0200] rev 4076
test-compat: merge mercurial-4.5 into mercurial-4.4
Mon, 03 Sep 2018 22:05:12 +0200 test-compat: merge mercurial-4.6 into mercurial-4.5 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 22:05:12 +0200] rev 4075
test-compat: merge mercurial-4.6 into mercurial-4.5
Mon, 03 Sep 2018 21:59:24 +0200 test-compat: merge stable into mercurial-4.6 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 21:59:24 +0200] rev 4074
test-compat: merge stable into mercurial-4.6
Mon, 03 Sep 2018 21:08:33 +0200 branching: merge the two stable heads stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 21:08:33 +0200] rev 4073
branching: merge the two stable heads
Mon, 03 Sep 2018 17:21:16 +0200 test-output: backout test output update in 8fcee1e65e29 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 17:21:16 +0200] rev 4072
test-output: backout test output update in 8fcee1e65e29
Mon, 03 Sep 2018 17:20:28 +0200 test-output: backout test output update in 503ae2689df8 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 17:20:28 +0200] rev 4071
test-output: backout test output update in 503ae2689df8
Mon, 03 Sep 2018 20:54:17 +0200 topic: update the changelog with the 's#' alias change
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 20:54:17 +0200] rev 4070
topic: update the changelog with the 's#' alias change
Mon, 03 Sep 2018 20:53:12 +0200 topic: update other occurrence of 't0' is 's0' in the code
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 20:53:12 +0200] rev 4069
topic: update other occurrence of 't0' is 's0' in the code
Mon, 03 Sep 2018 17:28:50 +0200 topic: mention t0 in topic documentation stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 17:28:50 +0200] rev 4068
topic: mention t0 in topic documentation
Mon, 03 Sep 2018 17:07:36 +0200 stack: display 's#' instead of 't#' and 'b#'
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 17:07:36 +0200] rev 4067
stack: display 's#' instead of 't#' and 'b#' If we want people to use it, we should display it.
Mon, 03 Sep 2018 16:41:32 +0200 stack: clarify s# error message in case of branch
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 16:41:32 +0200] rev 4066
stack: clarify s# error message in case of branch A branch might have a lots of changeset, with all of them public.
Mon, 03 Sep 2018 16:29:02 +0200 alias: allow reference through 's#'
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 03 Sep 2018 16:29:02 +0200] rev 4065
alias: allow reference through 's#' We keep the 't#' option, but we hope to be able to deprecate it at some point. We move to 's#' because it refers to `stack` a more generic concept. than topic. In addition, this allows to phase out 'b#' that collide with normal hex-node.
Sat, 01 Sep 2018 14:00:41 +0200 topic-revset: get the list of revset through the official localrepo API
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 01 Sep 2018 14:00:41 +0200] rev 4064
topic-revset: get the list of revset through the official localrepo API This is simpler and faster. In addition we tighter the logic to be used in case of empty topic. We do not need to fall back to revision search.
Sat, 01 Sep 2018 21:47:00 +0200 topic-revset: strictly read string
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 01 Sep 2018 21:47:00 +0200] rev 4063
topic-revset: strictly read string Making a clear distinction between string and symbol passed to topic is important when it comes to empty topic. Filtering an empty topic name is harmless. Searching a non existent revision is not.
Sat, 01 Sep 2018 21:45:15 +0200 test: search for empty topic as a string
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 01 Sep 2018 21:45:15 +0200] rev 4062
test: search for empty topic as a string The reduce the ambiguity in the test to help with the next change.
Thu, 30 Aug 2018 21:05:17 +0800 topic: handle ambiguous arguments to topic() revset
Anton Shestakov <av6@dwimlabs.net> [Thu, 30 Aug 2018 21:05:17 +0800] rev 4061
topic: handle ambiguous arguments to topic() revset These arguments can be interpreted as either string or a revset. The decision is made based on existence of topic with such a name. This matches the behavior of branch() revset. The code needs to know all topics that ever existed in the repo, because some commands report "disappearance" of topics after certain operations, using this revset (e.g. via stack.stack or repo.revs).
Thu, 30 Aug 2018 20:21:17 +0800 topic: handle revsets passed to topic() revset
Anton Shestakov <av6@dwimlabs.net> [Thu, 30 Aug 2018 20:21:17 +0800] rev 4060
topic: handle revsets passed to topic() revset This handles cases when the argument can't be interpreted as a string at all.
Thu, 30 Aug 2018 19:13:56 +0800 topic: handle string argument to topic() revset earlier
Anton Shestakov <av6@dwimlabs.net> [Thu, 30 Aug 2018 19:13:56 +0800] rev 4059
topic: handle string argument to topic() revset earlier
Thu, 30 Aug 2018 18:02:41 +0800 topic: prepare to handle non-string arguments to topic() revset
Anton Shestakov <av6@dwimlabs.net> [Thu, 30 Aug 2018 18:02:41 +0800] rev 4058
topic: prepare to handle non-string arguments to topic() revset
Thu, 30 Aug 2018 17:42:11 +0800 topic: return result early if there are no arguments to topic() revset
Anton Shestakov <av6@dwimlabs.net> [Thu, 30 Aug 2018 17:42:11 +0800] rev 4057
topic: return result early if there are no arguments to topic() revset
Fri, 31 Aug 2018 00:31:01 +0200 obshashrange: enable by default
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 31 Aug 2018 00:31:01 +0200] rev 4056
obshashrange: enable by default We have been testing this in various placed and specific stress test have been performed. It is time to enable this by default
Thu, 30 Aug 2018 22:50:26 +0200 obshashrange: issue a warning if the cache takes a long time to load
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 30 Aug 2018 22:50:26 +0200] rev 4055
obshashrange: issue a warning if the cache takes a long time to load The -current- implementation of the obshashrange cache can get slow. This will be fixed eventually, in the mean time we inform people on large repository of what have been going on. Since we are about to enable obshashrange by default, we need to make sure nobody will have an (unexplained) bad surprise.
Fri, 31 Aug 2018 14:26:37 +0200 pick: fix last references of grab in code
Boris Feld <boris.feld@octobus.net> [Fri, 31 Aug 2018 14:26:37 +0200] rev 4054
pick: fix last references of grab in code Grab was still referenced on comments and variable names.
Fri, 31 Aug 2018 09:21:19 +0200 pick: replace `hg grab` invocation in test with `hg pick`
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 31 Aug 2018 09:21:19 +0200] rev 4053
pick: replace `hg grab` invocation in test with `hg pick`
Fri, 31 Aug 2018 09:20:21 +0200 pick: replace "grabstate" with "pickstate"
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 31 Aug 2018 09:20:21 +0200] rev 4052
pick: replace "grabstate" with "pickstate"
Fri, 31 Aug 2018 09:19:13 +0200 pick: use "pick" as operation name in obsolescence markers
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 31 Aug 2018 09:19:13 +0200] rev 4051
pick: use "pick" as operation name in obsolescence markers
Fri, 31 Aug 2018 12:45:56 +0200 pick: use "pick" instead of "grab" for various internal API
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 31 Aug 2018 12:45:56 +0200] rev 4050
pick: use "pick" instead of "grab" for various internal API This should not much user visible impact but this is cleaner.
Fri, 31 Aug 2018 09:13:11 +0200 pick: update command output to mention pick instead of grab
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 31 Aug 2018 09:13:11 +0200] rev 4049
pick: update command output to mention pick instead of grab
Fri, 31 Aug 2018 09:11:04 +0200 pick: rename the grab command to pick
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 31 Aug 2018 09:11:04 +0200] rev 4048
pick: rename the grab command to pick Grab is ambiguous with "graft", "pick" match the associated verb in histedit. The "grab" name is preserved as an alias for now.
Fri, 31 Aug 2018 09:08:13 +0200 grab: prefix function with 'cmd' as for the other command in the extension
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 31 Aug 2018 09:08:13 +0200] rev 4047
grab: prefix function with 'cmd' as for the other command in the extension
Thu, 30 Aug 2018 19:40:18 +0200 readme: document the purpose of the evolve extension
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 30 Aug 2018 19:40:18 +0200] rev 4046
readme: document the purpose of the evolve extension Another place for the explanation to live.
Thu, 30 Aug 2018 19:50:39 +0200 prune: replace --biject with --pair
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 30 Aug 2018 19:50:39 +0200] rev 4045
prune: replace --biject with --pair People have been complaining about `--biject` being to obscure for a while. A recent discussion with Pulkit Goyal and Dan Villiom Podlaski Christiansen produce some new concrete proposal that we liked. We eventually settle on using `--pair`. The `--biject` flag will be kept as an alias for a while.
Tue, 28 Aug 2018 21:28:41 +0800 topic: check that repo.currenttopic is set before using it as an argument
Anton Shestakov <av6@dwimlabs.net> [Tue, 28 Aug 2018 21:28:41 +0800] rev 4044
topic: check that repo.currenttopic is set before using it as an argument repo.currenttopic can be an empty string, which means there's no current topic set. This fact can be used to short-circuit some checks. Also, this avoids passing an empty string as an argument to topic() revset.
Wed, 29 Aug 2018 18:59:07 +0200 test: update output after merge message change
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Aug 2018 18:59:07 +0200] rev 4043
test: update output after merge message change CORE-TEST-OUTPUT-UPDATE: f785073f792c CORE-TEST-OUTPUT-UPDATE: a3fd84f4fb38
Wed, 29 Aug 2018 17:32:47 +0200 readme: document the tag we use on output change
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Aug 2018 17:32:47 +0200] rev 4042
readme: document the tag we use on output change
Wed, 29 Aug 2018 17:23:25 +0200 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Aug 2018 17:23:25 +0200] rev 4041
branching: merge with stable
Wed, 29 Aug 2018 10:46:37 +0200 packaging: fix debian version numbers stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Aug 2018 10:46:37 +0200] rev 4040
packaging: fix debian version numbers
Wed, 29 Aug 2018 10:46:37 +0200 packaging: fix debian version numbers
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Aug 2018 10:46:37 +0200] rev 4039
packaging: fix debian version numbers
Tue, 28 Aug 2018 21:53:42 +0200 branching: merge stable into default
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 28 Aug 2018 21:53:42 +0200] rev 4038
branching: merge stable into default
Tue, 28 Aug 2018 21:53:07 +0200 packaging: mark in progress work as development version stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 28 Aug 2018 21:53:07 +0200] rev 4037
packaging: mark in progress work as development version This avoid confusion when people install development version.
Tue, 28 Aug 2018 20:30:57 +0200 Added tag 8.1.2 for changeset f1cde4c97806 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 28 Aug 2018 20:30:57 +0200] rev 4036
Added tag 8.1.2 for changeset f1cde4c97806
Tue, 28 Aug 2018 19:59:20 +0200 packagin: prepare version 8.1.2 stable 8.1.2
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 28 Aug 2018 19:59:20 +0200] rev 4035
packagin: prepare version 8.1.2
Tue, 28 Aug 2018 20:00:46 +0200 obshashrange: force obshashrange invalidation by bumping schema stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 28 Aug 2018 20:00:46 +0200] rev 4034
obshashrange: force obshashrange invalidation by bumping schema The fix in 8.1.1 deserve recomputing the obs hash range cache. So we bump its schema version to declare the older cache invalid. The other caches, including the expensive stablerange are unaffected.
Tue, 28 Aug 2018 11:25:32 +0200 test-compat: merge mercurial-4.4 into mercurial-4.3 mercurial-4.3
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 28 Aug 2018 11:25:32 +0200] rev 4033
test-compat: merge mercurial-4.4 into mercurial-4.3
Tue, 28 Aug 2018 11:24:52 +0200 test-compat: merge mercurial-4.5 into mercurial-4.4 mercurial-4.4
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 28 Aug 2018 11:24:52 +0200] rev 4032
test-compat: merge mercurial-4.5 into mercurial-4.4
Tue, 28 Aug 2018 11:24:50 +0200 test-compat: merge mercurial-4.6 into mercurial-4.5 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 28 Aug 2018 11:24:50 +0200] rev 4031
test-compat: merge mercurial-4.6 into mercurial-4.5
Tue, 28 Aug 2018 11:24:49 +0200 test-compat: merge stable into mercurial-4.6 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 28 Aug 2018 11:24:49 +0200] rev 4030
test-compat: merge stable into mercurial-4.6
Tue, 28 Aug 2018 11:18:58 +0200 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 28 Aug 2018 11:18:58 +0200] rev 4029
branching: merge with stable
Tue, 28 Aug 2018 10:24:18 +0200 changelog: mention the database robutness fix in the changelog stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 28 Aug 2018 10:24:18 +0200] rev 4028
changelog: mention the database robutness fix in the changelog
Mon, 27 Aug 2018 12:40:47 +0200 sqlcache: also catch malformed database error stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 12:40:47 +0200] rev 4027
sqlcache: also catch malformed database error This is apparently another way for sqlite to fail at concurrency.
Mon, 27 Aug 2018 12:40:41 +0200 stablerange: rework saving logic to be clearer and safer stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 12:40:41 +0200] rev 4026
stablerange: rework saving logic to be clearer and safer
Mon, 27 Aug 2018 12:12:49 +0200 obshashrange: rework saving branching to be clearer and safer stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 12:12:49 +0200] rev 4025
obshashrange: rework saving branching to be clearer and safer
Mon, 27 Aug 2018 11:40:32 +0200 sqlcache: protect read query too stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 11:40:32 +0200] rev 4024
sqlcache: protect read query too Some error (like locked database) can even happens when doing readonly operation. So we protect them too. At that point, it seems that pysqlite3 is not the right tool for this job.
Mon, 27 Aug 2018 11:33:09 +0200 sqlite: fast path when nothing to save stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 11:33:09 +0200] rev 4023
sqlite: fast path when nothing to save If we have no new data to save, we should try to do anything. Doing something concurrently is hard enough. If we can avoid doing it at all that would be great.
Mon, 27 Aug 2018 11:27:04 +0200 sqlcache: initialize meta table last stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 11:27:04 +0200] rev 4022
sqlcache: initialize meta table last It turns out that pysqlite commit after each table creation. This commit is an hopeless attemps to make the caches more concurrent friendly.
Mon, 27 Aug 2018 10:20:15 +0200 obshashrange: always check in base cachekey against the recorded one stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 10:20:15 +0200] rev 4021
obshashrange: always check in base cachekey against the recorded one Ignoring the check in the none case is just disaster waiting to happens.
Mon, 27 Aug 2018 10:16:12 +0200 stablerangecache: fix output in the drifted case stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 10:16:12 +0200] rev 4020
stablerangecache: fix output in the drifted case The node were not hex, and the field had different order in the pair. This is now fixed.
Mon, 27 Aug 2018 00:35:51 +0200 sqlcache: also ignore integrity error stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 00:35:51 +0200] rev 4019
sqlcache: also ignore integrity error integrity error can happens when multiple client tries to warm similar cache. Given we leave multiple hole in the cache that can be warmed by anyone, this is harder to avoid that we would like. We simply catch the error in this case. Someone will warm the missing entry later.
Mon, 27 Aug 2018 00:28:19 +0200 sqlcache: cache OperationError when saving stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 00:28:19 +0200] rev 4018
sqlcache: cache OperationError when saving This is a cache, so we should not crash when trying to operate on it. OperationError can happens when the database is seen as readonly or locked.
Mon, 27 Aug 2018 00:18:06 +0200 sqlcache: passe better connection option stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 00:18:06 +0200] rev 4017
sqlcache: passe better connection option These new options should help with handling transaction consistency and database access on high load.
Sun, 26 Aug 2018 20:55:26 +0200 contrib: introduce a small script to stress tests obsolescence exchange stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 26 Aug 2018 20:55:26 +0200] rev 4016
contrib: introduce a small script to stress tests obsolescence exchange Tester have been reporting some error that seems to originate from concurrent access/update to the cache. This script will be useful to reproduce these situations locally.
Tue, 28 Aug 2018 10:24:18 +0200 changelog: mention the database robutness fix in the changelog
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 28 Aug 2018 10:24:18 +0200] rev 4015
changelog: mention the database robutness fix in the changelog
Mon, 27 Aug 2018 12:40:47 +0200 sqlcache: also catch malformed database error
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 12:40:47 +0200] rev 4014
sqlcache: also catch malformed database error This is apparently another way for sqlite to fail at concurrency.
Mon, 27 Aug 2018 12:40:41 +0200 stablerange: rework saving logic to be clearer and safer
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 12:40:41 +0200] rev 4013
stablerange: rework saving logic to be clearer and safer
Mon, 27 Aug 2018 12:12:49 +0200 obshashrange: rework saving branching to be clearer and safer
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 12:12:49 +0200] rev 4012
obshashrange: rework saving branching to be clearer and safer
Mon, 27 Aug 2018 11:40:32 +0200 sqlcache: protect read query too
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 11:40:32 +0200] rev 4011
sqlcache: protect read query too Some error (like locked database) can even happens when doing readonly operation. So we protect them too. At that point, it seems that pysqlite3 is not the right tool for this job.
Mon, 27 Aug 2018 11:33:09 +0200 sqlite: fast path when nothing to save
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 11:33:09 +0200] rev 4010
sqlite: fast path when nothing to save If we have no new data to save, we should try to do anything. Doing something concurrently is hard enough. If we can avoid doing it at all that would be great.
Mon, 27 Aug 2018 11:27:04 +0200 sqlcache: initialize meta table last
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 11:27:04 +0200] rev 4009
sqlcache: initialize meta table last It turns out that pysqlite commit after each table creation. This commit is an hopeless attemps to make the caches more concurrent friendly.
Mon, 27 Aug 2018 10:20:15 +0200 obshashrange: always check in base cachekey against the recorded one
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 10:20:15 +0200] rev 4008
obshashrange: always check in base cachekey against the recorded one Ignoring the check in the none case is just disaster waiting to happens.
Mon, 27 Aug 2018 10:16:12 +0200 stablerangecache: fix output in the drifted case
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 10:16:12 +0200] rev 4007
stablerangecache: fix output in the drifted case The node were not hex, and the field had different order in the pair. This is now fixed.
Mon, 27 Aug 2018 00:35:51 +0200 sqlcache: also ignore integrity error
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 00:35:51 +0200] rev 4006
sqlcache: also ignore integrity error integrity error can happens when multiple client tries to warm similar cache. Given we leave multiple hole in the cache that can be warmed by anyone, this is harder to avoid that we would like. We simply catch the error in this case. Someone will warm the missing entry later.
Mon, 27 Aug 2018 00:28:19 +0200 sqlcache: cache OperationError when saving
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 00:28:19 +0200] rev 4005
sqlcache: cache OperationError when saving This is a cache, so we should not crash when trying to operate on it. OperationError can happens when the database is seen as readonly or locked.
Mon, 27 Aug 2018 00:18:06 +0200 sqlcache: passe better connection option
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 27 Aug 2018 00:18:06 +0200] rev 4004
sqlcache: passe better connection option These new options should help with handling transaction consistency and database access on high load.
Sun, 26 Aug 2018 20:55:26 +0200 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 26 Aug 2018 20:55:26 +0200] rev 4003
contrib: introduce a small script to stress tests obsolescence exchange Tester have been reporting some error that seems to originate from concurrent access/update to the cache. This script will be useful to reproduce these situations locally.
Tue, 21 Aug 2018 14:09:33 +0200 test-compat: merge mercurial-4.4 into mercurial-4.3 mercurial-4.3
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 21 Aug 2018 14:09:33 +0200] rev 4002
test-compat: merge mercurial-4.4 into mercurial-4.3
Tue, 21 Aug 2018 13:59:27 +0200 test: adjust glob in previous changeset mercurial-4.4
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 21 Aug 2018 13:59:27 +0200] rev 4001
test: adjust glob in previous changeset I forgot to glob the time.
Tue, 21 Aug 2018 15:32:02 +0200 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 21 Aug 2018 15:32:02 +0200] rev 4000
branching: merge with stable
Tue, 21 Aug 2018 15:30:54 +0200 packaging: mark as development version stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 21 Aug 2018 15:30:54 +0200] rev 3999
packaging: mark as development version This avoid confusion.
Tue, 21 Aug 2018 15:29:32 +0200 Added tag 8.1.1 for changeset e7abf863e113 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 21 Aug 2018 15:29:32 +0200] rev 3998
Added tag 8.1.1 for changeset e7abf863e113
Tue, 21 Aug 2018 15:29:13 +0200 packaging: prepare release 8.1.1 stable 8.1.1
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 21 Aug 2018 15:29:13 +0200] rev 3997
packaging: prepare release 8.1.1 Topic is untouched so we keep the previous version number.
Tue, 21 Aug 2018 14:23:47 +0200 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 21 Aug 2018 14:23:47 +0200] rev 3996
branching: merge with stable
Tue, 21 Aug 2018 13:26:35 +0200 test-compat: merge mercurial-4.5 into mercurial-4.4 mercurial-4.4
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 21 Aug 2018 13:26:35 +0200] rev 3995
test-compat: merge mercurial-4.5 into mercurial-4.4
Tue, 21 Aug 2018 13:25:29 +0200 test-compat: merge mercurial-4.6 into mercurial-4.5 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 21 Aug 2018 13:25:29 +0200] rev 3994
test-compat: merge mercurial-4.6 into mercurial-4.5
Tue, 21 Aug 2018 13:25:28 +0200 test-compat: merge stable into mercurial-4.6 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 21 Aug 2018 13:25:28 +0200] rev 3993
test-compat: merge stable into mercurial-4.6
Tue, 21 Aug 2018 13:18:52 +0200 changelog: add a line about improved prune documentation stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 21 Aug 2018 13:18:52 +0200] rev 3992
changelog: add a line about improved prune documentation
Tue, 21 Aug 2018 13:17:27 +0200 changelog: reorder content stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 21 Aug 2018 13:17:27 +0200] rev 3991
changelog: reorder content
Tue, 21 Aug 2018 12:13:28 +0200 prune: more human-friendly documentation stable
Dan Villiom Podlaski Christiansen <dan@magenta.dk> [Tue, 21 Aug 2018 12:13:28 +0200] rev 3990
prune: more human-friendly documentation The previous help string generally had a highly technical language. I've tried my best to address that.
Tue, 21 Aug 2018 12:14:04 +0200 prune: improve help first line stable
Dan Villiom Podlaski Christiansen <dan@magenta.dk> [Tue, 21 Aug 2018 12:14:04 +0200] rev 3989
prune: improve help first line The previous help string for prune didn't mention successors in the first line. Note: Pierre-Yves David changed the original "hidden" to "obsolete" as it is better concept to put forward. (a bit more specific and with more consequence than just "hidden"). We need a good `hg help obsolete/obsolescence` result. We'll try to get this in the next version.
Tue, 21 Aug 2018 12:21:05 +0200 prune: try to clarify the "multi" revisions case stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 21 Aug 2018 12:21:05 +0200] rev 3988
prune: try to clarify the "multi" revisions case I hope this highlight the use case for all three options.
Tue, 21 Aug 2018 12:21:59 +0200 prune: move help about biject after the one about split and fold stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 21 Aug 2018 12:21:59 +0200] rev 3987
prune: move help about biject after the one about split and fold The --biject flag seems a less common use case.
Tue, 21 Aug 2018 12:18:11 +0200 prune: no longer consider dropping --biject stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 21 Aug 2018 12:18:11 +0200] rev 3986
prune: no longer consider dropping --biject Field testing show it save people one wrong call often enough that it is worth keeping.
Tue, 21 Aug 2018 12:13:01 +0200 prune: more human-friendly documentation for --biject stable
Dan Villiom Podlaski Christiansen <dan@magenta.dk> [Tue, 21 Aug 2018 12:13:01 +0200] rev 3985
prune: more human-friendly documentation for --biject
Tue, 21 Aug 2018 11:56:49 +0200 prune: use ``-s/--succ`` in documentation stable
Dan Villiom Podlaski Christiansen <dan@magenta.dk> [Tue, 21 Aug 2018 11:56:49 +0200] rev 3984
prune: use ``-s/--succ`` in documentation Extracted by Pierre-Yves David
Tue, 21 Aug 2018 04:08:38 +0200 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 21 Aug 2018 04:08:38 +0200] rev 3983
branching: merge with stable
Tue, 21 Aug 2018 04:05:12 +0200 compat: import the module dagutil module in evolve
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 21 Aug 2018 04:05:12 +0200] rev 3982
compat: import the module dagutil module in evolve Discovery code is core have been rewritten to no longer depends on dagutil and the module have been removed. This break evolve's obsmarker discovery (older version of the discovery use the same concept).. A quick work around is to import the dagutil module in evolve and use that for now.
Mon, 20 Aug 2018 12:21:39 +0300 evolve: delete evolvestate after aborting interrupted `next --evolve` stable
Pulkit Goyal <pulkit@yandex-team.ru> [Mon, 20 Aug 2018 12:21:39 +0300] rev 3981
evolve: delete evolvestate after aborting interrupted `next --evolve` We didn't use to delete the evolvestate after aborting an interrupted `next --evolve`. This patch makes sure we do that. The test changes demonstrate the fix and we add a CHANGELOG entry about the fix.
Mon, 20 Aug 2018 12:19:05 +0300 tests: check that we delete evolvestate correctly after abort/stop stable
Pulkit Goyal <pulkit@yandex-team.ru> [Mon, 20 Aug 2018 12:19:05 +0300] rev 3980
tests: check that we delete evolvestate correctly after abort/stop This patch adds test to check whether we delete the evolvestate correctly after aborting or stopping an interrupted evolve which is caused because of `next --evolve`.
Mon, 20 Aug 2018 23:04:37 +0200 changelog: update with issue5927 fix stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 20 Aug 2018 23:04:37 +0200] rev 3979
changelog: update with issue5927 fix
Sat, 18 Aug 2018 21:03:45 +0530 evolve: set the second parent if we get conflicts while evolving stable
Pulkit Goyal <pulkit@yandex-team.ru> [Sat, 18 Aug 2018 21:03:45 +0530] rev 3978
evolve: set the second parent if we get conflicts while evolving This patch makes sure we set the second parent correctly if we run into conflicts while evolving. Also, we need to make sure to reset to one parent before committing.
Sat, 18 Aug 2018 21:01:14 +0530 evolvecmd: import mercurial.node module as nodemod stable
Pulkit Goyal <pulkit@yandex-team.ru> [Sat, 18 Aug 2018 21:01:14 +0530] rev 3977
evolvecmd: import mercurial.node module as nodemod We use node as a variable name at few places and the conflicts with variable name are not good. Moreover this practice is followed in core mercurial also.
Sat, 18 Aug 2018 20:24:41 +0530 tests: demonstrate the interrupted evolve does not set p2 stable
Pulkit Goyal <pulkit@yandex-team.ru> [Sat, 18 Aug 2018 20:24:41 +0530] rev 3976
tests: demonstrate the interrupted evolve does not set p2 This patch adds a test to demonstrate issue5927 which is about evolving not setting p2 correctly in interruption.
Sat, 18 Aug 2018 01:32:52 +0200 cleanup: remove unused import
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 18 Aug 2018 01:32:52 +0200] rev 3975
cleanup: remove unused import
Sat, 18 Aug 2018 01:03:19 +0200 cleanup: remove old comment that lost all meaning
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 18 Aug 2018 01:03:19 +0200] rev 3974
cleanup: remove old comment that lost all meaning
Sat, 18 Aug 2018 01:02:52 +0200 template: remove compatibility layer for `showobsolete`
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 18 Aug 2018 01:02:52 +0200] rev 3973
template: remove compatibility layer for `showobsolete` The keyword exist in core since 4.2
Sat, 18 Aug 2018 01:06:30 +0200 exthelper: drop compatibility layer for `command`
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 18 Aug 2018 01:06:30 +0200] rev 3972
exthelper: drop compatibility layer for `command` We dropped support for 4.2.
Sat, 18 Aug 2018 01:05:00 +0200 topic: drop compat layer for `command`
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 18 Aug 2018 01:05:00 +0200] rev 3971
topic: drop compat layer for `command` We dropped support for 4.2
Sat, 18 Aug 2018 01:00:08 +0200 legacy: drop compat layer for "command"
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 18 Aug 2018 01:00:08 +0200] rev 3970
legacy: drop compat layer for "command"
Sat, 18 Aug 2018 00:59:44 +0200 drophack: drop compat layer for "command"
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 18 Aug 2018 00:59:44 +0200] rev 3969
drophack: drop compat layer for "command"
Sat, 18 Aug 2018 00:53:12 +0200 compat: drop compatibility layer for updatecaches
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 18 Aug 2018 00:53:12 +0200] rev 3968
compat: drop compatibility layer for updatecaches The `repo.updatecaches` method is support since Mercurial 4.2
Sat, 18 Aug 2018 00:48:05 +0200 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 18 Aug 2018 00:48:05 +0200] rev 3967
branching: merge with stable
Fri, 17 Aug 2018 16:26:44 +0200 obshashrange: force saving of stablesort and firstmerge cache stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 17 Aug 2018 16:26:44 +0200] rev 3966
obshashrange: force saving of stablesort and firstmerge cache For some reason the check in repo is not working for stable sort. We also force firstmerge to be saved as test show it was missing.
Fri, 17 Aug 2018 13:31:35 +0200 test: add a test about cache warming stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 17 Aug 2018 13:31:35 +0200] rev 3965
test: add a test about cache warming This test reveal that multiple cache are not saved to disk after discovery (firstmerge, stablesort).
Fri, 17 Aug 2018 12:56:13 +0200 stablerange: save stablesort cache alongside the stablerange one stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 17 Aug 2018 12:56:13 +0200] rev 3964
stablerange: save stablesort cache alongside the stablerange one This one does not introduce inconsistency but helps performance. G: changed hgext3rd/evolve/stablerangecache.py
Fri, 17 Aug 2018 12:07:55 +0200 obshashrange: always save stable range cache alongside the obshashrange one stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 17 Aug 2018 12:07:55 +0200] rev 3963
obshashrange: always save stable range cache alongside the obshashrange one If the on disk date cover different area, the invalidation of affected range will misbehave.
Fri, 17 Aug 2018 12:06:43 +0200 obshashrange: clear in-memory cache alongside the sqlite one stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 17 Aug 2018 12:06:43 +0200] rev 3962
obshashrange: clear in-memory cache alongside the sqlite one Clearing on disk data in nice, but we also need to remove in memory one or we'll get incorrect results.
Fri, 17 Aug 2018 01:07:37 +0200 branching: merge with fixes on stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 17 Aug 2018 01:07:37 +0200] rev 3961
branching: merge with fixes on stable
Fri, 17 Aug 2018 01:04:49 +0200 changelog: summarize the recent improvement stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 17 Aug 2018 01:04:49 +0200] rev 3960
changelog: summarize the recent improvement
Fri, 17 Aug 2018 00:27:10 +0200 obshashrange: re-enabled more selective pruning of affected range stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 17 Aug 2018 00:27:10 +0200] rev 3959
obshashrange: re-enabled more selective pruning of affected range
Fri, 17 Aug 2018 00:23:20 +0200 obshashrange: fix computation of affected ranges stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 17 Aug 2018 00:23:20 +0200] rev 3958
obshashrange: fix computation of affected ranges The computation of impacted nodes and associated revs is fully reworked. In addition,we introduce multiple new tests covering cases that were previous wrongly handled.
Thu, 16 Aug 2018 22:45:36 +0200 obshashrange: add more validation output to tests stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 16 Aug 2018 22:45:36 +0200] rev 3957
obshashrange: add more validation output to tests We are about to update the logic and add more tests.
Thu, 16 Aug 2018 21:12:57 +0200 obshashrange: correctly detect changeset directly affected by prune stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 16 Aug 2018 21:12:57 +0200] rev 3956
obshashrange: correctly detect changeset directly affected by prune Before this changesets, parent of standard obsmarkers were wrongly considered affected and pruned changeset were wrongly not considered affected.
Thu, 16 Aug 2018 21:18:18 +0200 obshashrange: do not search for affected ranges above the highest we have stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 16 Aug 2018 21:18:18 +0200] rev 3955
obshashrange: do not search for affected ranges above the highest we have It is a fast way to know we don't have an affected range for an affected revision.
Thu, 16 Aug 2018 20:49:55 +0200 obshashrange: do not search for affected stable range cache is unavailable stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 16 Aug 2018 20:49:55 +0200] rev 3954
obshashrange: do not search for affected stable range cache is unavailable Before this changeset we where resetting in all cases, and then looking for affected ranges. In addition is the stable range were not available, the functions silently returned no ranges affected. Now, do one or the other depending of the availability of the stable range cache. In practice we always do a broad reset because the code detecting affected changeset is currently buggy.
Thu, 16 Aug 2018 20:22:19 +0200 stablerange: build closure a bit less inefficiently stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 16 Aug 2018 20:22:19 +0200] rev 3953
stablerange: build closure a bit less inefficiently The new way make me a bit less sad than the old one.
Thu, 16 Aug 2018 22:19:19 +0200 discovery: make sure repository wrapping happens in the right order stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 16 Aug 2018 22:19:19 +0200] rev 3952
discovery: make sure repository wrapping happens in the right order Otherwise we may end up in situation were cache are not warmed in the right order, crashing.
Thu, 16 Aug 2018 11:58:07 +0200 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 16 Aug 2018 11:58:07 +0200] rev 3951
branching: merge with stable
Thu, 16 Aug 2018 11:54:30 +0200 changelog: add an entry about the next --evolve fix stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 16 Aug 2018 11:54:30 +0200] rev 3950
changelog: add an entry about the next --evolve fix
Thu, 16 Aug 2018 11:53:49 +0200 changelog: update 8.1.0 release date stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 16 Aug 2018 11:53:49 +0200] rev 3949
changelog: update 8.1.0 release date
Thu, 16 Aug 2018 11:44:32 +0200 next: fix topic constraint in the --evolve case stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 16 Aug 2018 11:44:32 +0200] rev 3948
next: fix topic constraint in the --evolve case We were using the wrong variable.
Thu, 16 Aug 2018 11:43:53 +0200 next: use set for membership testing stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 16 Aug 2018 11:43:53 +0200] rev 3947
next: use set for membership testing There are no reason to use a list here.
Tue, 14 Aug 2018 19:22:54 +0200 test: adapt to core output change on unknown command
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 14 Aug 2018 19:22:54 +0200] rev 3946
test: adapt to core output change on unknown command CORE-TEST-OUTPUT-UPDATE: 5199c5b6fd29
Tue, 14 Aug 2018 19:15:35 +0200 compat: use new style template keyword declaration
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 14 Aug 2018 19:15:35 +0200] rev 3945
compat: use new style template keyword declaration
Tue, 14 Aug 2018 18:32:30 +0200 test: fix previous changeset output
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 14 Aug 2018 18:32:30 +0200] rev 3944
test: fix previous changeset output The previous changeset got published prematurely.
Tue, 14 Aug 2018 15:24:22 +0200 obshashrange: add a test for `hg debugupdatecache`
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 14 Aug 2018 15:24:22 +0200] rev 3943
obshashrange: add a test for `hg debugupdatecache` It seem to be properly filling the caches.
Tue, 14 Aug 2018 18:21:23 +0200 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 14 Aug 2018 18:21:23 +0200] rev 3942
branching: merge with stable
Wed, 08 Aug 2018 20:21:34 +0900 templatekw: do not override in-core {obsolete} keyword stable
Yuya Nishihara <yuya@tcha.org> [Wed, 08 Aug 2018 20:21:34 +0900] rev 3941
templatekw: do not override in-core {obsolete} keyword The extension version uses old API, which will be deprecated in Mercurial 4.8.
Mon, 13 Aug 2018 12:55:10 +0200 packaging: mark version as development version stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 13 Aug 2018 12:55:10 +0200] rev 3940
packaging: mark version as development version This avoid confusion when installing non-tagged version.
Fri, 03 Aug 2018 05:43:54 +0200 Added tag 8.1.0 for changeset 2c5d79c6459c stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Aug 2018 05:43:54 +0200] rev 3939
Added tag 8.1.0 for changeset 2c5d79c6459c
Fri, 03 Aug 2018 05:41:08 +0200 packaging: prepare version stable 8.1.0
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Aug 2018 05:41:08 +0200] rev 3938
packaging: prepare version
Fri, 03 Aug 2018 01:16:51 +0200 branching: merge stable into default
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Aug 2018 01:16:51 +0200] rev 3937
branching: merge stable into default
Fri, 03 Aug 2018 00:22:50 +0200 test-compat: merge mercurial-4.4 into mercurial-4.3 mercurial-4.3
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Aug 2018 00:22:50 +0200] rev 3936
test-compat: merge mercurial-4.4 into mercurial-4.3
Fri, 03 Aug 2018 00:19:47 +0200 test-compat: merge mercurial-4.5 into mercurial-4.4 mercurial-4.4
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Aug 2018 00:19:47 +0200] rev 3935
test-compat: merge mercurial-4.5 into mercurial-4.4
Fri, 03 Aug 2018 00:19:46 +0200 test-compat: merge mercurial-4.6 into mercurial-4.5 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Aug 2018 00:19:46 +0200] rev 3934
test-compat: merge mercurial-4.6 into mercurial-4.5
Fri, 03 Aug 2018 00:19:45 +0200 test-compat: merge stable into mercurial-4.6 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 03 Aug 2018 00:19:45 +0200] rev 3933
test-compat: merge stable into mercurial-4.6
Fri, 03 Aug 2018 00:52:10 +0200 compat: fix obslog compatiblity with 4.3 stable
Boris Feld <boris.feld@octobus.net> [Fri, 03 Aug 2018 00:52:10 +0200] rev 3932
compat: fix obslog compatiblity with 4.3 Due to the way of how successor sets are retrieved in new Mercurial version, retrieving it again in 4.3 way would be a performance hit and complexify the code too much. Don't retrieve markers of successor sets which makes obslog filtered output more limited in 4.3.
Thu, 02 Aug 2018 16:54:40 +0300 compat: add a fixed version of mergecopies for hg<=4.3 stable
Pulkit Goyal <pulkit@yandex-team.ru> [Thu, 02 Aug 2018 16:54:40 +0300] rev 3931
compat: add a fixed version of mergecopies for hg<=4.3 In hg<=4.3, copies._fullcopytracing() does not exist and we have to wrap copies.mergecopies() to fix the AssertionError coming from core.
Thu, 02 Aug 2018 02:47:44 +0200 test-compat: merge mercurial-4.5 into mercurial-4.4 mercurial-4.4
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 02 Aug 2018 02:47:44 +0200] rev 3930
test-compat: merge mercurial-4.5 into mercurial-4.4
Thu, 02 Aug 2018 02:42:15 +0200 test-compat: merge mercurial-4.6 into mercurial-4.5 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 02 Aug 2018 02:42:15 +0200] rev 3929
test-compat: merge mercurial-4.6 into mercurial-4.5
Thu, 02 Aug 2018 02:42:14 +0200 test-compat: merge stable into mercurial-4.6 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 02 Aug 2018 02:42:14 +0200] rev 3928
test-compat: merge stable into mercurial-4.6
Thu, 02 Aug 2018 04:11:54 +0200 compat: make compatible call to ui.edit for hg <= 4.3 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 02 Aug 2018 04:11:54 +0200] rev 3927
compat: make compatible call to ui.edit for hg <= 4.3 This is similar to what is already happening elsewhere.
Thu, 02 Aug 2018 03:08:52 +0200 compat: ignore extra status feature for hg <= 4.3 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 02 Aug 2018 03:08:52 +0200] rev 3926
compat: ignore extra status feature for hg <= 4.3 The feature does not exist in 4.3 and below.
Thu, 02 Aug 2018 02:41:33 +0200 format: fix indentation level stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 02 Aug 2018 02:41:33 +0200] rev 3925
format: fix indentation level Previous change got pushed without the fix by mistake.
Thu, 02 Aug 2018 01:58:44 +0200 test-compat: merge mercurial-4.6 into mercurial-4.5 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 02 Aug 2018 01:58:44 +0200] rev 3924
test-compat: merge mercurial-4.6 into mercurial-4.5
Thu, 02 Aug 2018 01:57:13 +0200 test-compat: merge stable into mercurial-4.6 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 02 Aug 2018 01:57:13 +0200] rev 3923
test-compat: merge stable into mercurial-4.6
Thu, 02 Aug 2018 02:15:48 +0200 compat: disable empty topic warning on `hg phases` for hg <=4.5 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 02 Aug 2018 02:15:48 +0200] rev 3922
compat: disable empty topic warning on `hg phases` for hg <=4.5 This is annoying to support for lower version.
Thu, 02 Aug 2018 01:31:02 +0200 compat: restore compatibility with Mercurial <= 4.5 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 02 Aug 2018 01:31:02 +0200] rev 3921
compat: restore compatibility with Mercurial <= 4.5 The __init__ arguments changed a lot in 4.6 and 4.7, lets do be as transparent as possible
Thu, 02 Aug 2018 01:53:01 +0200 test-compat: merge stable into mercurial-4.6 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 02 Aug 2018 01:53:01 +0200] rev 3920
test-compat: merge stable into mercurial-4.6
Tue, 31 Jul 2018 12:54:46 +0200 test-compat: merge stable into mercurial-4.6 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 31 Jul 2018 12:54:46 +0200] rev 3919
test-compat: merge stable into mercurial-4.6
Wed, 01 Aug 2018 23:52:10 +0200 branching: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 01 Aug 2018 23:52:10 +0200] rev 3918
branching: merge stable back into default
Tue, 31 Jul 2018 07:38:37 -0500 compat: improve detection of Mercurial 4.6 stable
Andrew Fischer <andrew@apastron.co> [Tue, 31 Jul 2018 07:38:37 -0500] rev 3917
compat: improve detection of Mercurial 4.6 fixed case where AttributeError can be thrown when importing wireproto
Tue, 31 Jul 2018 13:06:20 +0200 cleanup: use NotImplementedError instead of NotImplemented stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 31 Jul 2018 13:06:20 +0200] rev 3916
cleanup: use NotImplementedError instead of NotImplemented Caught by pyflakes.
Tue, 24 Jul 2018 00:52:14 +0530 CHANGELOG: add some entries and remove duplicated entries stable
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 24 Jul 2018 00:52:14 +0530] rev 3915
CHANGELOG: add some entries and remove duplicated entries
Tue, 31 Jul 2018 12:52:06 +0200 branching: merge default into stable stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 31 Jul 2018 12:52:06 +0200] rev 3914
branching: merge default into stable The stable branch of Mercurial core now contains Mercurial 4.7 so evolve branch policy requires this merge. The @ bookmark is in the right location, so people doing clone will get to the latest release.
Tue, 31 Jul 2018 12:07:39 +0200 branching: merge with the other head mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 31 Jul 2018 12:07:39 +0200] rev 3913
branching: merge with the other head
Tue, 31 Jul 2018 11:48:15 +0200 test-compat: backed out changeset 8fe8152ff071 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 31 Jul 2018 11:48:15 +0200] rev 3912
test-compat: backed out changeset 8fe8152ff071 These output change were for 4.7 only.
Tue, 31 Jul 2018 11:47:20 +0200 test-compat: backed out changeset 41fc764bf28c mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 31 Jul 2018 11:47:20 +0200] rev 3911
test-compat: backed out changeset 41fc764bf28c These output change are for mercurial-4.7 only
Tue, 31 Jul 2018 11:46:30 +0200 test-compat: backed out changeset dda5b2134b32 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 31 Jul 2018 11:46:30 +0200] rev 3910
test-compat: backed out changeset dda5b2134b32 These change were for Mercurial 4.7 only.
Tue, 31 Jul 2018 11:45:01 +0200 test-compat: backout change to 1e103c7f7663 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 31 Jul 2018 11:45:01 +0200] rev 3909
test-compat: backout change to 1e103c7f7663
Tue, 31 Jul 2018 11:25:57 +0200 compat: use older API for older version
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 31 Jul 2018 11:25:57 +0200] rev 3908
compat: use older API for older version This API changed in 4.7, we need to adjust.
Tue, 31 Jul 2018 09:28:19 +0200 branching: create mercurial-4.6 branch for updated test output mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 31 Jul 2018 09:28:19 +0200] rev 3907
branching: create mercurial-4.6 branch for updated test output This branch will be used to check for 4.6 compatibility.
Wed, 25 Jul 2018 16:12:01 -0700 builddependencies: extract function for getting successors
Martin von Zweigbergk <martinvonz@google.com> [Wed, 25 Jul 2018 16:12:01 -0700] rev 3906
builddependencies: extract function for getting successors The code no longer makes a difference between single- and mult-successor cases and just needs a set (or generator, really) of successors to iterate over. Let's extract that into a function.
Wed, 25 Jul 2018 16:23:25 -0700 builddependencies: share code between single- and multi-successor cases
Martin von Zweigbergk <martinvonz@google.com> [Wed, 25 Jul 2018 16:23:25 -0700] rev 3905
builddependencies: share code between single- and multi-successor cases The two cases now have more similar structure ("if succ in revs: dependencies[r].add(succ)"), so let's share the code so it doesn't start drifting apart again.
Wed, 25 Jul 2018 14:33:48 -0700 builddependencies: build inverse dict from forward dict
Martin von Zweigbergk <martinvonz@google.com> [Wed, 25 Jul 2018 14:33:48 -0700] rev 3904
builddependencies: build inverse dict from forward dict It's error-prone to keep "dependencies" and "rdependencies" in sync (we don't do it correctly when there are multiple successors or a node). It's easier to just create "rependencies" from "dependencies" after it's complete.
Wed, 25 Jul 2018 14:21:49 -0700 builddependencies: remove a use of defaultdict
Martin von Zweigbergk <martinvonz@google.com> [Wed, 25 Jul 2018 14:21:49 -0700] rev 3903
builddependencies: remove a use of defaultdict I don't see much reason to make "rdependencies" be a defaultdict when "dependencies" is not. It's easy to initialize each entry ourselves.
Tue, 31 Jul 2018 09:03:35 +0200 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 31 Jul 2018 09:03:35 +0200] rev 3902
branching: merge with stable
Wed, 25 Jul 2018 15:30:37 -0700 builddependencies: don't remove found deps when divergence found (issue5946) stable
Martin von Zweigbergk <martinvonz@google.com> [Wed, 25 Jul 2018 15:30:37 -0700] rev 3901
builddependencies: don't remove found deps when divergence found (issue5946) It seems obviously wrong to not keep any dependencies for a revision that we had already found (for p1) if we run into divergence (from p2). It also happens to fix issue5946 :)
Wed, 25 Jul 2018 14:47:16 -0700 builddependencies: don't add dependency on revision outside input set stable
Martin von Zweigbergk <martinvonz@google.com> [Wed, 25 Jul 2018 14:47:16 -0700] rev 3900
builddependencies: don't add dependency on revision outside input set This was already handled in the single-successor case, but had been missed in the multiple-successors case. Note that there seems to be a copy of builddependencies() in the topics extension. I don't use topics more than I have to, so I'll let someone else fix that code.
Wed, 25 Jul 2018 15:16:25 -0700 builddependencies: consider all divergent successors stable
Martin von Zweigbergk <martinvonz@google.com> [Wed, 25 Jul 2018 15:16:25 -0700] rev 3899
builddependencies: consider all divergent successors We were only considering one. In test-evolve-abort-conentdiv.t:165, the input revs were {5, 8} and dependency dict was {8: set([]), 5: set([10])}, which is a little weird (10 is not in the input set). It still worked because the callers used it (they seemed to only care if there were *any* dependencies). This patch fixes the issue by considering all successors. That means the dependency dict will be {8: set([]), 5: set([8, 10])} after this patch. The next patch will remove the 10 from that set.
Wed, 25 Jul 2018 14:00:49 -0700 tests: add test for issue5946 stable
Martin von Zweigbergk <martinvonz@google.com> [Wed, 25 Jul 2018 14:00:49 -0700] rev 3898
tests: add test for issue5946 The test case is a copy of the one for 5833. The only difference is that the merge parents are recorded in the opposite order (and that the test is truncated because it fails).
Fri, 25 May 2018 17:17:56 +0200 obslog: check filtered output with folded changesets
Boris Feld <boris.feld@octobus.net> [Fri, 25 May 2018 17:17:56 +0200] rev 3897
obslog: check filtered output with folded changesets
Fri, 25 May 2018 16:50:04 +0200 obslog: check filtered output with splitted changesets
Boris Feld <boris.feld@octobus.net> [Fri, 25 May 2018 16:50:04 +0200] rev 3896
obslog: check filtered output with splitted changesets
Fri, 25 May 2018 11:52:48 +0200 obslog: check filtered output with pruned changesets
Boris Feld <boris.feld@octobus.net> [Fri, 25 May 2018 11:52:48 +0200] rev 3895
obslog: check filtered output with pruned changesets
Tue, 22 May 2018 16:48:35 +0200 obslog: check filtered output with amended changesets
Boris Feld <boris.feld@octobus.net> [Tue, 22 May 2018 16:48:35 +0200] rev 3894
obslog: check filtered output with amended changesets
Fri, 25 May 2018 11:48:19 +0200 tests: add a content-divergent obshistory test
Boris Feld <boris.feld@octobus.net> [Fri, 25 May 2018 11:48:19 +0200] rev 3893
tests: add a content-divergent obshistory test
Tue, 22 May 2018 17:44:05 +0200 tests: extract the obshistory amend then fold test case into a separate file
Boris Feld <boris.feld@octobus.net> [Tue, 22 May 2018 17:44:05 +0200] rev 3892
tests: extract the obshistory amend then fold test case into a separate file
Tue, 22 May 2018 17:42:56 +0200 tests: extract the content-divergence test case into a separate file
Boris Feld <boris.feld@octobus.net> [Tue, 22 May 2018 17:42:56 +0200] rev 3891
tests: extract the content-divergence test case into a separate file
Tue, 22 May 2018 17:41:57 +0200 tests: extract the obshistory fold test case into a separate file
Boris Feld <boris.feld@octobus.net> [Tue, 22 May 2018 17:41:57 +0200] rev 3890
tests: extract the obshistory fold test case into a separate file
Tue, 22 May 2018 17:40:56 +0200 tests: extract the obshistory lots of split test case into a separate file
Boris Feld <boris.feld@octobus.net> [Tue, 22 May 2018 17:40:56 +0200] rev 3889
tests: extract the obshistory lots of split test case into a separate file
Tue, 22 May 2018 17:37:51 +0200 tests: extract the obshistory split test case into a separate file
Boris Feld <boris.feld@octobus.net> [Tue, 22 May 2018 17:37:51 +0200] rev 3888
tests: extract the obshistory split test case into a separate file
Tue, 22 May 2018 17:37:40 +0200 tests: extract the obshistory prune test case into a separate file
Boris Feld <boris.feld@octobus.net> [Tue, 22 May 2018 17:37:40 +0200] rev 3887
tests: extract the obshistory prune test case into a separate file
Tue, 22 May 2018 15:40:29 +0200 tests: extract the obshistory amend test case into a separate file
Boris Feld <boris.feld@octobus.net> [Tue, 22 May 2018 15:40:29 +0200] rev 3886
tests: extract the obshistory amend test case into a separate file
Tue, 22 May 2018 15:35:54 +0200 tests: extract obshistory setup in a separate file
Boris Feld <boris.feld@octobus.net> [Tue, 22 May 2018 15:35:54 +0200] rev 3885
tests: extract obshistory setup in a separate file We are gonna soon explode the obshistory test file into several, extract the setup to reuse it as much as possible.
Tue, 22 May 2018 12:07:24 +0200 obslog: add a new flag to filter out non-local nodes
Boris Feld <boris.feld@octobus.net> [Tue, 22 May 2018 12:07:24 +0200] rev 3884
obslog: add a new flag to filter out non-local nodes
Thu, 26 Jul 2018 18:28:44 +0200 compat: drop compatibility hack for mercurial <4.3
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 26 Jul 2018 18:28:44 +0200] rev 3883
compat: drop compatibility hack for mercurial <4.3 We no longer support version prior 4.3.
Sat, 21 Jul 2018 02:42:29 +0530 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 21 Jul 2018 02:42:29 +0530] rev 3882
compat: temporarily move copies fix to compat.py This patch moves a fixed version of copies._fullcopytracing() to compat.py as this was not fixed in core before release and also we need to do this anyway for the older versions of mercurial. This fix is that when base changeset is not ancestor of any of the merging commits, we don't throw an error. The phabricator differential which will fix this in core is https://phab.mercurial-scm.org/D3896. This fixes the traceback we get in previous changeset while relocating one of the content-divergent changeset.
Thu, 07 Jun 2018 18:18:30 +0530 evolve: continue conflicted relocation content-divergence
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 07 Jun 2018 18:18:30 +0530] rev 3881
evolve: continue conflicted relocation content-divergence This patch adds logic to continue an conflicted content-divergence resolution which was interrupted while relocating one of the divergent commits. The tests shows the there is some mishandling of copies internally which will be fixed in next patch.
Wed, 18 Jul 2018 18:17:16 +0800 topic: use self instead of repo in topicrepo methods stable
Anton Shestakov <av6@dwimlabs.net> [Wed, 18 Jul 2018 18:17:16 +0800] rev 3880
topic: use self instead of repo in topicrepo methods Referring to repo here was somehow preventing it from being garbage-collected (important in hgweb, where currently every request gets a new repo).
Sun, 08 Jul 2018 22:16:17 +0530 evolvecmd: introduce fn to be wrapped by extensions resolving content-div
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 08 Jul 2018 22:16:17 +0530] rev 3879
evolvecmd: introduce fn to be wrapped by extensions resolving content-div The function added will be used by extension by wrapping it and adding logic to merge data introduced by them. For example: topic extension can wrap this function and add logic to merge topic names.
Sun, 08 Jul 2018 21:18:33 +0530 evolvecmd: move remaining logic to merge commit desc to existing utility fn
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 08 Jul 2018 21:18:33 +0530] rev 3878
evolvecmd: move remaining logic to merge commit desc to existing utility fn This was a bit awful because we had a utility function and still we did some of merging outside of that fn. So let's move the remaining parts there.
Sun, 08 Jul 2018 22:52:33 +0530 amend: allow aborting an `amend --patch` by saving an empty file (issue5925)
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 08 Jul 2018 22:52:33 +0530] rev 3877
amend: allow aborting an `amend --patch` by saving an empty file (issue5925) This patch fixes issue5925 by allow aborting a `hg amend --patch` call by saving an empty patch file. This is similar to aborting of `hg amend` when commit message is empty. Test changes demonstrate the fix.
Sun, 08 Jul 2018 22:50:16 +0530 tests: add a test to demonstrate issue5925
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 08 Jul 2018 22:50:16 +0530] rev 3876
tests: add a test to demonstrate issue5925 The issue will be fixed in next patch.
Mon, 09 Jul 2018 01:18:40 +0200 test: fix possible output change from 4.7
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 09 Jul 2018 01:18:40 +0200] rev 3875
test: fix possible output change from 4.7 Change in debug timing can display these extra messages.
Fri, 06 Jul 2018 11:36:24 -0700 state: add the get() method that evolvecmd:1836 expects
Martin von Zweigbergk <martinvonz@google.com> [Fri, 06 Jul 2018 11:36:24 -0700] rev 3874
state: add the get() method that evolvecmd:1836 expects
Sun, 17 Jun 2018 03:56:54 +0200 rewing: prevent rewind in case of uncommitted changes
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 17 Jun 2018 03:56:54 +0200] rev 3873
rewing: prevent rewind in case of uncommitted changes rewind can update, which means merge and troubles. We might relax this limitation in the future.
Sun, 17 Jun 2018 03:46:46 +0200 rewind: default to rewinding the current stack
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 17 Jun 2018 03:46:46 +0200] rev 3872
rewind: default to rewinding the current stack
Sun, 17 Jun 2018 03:10:19 +0200 rewing: add the ability to rewind "from" revisions
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 17 Jun 2018 03:10:19 +0200] rev 3871
rewing: add the ability to rewind "from" revisions
Sun, 17 Jun 2018 03:29:34 +0200 evolve: exclude "identical" precursors from the precursors set
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 17 Jun 2018 03:29:34 +0200] rev 3870
evolve: exclude "identical" precursors from the precursors set I'm not sure it is the right thing to do, but it simply thing a lot for now. Otherwise, using 'precursors' to find rewind direction become too complex. This is going to give problematic result in case of prune. Since there are no other precursors to follow.
Sun, 17 Jun 2018 03:07:53 +0200 rewind: move revision selection into its own function
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 17 Jun 2018 03:07:53 +0200] rev 3869
rewind: move revision selection into its own function This will help making the logic more advanced.
Sun, 17 Jun 2018 02:32:29 +0200 rewind: automatically rewind entire stack
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 17 Jun 2018 02:32:29 +0200] rev 3868
rewind: automatically rewind entire stack We now rewind the full stack, avoiding creating orphans. A `--exact` flag is added to force rewinding only the explicitly specified changesets.
Sun, 17 Jun 2018 02:22:28 +0200 rewind: add a test about rewinding top of stack
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 17 Jun 2018 02:22:28 +0200] rev 3867
rewind: add a test about rewinding top of stack For now this rewind is creating an orphan. We add the test to check the behavior in that case.
Sun, 17 Jun 2018 02:03:03 +0200 rewind: use rewinded parent when creating multiple changesets
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 17 Jun 2018 02:03:03 +0200] rev 3866
rewind: use rewinded parent when creating multiple changesets Use use the rewinded parent instead of creating orphans based on identical, but obsolete, changesets.
Sun, 17 Jun 2018 00:22:31 +0200 rewind: add a test for rewinding a fold
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 17 Jun 2018 00:22:31 +0200] rev 3865
rewind: add a test for rewinding a fold The code already have basic support for case. However the result create orphan that will need to be improved. However, we keep this changeset simple.
Sun, 17 Jun 2018 01:36:30 +0200 rewind: add a test for rewinding a split
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 17 Jun 2018 01:36:30 +0200] rev 3864
rewind: add a test for rewinding a split There are no code change needed but it is worth testing on its own.
Sun, 17 Jun 2018 00:33:43 +0200 rewind: update the working copy if it gets obsoleted
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 17 Jun 2018 00:33:43 +0200] rev 3863
rewind: update the working copy if it gets obsoleted If the working copy parent is rewinded, follow the rewind.
Sun, 17 Jun 2018 01:04:20 +0200 rewind: add a message about obsolete changeset
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 17 Jun 2018 01:04:20 +0200] rev 3862
rewind: add a message about obsolete changeset Not the best output, but useful to have the data. We can improve that later.
Sun, 17 Jun 2018 00:15:18 +0200 rewind: obsolete latest successors unless instructed otherwise
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 17 Jun 2018 00:15:18 +0200] rev 3861
rewind: obsolete latest successors unless instructed otherwise To prevent the creations of divergence, we automatically mark the successors set of the rewinded changeset as obsoleted by the rewind result. A new flag `--as-divergence` is added to disable this behavior.
Sat, 16 Jun 2018 23:32:22 +0200 rewind: test rewinding an amended changesets
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 16 Jun 2018 23:32:22 +0200] rev 3860
rewind: test rewinding an amended changesets We are now able to rewind a simple amended changeset. For now, its current successors has not been obsoleted and we created divergence.
Sun, 17 Jun 2018 00:57:09 +0200 rewind: add a message about the rewinded changesets
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 17 Jun 2018 00:57:09 +0200] rev 3859
rewind: add a message about the rewinded changesets This helps to understand what happened.
Sat, 16 Jun 2018 23:11:52 +0200 rewind: add a proto version of the command
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 16 Jun 2018 23:11:52 +0200] rev 3858
rewind: add a proto version of the command This first version focus on rewinding a single revision without care for the consequence.
Fri, 29 Jun 2018 16:51:56 +0200 stablesort: make sure heads are processed in sorted order
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 29 Jun 2018 16:51:56 +0200] rev 3857
stablesort: make sure heads are processed in sorted order changeset 72621094505f will fix some ordering issue in the `heads` revset so we stabilise the output in advance.
Tue, 19 Jun 2018 23:21:54 +0530 evolve: move the bookmarks also when updating to successor (issue5923)
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 19 Jun 2018 23:21:54 +0530] rev 3856
evolve: move the bookmarks also when updating to successor (issue5923) When we are on an obsolete node and does `hg evolve`, it updates to it's sucessor, however it does not move the bookmark to the successor. This patch adds logic to make sure we move the bookmark too. Test change demonstrates the fix.
Tue, 19 Jun 2018 23:21:44 +0530 tests: add test to demonstrate issue5923
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 19 Jun 2018 23:21:44 +0530] rev 3855
tests: add test to demonstrate issue5923 This will be fixed in upcoming patch.
Thu, 28 Jun 2018 17:26:16 +0200 changelog: add an entry about the new `evolve.interrupted` section
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 28 Jun 2018 17:26:16 +0200] rev 3854
changelog: add an entry about the new `evolve.interrupted` section
Fri, 15 Jun 2018 00:50:17 +0530 evolve: make one missed error to align other error messages
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 15 Jun 2018 00:50:17 +0530] rev 3853
evolve: make one missed error to align other error messages Previous patches missed this error to change it to the new format. Let's align this with all other messages raised by `hg evolve` command.
Fri, 15 Jun 2018 00:16:29 +0530 evolve: raise error.InterventionRequired instead of Abort when conflicts
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 15 Jun 2018 00:16:29 +0530] rev 3852
evolve: raise error.InterventionRequired instead of Abort when conflicts error.InterventionRequired is a better error to raise in such cases. Thanks to marmoute for noticing this.
Thu, 14 Jun 2018 02:58:30 +0200 changelog: add a changelog entry about divergence resolution
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 14 Jun 2018 02:58:30 +0200] rev 3851
changelog: add a changelog entry about divergence resolution We made a lots of progress there.
Thu, 14 Jun 2018 01:39:33 +0530 evolve: create resolved cset on successors of current parents
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 14 Jun 2018 01:39:33 +0530] rev 3850
evolve: create resolved cset on successors of current parents While resolving content-divergence, sometimes, the parent can be obsolete and have a successor. We should consider the successors of the parents instead of obsolete parents as that will do something like orphan+content-divergence resolution both at the same time which is powerful and results in a single stack while resolving content-divergence of stacks. The test changes demonstrates that we can now successfully evolve a content divergent stack.
Thu, 14 Jun 2018 01:39:11 +0530 tests: fix a test case to not create conflicts
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 14 Jun 2018 01:39:11 +0530] rev 3849
tests: fix a test case to not create conflicts This is the test case where we are testing about divergence resolution of stack of patches. If the stack is as follows: C1 C2 | | B1 B2 | | A1 A2 \/ base And A1-A2, B1-B2 and C1-C2 are content-divergent, and merging A1-A2 results in conflicts. Now if you resolve conflicts and continue resoling B1-B2, the conflicts of A1-A2 will still be there. We need somehow to understand the work we has done and not create conflicts again. To test the evolution functionality for now, we make sure conflicts does not occur.
Thu, 14 Jun 2018 01:06:12 +0530 evolve: introduce a resolutionparent variable and store it in evolvestate
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 14 Jun 2018 01:06:12 +0530] rev 3848
evolve: introduce a resolutionparent variable and store it in evolvestate This patch introduces a resolutionparent variable which will be the parent of final changeset after resolving content-divergent changesets. Till now, the parent is always the parent of one of the divergent node, but now in upcoming cases, it can be a successor of both the parents of divergent nodes.
Wed, 13 Jun 2018 18:08:57 +0530 evolve: introduce a dirstatedance() fn to fix dirstate after parent change
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 13 Jun 2018 18:08:57 +0530] rev 3847
evolve: introduce a dirstatedance() fn to fix dirstate after parent change This patch introduces a dirstatedance() function which will be used after fixing the dirstate when we change parents using repo.dirstate.setparents(). Look at docs added for more details.
Wed, 13 Jun 2018 17:15:10 +0530 evolve: create a new commit instead of amending one of the divergents
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 13 Jun 2018 17:15:10 +0530] rev 3846
evolve: create a new commit instead of amending one of the divergents This patch changes the behavior of evolve command while resolving content-divergence to create a new commit instead of amending one of the divergent ones. In past, I have made this change, backed out this change and now today again I am doing this change, so let's dive in some history. Using cmdrewrite.amend() was never a good option as that requires hack to delete the evolvestate and also gives us less control over things. We can't make the commit on top of different parents as that of content-divergent ones. Due to all these, I first made this change to create a new commit instead of amending one. But, after few days, there was flakiness observed in the tests and turned out that we need to do some dirstate dance as repo.dirstate.setparents() does not always fix the dirstate. That flakiness was a blocker for progress at that time and we decided to switch to amend back so that we can have things working with some hacks and we can later fix the implementation part. Now, yesterday while tackling resolving content-divergence of a stack which is as follows: C1 C2 | | B1 B2 | | A1 A2 \/ base where, A1-A2, B1-B2, C1-C2 are content-divergent with each other. Now we can resolve A1-A2 very well because they have the same parent and let's say that resolution leads to A3. Now, we want to resolve B1-B2 and make the new resolution commit on top of A3 so that we can end up something like: C3 | B3 | A3 | base however, amending one of the divergent changesets, it's not possible to create a commit on a different parent like A3 here without some relocation. We should prevent relocation as that may leads to some conflicts and should change the parent before committing. So, looking ahead, we can't move with using amend as still using that we will need some relocation hacks making code ugly and prone to bad behaviors, bugs. Let's change back to creating a new commit so that we can move forward in a good way. About repo.dirstate.setparents() not setting the dirstate, I have researched yesterday night about how we can do that and found out that we can use cmdrewrite._uncommitdirstate() here. Expect upcoming patches to improve the documentation of that function. There are lot of test changes because of change in hash but there is no behavior change. The only behavior change is in test-evolve-abort-contentdiv.t which is nice because creating a new commit helps us in stripping that while aborting. We have a lot of testing of content-divergence and no behavior change gives enough confidence for making this change. I reviewed the patch carefully to make sure there is no behavior change and I suggest reviewer to do the same.
Tue, 12 Jun 2018 23:20:54 +0530 evolve: always order the revs to be evolved
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 12 Jun 2018 23:20:54 +0530] rev 3845
evolve: always order the revs to be evolved The current code only order the revs if we are resolving orphans and not in other case. The ordering is important when we pass --all and tackle multiple occurence of the same instability. Let's order the revs for each instability. There are enough test coverage of phase-divergence and content-divergence that I feel confident doing it because none of the test changed. The change in test-evolve-content-divergent.t demonstrates the indeed ordering helped.
Tue, 12 Jun 2018 21:13:02 +0530 tests: add test of resolution of content-divergent stacks
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 12 Jun 2018 21:13:02 +0530] rev 3844
tests: add test of resolution of content-divergent stacks This patch adds a test of resolution of content-divergence stacks where a series of changesets get mutated as two different series resulting in whole content-divergent stacks. As the tests shows, we are not processing the changesets in right order which needs to be fixed first.
Tue, 12 Jun 2018 19:00:12 +0530 evolve: improve error messages when conflicts occur
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 12 Jun 2018 19:00:12 +0530] rev 3843
evolve: improve error messages when conflicts occur This patch improves the error messages when conflicts occur. First, we drop the line 'evolution failed', that is not the best line we can show and evolution didn't failed, it's just interrupted by the conflicts and when user will run `hg evolve --continue`, things will be fine. I still remember when I first saw 'evolution failed', I got a bit scare as am I in a recoverable position or not. So let's drop this scary line. Second, we replace the error messages to say `resolve conflicts and see help-topic`. The help topic was added recently and documents all the three flags very well. Addition of tests also showed that all the three flags works fine with all the three instability type. So we should advertise them more. Third, we now raise the error with our error message rather than raising MergeFailure and having evolution related text in hint or stderr above. This increase the focus on the error message we want to show. After this patch, I think error messages by evolve in case of conflicts will be same in every case.
Tue, 12 Jun 2018 04:01:19 +0530 evolve: point to `hg help evolve.interrupted` while resolving content-div
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 12 Jun 2018 04:01:19 +0530] rev 3842
evolve: point to `hg help evolve.interrupted` while resolving content-div Recent test additions shows that --abort and --stop works well while resolving content-divergence and we should advertise them. This patch does so by pointing to evolve.interrupted help topic.
Tue, 12 Jun 2018 03:29:13 +0530 tests: add test about aborting content-divergence when multiple parents
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 12 Jun 2018 03:29:13 +0530] rev 3841
tests: add test about aborting content-divergence when multiple parents This patch adds tests for --abort flag of hg evolve command when we are resolving content-divergence which are on different parents and parent of one of them is the gca of both of them. The tests shows that we are doing good and we should advertise the flag during conflicts.
Wed, 13 Jun 2018 15:47:19 +0530 CHANGELOG: add an entry about the --update flag
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 13 Jun 2018 15:47:19 +0530] rev 3840
CHANGELOG: add an entry about the --update flag Since --update is still the default, we make the entry about --no-update.
Wed, 06 Jun 2018 04:29:05 +0530 evolve: show unfinished information in `hg status -v` (issue5886)
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 06 Jun 2018 04:29:05 +0530] rev 3839
evolve: show unfinished information in `hg status -v` (issue5886) `hg status -v` shows information about unfinished states or `hg status` shows it when `commands.status.verbose=True` is set. Before this patch, information about interrupted evolve does not show up because evolve does not resgiters in cmdutil.STATES. This patch make sure we register evolve related information there. There has been an idea to unify cmdutil.unfinishedstates and cmdutil.STATES which needs some work and the resulting state does looks a bit complicated. So till the time we unify them, let's fix this bug by registering in cmdutil.STATES.
Tue, 12 Jun 2018 13:58:14 +0200 style: drop a (commented) debug print
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 12 Jun 2018 13:58:14 +0200] rev 3838
style: drop a (commented) debug print Left-over from 4dcf87849f9d.
Sun, 10 Jun 2018 20:58:55 +0530 tests: update tests output with changes in d0abd7949ea3 in core hg
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 10 Jun 2018 20:58:55 +0530] rev 3837
tests: update tests output with changes in d0abd7949ea3 in core hg CORE-TEST-OUTPUT-UPDATE: d0abd7949ea3 CORE-TEST-OUTPUT-UPDATE: 1e9c357d3ddf
Tue, 12 Jun 2018 10:40:57 +0200 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 12 Jun 2018 10:40:57 +0200] rev 3836
branching: merge with stable Merging with the new 8.0.1 release.
Mon, 11 Jun 2018 23:31:44 +0530 Added tag 8.0.1 for changeset 0887c30255a1 stable
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 11 Jun 2018 23:31:44 +0530] rev 3835
Added tag 8.0.1 for changeset 0887c30255a1
Mon, 11 Jun 2018 23:30:24 +0530 packaging: prepare for 8.0.1 release stable 8.0.1
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 11 Jun 2018 23:30:24 +0530] rev 3834
packaging: prepare for 8.0.1 release
Mon, 11 Jun 2018 20:24:45 +0200 changelog: add a couple of missing entry stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 11 Jun 2018 20:24:45 +0200] rev 3833
changelog: add a couple of missing entry
Mon, 11 Jun 2018 20:17:56 +0530 evolve: strip the extra obsmarkers if any on `hg evolve --abort`
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 11 Jun 2018 20:17:56 +0530] rev 3832
evolve: strip the extra obsmarkers if any on `hg evolve --abort` Previous patches started storing some obsmarkers which needs to stripped during `evolve --abort` which can't be stripped by stripping the new evolved changesets because they point to a node which existed before the evolution was performed. This patch adds logic to strip those obsmarkers by finding their indices in the obsstore and then stripping them.
Mon, 11 Jun 2018 20:13:36 +0530 evolve: store the obsmarkers to be deleted in evolvestate
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 11 Jun 2018 20:13:36 +0530] rev 3831
evolve: store the obsmarkers to be deleted in evolvestate Sometimes, we don't create a new node and obsolete one of the old node in favour of an existing node. When user calls, `hg evolve --abort`, we need to strip that obsmarker to go back in the same old state. The obsmarker created for new node are stripped when the new nodes are stripped. This patch start storing such obsmarkers in the evolvestate so that we can delete them later if required. Right now we just store successsor and predecessor information, we might need a better obsmarker serialization techinque in future to make it more robust.
Mon, 11 Jun 2018 15:52:11 +0530 evolve: store obsmarkers to be deleted in evolvestate
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 11 Jun 2018 15:52:11 +0530] rev 3830
evolve: store obsmarkers to be deleted in evolvestate There are operations which don't create a new node rather they just obsolete one of the unstable node in favour of existing one. In such cases if a further resolution leads to conflicts and user calls `evolve --abort` or `evolve --stop`, we might need to delete that obsmarker. So let's store such obsmarkers in the evolvestate.
Mon, 11 Jun 2018 15:38:43 +0530 evolve: factor out logic to merge branches in separate function
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 11 Jun 2018 15:38:43 +0530] rev 3829
evolve: factor out logic to merge branches in separate function This patch moves the logic to merge branches while resolving content-divergence to a separate function. This makes code clear and better to understand.
Mon, 11 Jun 2018 01:00:57 +0530 tests: add more test of --stop while resolving content-divergence
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 11 Jun 2018 01:00:57 +0530] rev 3828
tests: add more test of --stop while resolving content-divergence This tests the --stop flag when conflicts occur while relocating one of the divergent changesets.
Mon, 11 Jun 2018 00:47:28 +0530 evolve: strip the relocation commit on `hg evolve --stop`
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 11 Jun 2018 00:47:28 +0530] rev 3827
evolve: strip the relocation commit on `hg evolve --stop` While resolving content-divergence on multiple parents, we relocate one of the commit on the parent of another one and then merge the divergent changesets. Merging can leads to conflicts, and if user does `hg evolve --stop`, we need to strip that relocated changeset too! This patch does that. Test changes demonstrates the fix.
Mon, 11 Jun 2018 00:43:39 +0530 evolve: declare updated and pctx variables in stopevolve()
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 11 Jun 2018 00:43:39 +0530] rev 3826
evolve: declare updated and pctx variables in stopevolve() They will used in next patch.
Sun, 10 Jun 2018 22:52:11 +0530 evolve: store the old other divergent node after relocation in evolvestate
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 10 Jun 2018 22:52:11 +0530] rev 3825
evolve: store the old other divergent node after relocation in evolvestate When the content-divergent changes are on different parents and we relocate of the node to the parent of another one, we get a new other-divergent node. We still need to store the older other-divergent in evolvestate so that we can use that information.
Sun, 10 Jun 2018 22:42:57 +0530 evolve: factor out logic for --stop flag in separate function
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 10 Jun 2018 22:42:57 +0530] rev 3824
evolve: factor out logic for --stop flag in separate function This will make code clean
Sun, 10 Jun 2018 22:38:08 +0530 tests: add test for --stop flag when resolving multiparents content-div
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 10 Jun 2018 22:38:08 +0530] rev 3823
tests: add test for --stop flag when resolving multiparents content-div This patch adds a test for --stop flag when we are in an interrupted content-divergent resolution which have multiple parents. Conflicts happen we merge the divergent changesets after relocation. The test shows that we need to strip the relocated changeset.
Sun, 10 Jun 2018 20:35:48 +0530 evolve: move logic to continue interrupted content-div resolution to new fn
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 10 Jun 2018 20:35:48 +0530] rev 3822
evolve: move logic to continue interrupted content-div resolution to new fn Each of the other type has defined their own function to continue/complete the interrupted resolution. We take out the logic for content-div resolution too in a separate function to make the top level function looks clean.
Mon, 11 Jun 2018 01:12:12 +0530 evolve: rename help topic evolve.interrupted-evolve to evolve.interrupted
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 11 Jun 2018 01:12:12 +0530] rev 3821
evolve: rename help topic evolve.interrupted-evolve to evolve.interrupted `evolve.interrupted-evolve` has the word evolve twice. Now that this help topic is a part of evolve command, evolve.interrupted will mean the interrupted evolve command only.
Sat, 09 Jun 2018 00:15:27 +0530 packaging: update tested-with statements in evolve and topic stable
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 09 Jun 2018 00:15:27 +0530] rev 3820
packaging: update tested-with statements in evolve and topic
Sat, 09 Jun 2018 00:12:08 +0530 CHANGELOG: mention about 4.6.1 compatibility stable
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 09 Jun 2018 00:12:08 +0530] rev 3819
CHANGELOG: mention about 4.6.1 compatibility
Fri, 08 Jun 2018 22:52:53 +0530 test-compat: merge mercurial-4.4 into mercurial-4.3 mercurial-4.3
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 08 Jun 2018 22:52:53 +0530] rev 3818
test-compat: merge mercurial-4.4 into mercurial-4.3
Fri, 08 Jun 2018 22:52:52 +0530 test-compat: merge mercurial-4.5 into mercurial-4.4 mercurial-4.4
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 08 Jun 2018 22:52:52 +0530] rev 3817
test-compat: merge mercurial-4.5 into mercurial-4.4
Fri, 08 Jun 2018 22:52:51 +0530 test-compat: merge stable into mercurial-4.5 mercurial-4.5
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 08 Jun 2018 22:52:51 +0530] rev 3816
test-compat: merge stable into mercurial-4.5
Tue, 22 May 2018 23:51:57 +0530 utility: use ui.interactive() instead of checking config value stable
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 22 May 2018 23:51:57 +0530] rev 3815
utility: use ui.interactive() instead of checking config value Before this patch, the rev selection prompt which pops up in case of ambiguity to ask user to select a rev used to check the config value of ui.interactive which can is by default set to None. We should use ui.interactive() instead which is more smart in such cases. Thanks to martinvonz for suggesting this.
Fri, 08 Jun 2018 19:48:53 +0530 CHANGELOG: add couple of entries about things fixed stable
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 08 Jun 2018 19:48:53 +0530] rev 3814
CHANGELOG: add couple of entries about things fixed We are preparing for a release!
Fri, 08 Jun 2018 17:36:28 +0530 next-prev: always respect the --merge flag stable
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 08 Jun 2018 17:36:28 +0530] rev 3813
next-prev: always respect the --merge flag An earlier bug fix series which started respecting commands.update.check introduced a bug in which --merge was not respected sometimes. This patch fixes that behavior by passing updatecheck as 'none' to hg.updatetotally() if --merge is passed which is similar to what `hg update` does.
Fri, 08 Jun 2018 18:32:48 +0530 next-prev: add tests showing --merge not respected in some cases stable
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 08 Jun 2018 18:32:48 +0530] rev 3812
next-prev: add tests showing --merge not respected in some cases This patch adds tests which show that --merge is not respected when you set commands.update.check to any value. This is a bug I wrote few days ago and will fix it in next changeset. I like this process of writing bugs and fixing them.
Thu, 07 Jun 2018 22:59:39 +0530 evolve: store the evolvestate if relocation results in conflicts
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 07 Jun 2018 22:59:39 +0530] rev 3811
evolve: store the evolvestate if relocation results in conflicts We missed storing the evolvestate on disk when relocation lead to conflicts. We need to store it to grab information to continue or abort or stop the evolve.
Thu, 07 Jun 2018 22:45:54 +0530 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 07 Jun 2018 22:45:54 +0530] rev 3810
tests: add more test of resolution of content-divergent changesets This patch adds test of resolution of content-divergent changesets when relocation is required and it leads to conflicts. The test shows that we are not doing the right thing. This will be fixed in upcoming patches.
Thu, 07 Jun 2018 18:18:10 +0530 evolvestate: store info about relocation while resolving content-divergence
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 07 Jun 2018 18:18:10 +0530] rev 3809
evolvestate: store info about relocation while resolving content-divergence While resolving content-divergence when they are on different parents, we relocate one of the node to parent of another one and this can lead to conflicts sometimes. So we need to store information about that state in evolvestate so that we can use that when user does `hg evolve --continue` or `--stop` or `--abort`. Now that we make sure, we store the new other node in evolvestate, we fix the behavior of handling the relocated commit and merge the right changesets.
Thu, 07 Jun 2018 18:13:54 +0530 evolve: factor out logic to merge content divergent csets in separate fn
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 07 Jun 2018 18:13:54 +0530] rev 3808
evolve: factor out logic to merge content divergent csets in separate fn This will help us in reusing the logic if we need to while doing evolve --continue.
Thu, 07 Jun 2018 20:27:03 +0530 evolve: commit the transaction if conflicts occur while merging content-div
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 07 Jun 2018 20:27:03 +0530] rev 3807
evolve: commit the transaction if conflicts occur while merging content-div Yes, let's commit the transaction in case conflicts occur. Yes, this is what unshelve does and this is one of the reasons we don't like unshelve. Previous patches added support for resolving content-divergence when they are on different parents with parent of one being the gca. In such cases, we relocate one of the divergent commit to the parent of another one. All the relocation stuff and merging divergent changeset stuff happens in a single transaction, so if there are conflicts while merging, we abort and the transaction rollsback and our relocated commit is not applied after abort. We don't want to process the relocation because that can lead to conflicts and we will have dirty wdir because of resolving conflicts. So, we commit the transaction when merging results in conflicts to make sure if relocation happened, we commit that. This fixes the absence of relocation commit found in previous patch and uncover a new bug about handling of relocated commit. Upcoming patch will fix it.
Thu, 07 Jun 2018 15:54:32 +0530 tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 07 Jun 2018 15:54:32 +0530] rev 3806
tests: add tests for resolving content-divergence when different parents This patch adds more tests for cases when we try to resolve content-divergence when they are on different parents. The last test shows the we are somehow missing the relocated commit in interrupted transaction. This will be fixed in next patch.
Fri, 01 Jun 2018 19:52:06 +0530 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 01 Jun 2018 19:52:06 +0530] rev 3805
evolve: implement resolution of content-divergence when on differet parents This patch implements the basic version of resolution of content-divergence changesets when they are on different parents but one of the parent is gca of both the different parents. The functionality first relocates the divergent changeset which was left behind and then resolves the content-divergence like it resolves in normal cases. This is a very basic implementation because it still does not work on interrupted evolution. Test changes in this patch shows the basic functionality working. The output of dry-run is also required to be tweaked in such cased. Upcoming patches will add more tests and will improve the implementation to work during conflicts too.
Fri, 01 Jun 2018 19:57:19 +0530 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 01 Jun 2018 19:57:19 +0530] rev 3804
tests: add tests for resolving content-divergence with parent change This patch adds a new test file test-evolve-content-divergence.t which tests the resolution of content divergence when the divergent changesets does not have the same parents.
Wed, 06 Jun 2018 03:49:17 +0530 CHANGELOG: add an entry about fixing issue5877
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 06 Jun 2018 03:49:17 +0530] rev 3803
CHANGELOG: add an entry about fixing issue5877
Wed, 06 Jun 2018 03:26:47 +0530 evolve: pop up editor if conflicts occur while merging commit messages
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 06 Jun 2018 03:26:47 +0530] rev 3802
evolve: pop up editor if conflicts occur while merging commit messages Last patch added support for merging commit messages while resolving content divergence. In case of conflicts we fallback to one of the divergent commit messages. After this patch, we will pop up an editor where user has to resolve the conflicts in the commit messages and then continue. Tests are added for this. We need to fix handling in test-sharing.t to use HGEDITOR to fix conflicts and pass the new commit message. Future improvement can be that we should respect HGMERGE while merging commit descriptions too.
Mon, 04 Jun 2018 01:28:02 +0530 evolve: merge commit messages while resolving content-divergence (issue5877)
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 04 Jun 2018 01:28:02 +0530] rev 3801
evolve: merge commit messages while resolving content-divergence (issue5877) While resolving content-divergence, there can be divergence in commit messages too which should be resolved. This patch uses the hg's internal merge API's to merge commit messages of divergent changesets with predecessor as the base. In case of conflicts, we fallback to divergent's commit message which should be changed in future. We should pop up the editor with the commit message and the conflict markers and let user fix that. Tests are added for the functionality added.
Wed, 06 Jun 2018 01:19:36 +0530 evolve: move if-else block under the right block
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 06 Jun 2018 01:19:36 +0530] rev 3800
evolve: move if-else block under the right block the index related if-else should be only executed when all three base, divergent and other have different branch names. I coded this last night and mistakenly mis-indented it. Caught when I was adding more tests.
Tue, 05 Jun 2018 22:02:24 +0530 tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 05 Jun 2018 22:02:24 +0530] rev 3799
tests: make sure we don't result in commit messages conflict Upcoming patches will introduce functionality of merging commit messages while resolving content divergence which can lead to conflicts. We don't want to test the conflicts scenario here, so let's make sure there are no conflicts of commit messages in this test.
Tue, 05 Jun 2018 21:02:09 +0530 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 05 Jun 2018 21:02:09 +0530] rev 3798
tests: don't use mkcommit shell function in test-divergent.t Upcoming series will start merging commit descriptions while resolving content-divergence. This tests are here to test the basics of content-divegrence resolution and we should not be testing much of commit description merge here. Replacing mkcommit function with normal hg calls will help us decide on the commit messages ourselves and prevent conflicts while merging commit messages.
Wed, 06 Jun 2018 14:35:36 +0200 evolve: remove duplicated documentation
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 06 Jun 2018 14:35:36 +0200] rev 3797
evolve: remove duplicated documentation File saving failure…
Wed, 06 Jun 2018 04:09:49 +0530 evolve: show `hg help evolve.interrupted-evolve` in error when conflicts
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 06 Jun 2018 04:09:49 +0530] rev 3796
evolve: show `hg help evolve.interrupted-evolve` in error when conflicts The help list various flags which you can use during interrupted evolve resolution and description about what they do. This will be very helpful for user on how to continue an interrupted evolve.
Wed, 23 May 2018 01:11:59 +0530 evolve: add a help topic `Interrupted-Evolve`
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 23 May 2018 01:11:59 +0530] rev 3795
evolve: add a help topic `Interrupted-Evolve` This help topic contains description on how the various flags work during interrupted evolve. This help topic will be included in error message during interrupted evolve in next patch.
Tue, 05 Jun 2018 03:37:15 +0200 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 05 Jun 2018 03:37:15 +0200] rev 3794
branching: merge with stable
Tue, 05 Jun 2018 03:36:40 +0200 changelog: fix version number error stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 05 Jun 2018 03:36:40 +0200] rev 3793
changelog: fix version number error
Thu, 24 May 2018 02:12:14 +0530 evolve: return the new node formed only as the replacement
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 24 May 2018 02:12:14 +0530] rev 3792
evolve: return the new node formed only as the replacement sometimes, the the other content divergent changeset is obsoleted in favour of the local divergent changeset in which case we should not store that as a replacement because `hg evolve --abort` will strip that changeset. Let's make sure we return the newnode only if formed. The test results shows that we are still not 100% accurate as we need to strip an obsmarker.
Thu, 24 May 2018 17:04:20 +0530 tests: add more test of --abort flag for content-divergence resolution
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 24 May 2018 17:04:20 +0530] rev 3791
tests: add more test of --abort flag for content-divergence resolution This patch adds test when we resolve multiple content-divergence changesets at once and resolution fo first content-divergence does not form new commits, resolution of second one leads to conflicts. As the output shows, we are wrongly stripping a changeset here, which should be fixed in next patch.
Mon, 04 Jun 2018 04:03:02 +0530 evolve: prompt user for branch selection while resolving content-divergence
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 04 Jun 2018 04:03:02 +0530] rev 3790
evolve: prompt user for branch selection while resolving content-divergence When resolving content-divergence, there can be case when both the content-divergent changesets are on different named branches. In that case, we are not sure which branch should the resolution commit should be on. This patch adds logic to prompt user to choose the branch which the resolution commit should be on and then creates the new resolution commit on that branch. This also adds a new test file which have tests for the branch selection feature we have added.
Tue, 05 Jun 2018 03:51:01 +0530 evolve: pass the base revision in _completecontentdivergent()
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 05 Jun 2018 03:51:01 +0530] rev 3789
evolve: pass the base revision in _completecontentdivergent() We need the base revision to merge commit messages, branches and more stuff. Let's make sure we have that by passing into the function which completes the divergence resolution.
Tue, 05 Jun 2018 03:49:49 +0530 evolve: store the base of content-divergents in evolvestate
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 05 Jun 2018 03:49:49 +0530] rev 3788
evolve: store the base of content-divergents in evolvestate We need the base changeset for merging commit messages, branches. Let's store it in evolvestate.
Tue, 05 Jun 2018 00:53:21 +0530 evolve: use cmdrewrite.amend() instead of creating a new commit
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 05 Jun 2018 00:53:21 +0530] rev 3787
evolve: use cmdrewrite.amend() instead of creating a new commit This patch backs out changeset 88601e1cd5d8. We replaced cmdrewrite.amend() with creating new commit because using amend(), a high level function was not good and creating a new commit gave us more control over things. **HOWEVER** to get more control, you need to get arrange all the pieces together perfectly. Creating a new commit, the existing logic has some bugs around dirstate handling, the `repo.dirstate.setparents()` call especially. Sometimes this fixes the dirstate correctly sometimes not. As Pierre-Yves David said, "Having a "clumsy" implementation with the right behavior is usually a good first step. So having an amend based implementation seems like a good first step.", let's take a step back and get back using amend so that we can have a correct basic implementation which is bug free.
Sun, 03 Jun 2018 01:59:41 +0530 corecompat: update the tests output to show phase update summary
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 03 Jun 2018 01:59:41 +0530] rev 3786
corecompat: update the tests output to show phase update summary eb9835014d20 in core added support to transactions to show a summary on the phase changed during that transaction. Due to this, couple of tests output needs to be updated. This patch does that. While realeasing evolve, this patch should be backed out on branches where hg<=4.6. CORE-TEST-OUTPUT-UPDATE: eb9835014d20
Sun, 03 Jun 2018 03:24:43 +0530 CHANGELOG: add an entry about issue 5808 being fixed stable
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 03 Jun 2018 03:24:43 +0530] rev 3785
CHANGELOG: add an entry about issue 5808 being fixed
Sun, 03 Jun 2018 03:21:25 +0530 next-prev: replace the error hint to mention about `--merge` flag stable
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 03 Jun 2018 03:21:25 +0530] rev 3784
next-prev: replace the error hint to mention about `--merge` flag
Sun, 03 Jun 2018 03:13:47 +0530 tests: add tests for conflicts while respecting commands.update.check stable
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 03 Jun 2018 03:13:47 +0530] rev 3783
tests: add tests for conflicts while respecting commands.update.check This patch adds tests to check that we don't run into conflicts while respecting commands.update.check. The error message now does not show the hint about --merge option which we should fix.
Sun, 03 Jun 2018 02:37:13 +0530 next: respect `commands.update.check` config option in `hg next` (issue5808) stable
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 03 Jun 2018 02:37:13 +0530] rev 3782
next: respect `commands.update.check` config option in `hg next` (issue5808) `commands.update.check` config option determines what level of checking should be done when we update to another revision. When we set this config option to `noconflict`, it updates your working directory to a specified revision only when there will be no conflicts which is a very nice behavior. This patch adds logic to respect the config option so that we can have that nice behavior with `hg next` too. It turns out, we just needed to use hg.updatetotally() and add some cases to check config option. Right now, we only respect the config if value is set to `noconflict`. Otherwise we fallback to the default behavior. This is a part of fixing issue5808. Test changes demonstrate the fix.
Sun, 03 Jun 2018 02:36:24 +0530 prev: respect `commands.update.check` config option in `hg prev` (issue5808) stable
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 03 Jun 2018 02:36:24 +0530] rev 3781
prev: respect `commands.update.check` config option in `hg prev` (issue5808) `commands.update.check` config option determines what level of checking should be done when we update to another revision. When we set this config option to `noconflict`, it updates your working directory to a specified revision only when there will be no conflicts which is a very nice behavior. This patch adds logic to respect the config option so that we can have that nice behavior with `hg prev` too. It turns out, we just needed to use hg.updatetotally() and add some cases to check config option. Right now, we only respect the config if value is set to `noconflict`. Otherwise we fallback to the default behavior. This is a part of fixing issue5808. Test changes demonstrate the fix.
Sun, 03 Jun 2018 02:50:55 +0530 tests: add test demonstrating issue5808 stable
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 03 Jun 2018 02:50:55 +0530] rev 3780
tests: add test demonstrating issue5808 This patch adds test showing that `next` and `prev` does not respect the `commands.update.check` config option, particularly when set to `noconflict`.
Sun, 03 Jun 2018 02:26:19 +0530 next: bail out early in `hg next --evolve` if dirty wdir stable
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 03 Jun 2018 02:26:19 +0530] rev 3779
next: bail out early in `hg next --evolve` if dirty wdir This patch adds logic to bail out early when --evolve is passed with next command and the working directory is dirty. This will help us in preventing the message saying `do you want --merge` which is useless and misleading when `--evolve` is passed.
Sun, 03 Jun 2018 02:24:28 +0530 tests: add test of `hg next --evolve` with dirty working directory stable
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 03 Jun 2018 02:24:28 +0530] rev 3778
tests: add test of `hg next --evolve` with dirty working directory I was testing some output change to `hg next --evolve` in dirty working directory and found that we don't have any test for that.
Sun, 03 Jun 2018 03:35:22 +0530 CHANGELOG: add an entry about fixing issue5897 stable
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 03 Jun 2018 03:35:22 +0530] rev 3777
CHANGELOG: add an entry about fixing issue5897
Sun, 27 May 2018 02:32:58 +0530 evolve: fix `hg abort` when hg next --evolve leads to conflicts (issue5897) stable
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 27 May 2018 02:32:58 +0530] rev 3776
evolve: fix `hg abort` when hg next --evolve leads to conflicts (issue5897) Before this patch, if you do `hg next --evolve` and end up having conflicts and then you try `hg abort`, it will throw a KeyError. This patch fixes that.
Wed, 30 May 2018 00:34:35 +0530 tests: add a test demonstrating issue5897 stable
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 30 May 2018 00:34:35 +0530] rev 3775
tests: add a test demonstrating issue5897 When conflicts are caused due to `hg next --evolve`, `hg evolve --abort` breaks! This patch adds test to demonstrate that. This will be fixed in next patch.
Thu, 24 May 2018 17:50:02 +0530 evolve: add an `--update` flag to `hg evolve` command
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 24 May 2018 17:50:02 +0530] rev 3774
evolve: add an `--update` flag to `hg evolve` command This patch adds a new `--update` flag which defaults to True. The update flag updates the working directory to the head of evolved revisions after `hg evolve` command. This flag can be used to not update your working directory after `hg evolve` which has been one of the biggest feature request from fig team at Google. To not update your working directory, the user can do `hg evolve --no-update`. If the working directory get obsoleted by evolve command, it will update to the successor. This patch also adds some basic tests for the flag introduced.
Thu, 24 May 2018 02:02:11 +0530 tests: add tests for testing --abort while content-divergence resolution
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 24 May 2018 02:02:11 +0530] rev 3773
tests: add tests for testing --abort while content-divergence resolution This patch adds a new test file with a very basic test of `--abort` on an interrupted evolve which was resolving content-divergence. Upcoming patches will add more rigourous tests.
Thu, 24 May 2018 00:58:50 +0530 evolve: fix storage of replacements and temprevs node in evolvestate
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 24 May 2018 00:58:50 +0530] rev 3772
evolve: fix storage of replacements and temprevs node in evolvestate The _completephaseivergent() was not respecting rules on how to store the new node ids created in evolvestate. The rules are: * store the temporary relocated commits in temprevs * store the final new commit in replacements This patch make sure we follow the above rules and also use the return value returned by _resolvephasedivergence(). The tests change demonstrates that we are all good now.
Thu, 24 May 2018 00:58:35 +0530 tests: add more tests related to aborting while resolving phase-divergence
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 24 May 2018 00:58:35 +0530] rev 3771
tests: add more tests related to aborting while resolving phase-divergence The tests shows the something is still broken related to abort while resolving phase-divergence which will be fixed in upcoming patches.
Wed, 23 May 2018 12:16:24 +0200 topic: suggest to clear a topic that becomes empty
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 23 May 2018 12:16:24 +0200] rev 3770
topic: suggest to clear a topic that becomes empty We add a hint suggesting "hg topic --clear" when a topic becomes empty. This usually happens when all its changesets get public, that is when the user does a 'phase -p' or when they pull from a server. To discriminate relevant cases for which we should display the hint (and typically exclude explicit 'hg topic --clear' operation), we look for the transaction "type" to only consider 'phase' or 'push' transaction. In the latter case, the transaction name is not simply 'push-response' but it also included the remote URL so we need to match on string content.
Wed, 23 May 2018 11:37:37 +0200 topic: display a hint pointing at help when a topic becomes non-empty
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 23 May 2018 11:37:37 +0200] rev 3769
topic: display a hint pointing at help when a topic becomes non-empty This is an attempt at avoiding "mistakes" by new users of topics when they pull a topic and publish its changesets while being checked out. In this case, the topic will become empty but still be active; however, if this is a "foreign" topic, the user will not likely want to keep it active for the next commit operation. So we add a hint message pointing at general help of "topics" command so that they can eventually do something and learn about "hg topics --clear".
Thu, 24 May 2018 18:57:46 +0200 branching: merge with compat fix on default
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 24 May 2018 18:57:46 +0200] rev 3768
branching: merge with compat fix on default
Thu, 24 May 2018 01:50:26 +0530 evolve: add compat for repair.stripbmrevset which is moved to scmutil stable
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 24 May 2018 01:50:26 +0530] rev 3767
evolve: add compat for repair.stripbmrevset which is moved to scmutil This patch adds compatibility logic for repair.stripbmrevset() which is moved to scmutil as bookmarkrevs(). This fixes test-prune.t failure.
Wed, 23 May 2018 11:18:14 +0200 evolve: update the readme with more information about contribution stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 23 May 2018 11:18:14 +0200] rev 3766
evolve: update the readme with more information about contribution
Wed, 23 May 2018 11:03:31 +0200 topic: dedent items about publishing behavior in docstring stable
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 23 May 2018 11:03:31 +0200] rev 3765
topic: dedent items about publishing behavior in docstring Also change item bullets from '#' to '*'.
Wed, 23 May 2018 11:00:11 +0200 topic: use preformatted block for config snippets documentation stable
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 23 May 2018 11:00:11 +0200] rev 3764
topic: use preformatted block for config snippets documentation We add :: markers, empty line and properly indent blocks where needed.
Wed, 23 May 2018 11:09:37 +0200 tests: add a test for "hg help -e topic" stable
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 23 May 2018 11:09:37 +0200] rev 3763
tests: add a test for "hg help -e topic" Currently, some configuration snippets do not render well; we'll fix this in forthcoming changesets.
Wed, 23 May 2018 01:24:02 +0200 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 23 May 2018 01:24:02 +0200] rev 3762
branching: merge with stable
Tue, 22 May 2018 21:33:50 +0530 content-div: add test showing `--stop` works during interrupted resolution
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 22 May 2018 21:33:50 +0530] rev 3761
content-div: add test showing `--stop` works during interrupted resolution This patch adds a test showing that the --stop flag of `hg evolve` works well during interrupted content-divergence resolution. The --stop flag now works with all the three different type of instability resolution very well and we should advertise it more.
Mon, 23 Apr 2018 14:48:53 +0530 evolve: create new commit while resolving content-divergence
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 23 Apr 2018 14:48:53 +0530] rev 3760
evolve: create new commit while resolving content-divergence Before this patch, we used to amend one of the content-divergent changes with the changes from the merge. Creating a new commit will certain advantages like letting user enter a commit message, showing user the new merge diff before commiting the content-divergent resolution and give us more control in the implementation part. The reason amend was used initially was just because it was easy. There are some tests update due to change.
Tue, 22 May 2018 20:33:42 +0530 content-divergence: store the resolved revs in evolvestate['replacements']
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 22 May 2018 20:33:42 +0530] rev 3759
content-divergence: store the resolved revs in evolvestate['replacements'] The support for continuing a conflicted content-divergence resolution was added some time ago. That support lacked storing of the resolved rev in the evolvestate['replacements'] which marks the node as resolved and does not try to resolve that node again. Since we didn't store, the resolution, processes the same node again. This patch makes sure we store the information in evolvestate that a certain content-divergent node is resolved to prevent pre-processing it again.
Tue, 22 May 2018 23:51:57 +0530 utility: use ui.interactive() instead of checking config value
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 22 May 2018 23:51:57 +0530] rev 3758
utility: use ui.interactive() instead of checking config value Before this patch, the rev selection prompt which pops up in case of ambiguity to ask user to select a rev used to check the config value of ui.interactive which can is by default set to None. We should use ui.interactive() instead which is more smart in such cases. Thanks to martinvonz for suggesting this.
Wed, 23 May 2018 02:46:20 +0530 evolve: make `--abort` strip the temporary revs created during resolution
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 23 May 2018 02:46:20 +0530] rev 3757
evolve: make `--abort` strip the temporary revs created during resolution During divergence resolution, `hg evolve` created temporary relocation commits which needs to be stripped off during `hg evolve --abort` to get back to the same state where we were. Previous patch added a new list temprevs to be stored in evolvestate. This patch starts storing the temp relocated node created during phase-divergence resolution in evolvestate and make sure we consider stripping it too while `hg evolve --abort`. The test changes demonstrate the fix. Now we are sucessfully aborting a phase-divergence resolution.
Wed, 23 May 2018 02:43:23 +0530 evolve: store a list of temprevs in evolvestate
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 23 May 2018 02:43:23 +0530] rev 3756
evolve: store a list of temprevs in evolvestate There are temporary revisions which are created as a part of divergence resolution which needs to be stripped off if user runs `hg evolve --abort`. We need to save the nodeids of those temporary revisions in the evolvestate. The temprevs list will help in the above mentioned use cases.
Wed, 23 May 2018 02:36:14 +0530 evolve: check for None before adding in set of revisions to strip
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 23 May 2018 02:36:14 +0530] rev 3755
evolve: check for None before adding in set of revisions to strip After previous patch, replacements can contain None. Let's make sure we don't add None to the revisions to strip during `hg evolve --abort` The test changes demonstrate the usefulness of this and the previous patch. Now abort is working and public changesets are not a problem.
Wed, 23 May 2018 02:33:14 +0530 evolve: return the new replacement node to be stored in evolvestate
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 23 May 2018 02:33:14 +0530] rev 3754
evolve: return the new replacement node to be stored in evolvestate While resolving phase-divergence, we can end up obsoleting the phase-divergent commit in favor of the public commit. Before this patch we return the node of public commit to store as a replacement of the phase-divergent commit. The above will not cause any problem till the time we use `hg evolve --abort` on an interrupted evolve which tries to strip the replacement nodes because it thinks that the replacements nodes are the ones which are created during the resolution and are new. Since we will be stripping a public node, `evolve --abort` will error out saying cannot strip public changeset, unable to abort evolve which is bad. We should make sure, replacements should only consist of new nodes formed. If the instablity is resolved by obsoleting in favour of old changeset, we should not store the old changeset in replacements in evolvestate.
Wed, 23 May 2018 02:39:38 +0530 evolve: don't make values of replacements dict lists
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 23 May 2018 02:39:38 +0530] rev 3753
evolve: don't make values of replacements dict lists There was inconsistency in code base related to the values stored in replacements dict in evolvestate. At some places we store a list, at some places we just store the nodeid. Let's make sure we store only the nodeid, not a list. If there are cases, when there are multiple replacements or changesets created during resolution, later patch will introduce storing temprevs in evolvestate which should be used.
Wed, 23 May 2018 02:41:08 +0530 tests: add a test file `--abort` flag while resolving phase-divergence
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 23 May 2018 02:41:08 +0530] rev 3752
tests: add a test file `--abort` flag while resolving phase-divergence This patch adds a new test file test-evolve-abort-phasediv.t which will contain tests for `hg evolve --abort` flag while resolving phase-divergence. There is a case in this test which does not work right which will be fixed in upcoming patches.
Tue, 15 May 2018 22:17:27 -0700 evolve: pass revisions as strings to commands.*() stable
Martin von Zweigbergk <martinvonz@google.com> [Tue, 15 May 2018 22:17:27 -0700] rev 3751
evolve: pass revisions as strings to commands.*() It's usually fine to pass integer revisions to e.g. commands.update(), but when directaccess is enabled, it attempts to parse it a revset, which fails.
Wed, 23 May 2018 01:27:13 +0530 tests: rename test-evolve-abort.t to test-evolve-abort-orphan.t
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 23 May 2018 01:27:13 +0530] rev 3750
tests: rename test-evolve-abort.t to test-evolve-abort-orphan.t We renamed the test file because it contains all the cases related to orphan resolution. Now we care about divergence resolution too and hence we must have separate specific test files for each type.
Mon, 21 May 2018 16:56:52 +0200 branching: merge with branch for stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 21 May 2018 16:56:52 +0200] rev 3749
branching: merge with branch for stable
Mon, 21 May 2018 16:25:29 +0200 compat: update obshashrange test output
Boris Feld <boris.feld@octobus.net> [Mon, 21 May 2018 16:25:29 +0200] rev 3748
compat: update obshashrange test output Mercurial core bfe8ef6e370e seems to have changed the order of some messages. Simply accept the change in the test file. CORE-TEST-OUTPUT-UPDATE: bfe8ef6e370e
Mon, 21 May 2018 14:56:51 +0200 test: update to new outputs
Boris Feld <boris.feld@octobus.net> [Mon, 21 May 2018 14:56:51 +0200] rev 3747
test: update to new outputs Mercurial core ea63a2004d09 update the hidden changeset warning during update after the effective update. CORE-TEST-OUTPUT-UPDATE: ea63a2004d09
Mon, 21 May 2018 13:07:49 +0200 compat: fix obslog with Mercurial 4.6+
Boris Feld <boris.feld@octobus.net> [Mon, 21 May 2018 13:07:49 +0200] rev 3746
compat: fix obslog with Mercurial 4.6+ Mercurial core 3fe1c9263024 removed the diffopts attribute on changesetprinter. Backport consuming diffopts in the constructor for old versions of changesetprinter and update the non-graph code to extract the patch option and pass it directly.
Sat, 19 May 2018 18:26:36 +0530 debian: add line to clean-docs target to delete additional docs file stable
Faheem Mitha <faheem@faheem.info> [Sat, 19 May 2018 18:26:36 +0530] rev 3745
debian: add line to clean-docs target to delete additional docs file
Mon, 14 May 2018 15:25:38 -0700 amend: use context manager for locks (issue5887) stable
Martin von Zweigbergk <martinvonz@google.com> [Mon, 14 May 2018 15:25:38 -0700] rev 3744
amend: use context manager for locks (issue5887)
Thu, 10 May 2018 21:37:28 -0700 evolve: point to '--abort' in verbose status message stable
Martin von Zweigbergk <martinvonz@google.com> [Thu, 10 May 2018 21:37:28 -0700] rev 3743
evolve: point to '--abort' in verbose status message f6979d64b9fb (evolve: point to '--abort' in error message, 2018-04-22) changed "hg update -C ." to "hg evolve --abort" in error messages. This commit makes the same change in the verbose status message (the one that warns about unfinished evolve). There's still one mention "hg update -C" in our codebase. That's after "hg evolve --content-divergent" fails, but I don't think "hg evolve --abort" works in that case (yet?).
Sun, 22 Apr 2018 20:14:42 +0530 evolvecmd: add comments and new lines in content-divergence handling logic
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 22 Apr 2018 20:14:42 +0530] rev 3742
evolvecmd: add comments and new lines in content-divergence handling logic I have visited this logic three times in last 10 days and I have to re-read the whole code to make sure I don't miss any part. Adding comments will help understanding the code in better and fast way.
Sun, 29 Apr 2018 19:18:54 +0530 evolve: show cset hash in "merging conetnt-divergent changeset"
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 29 Apr 2018 19:18:54 +0530] rev 3741
evolve: show cset hash in "merging conetnt-divergent changeset" While I was here I also mae de it repo.ui.status() instead of repo.ui.note() to align the behavior with rest of the messages.
Sun, 29 Apr 2018 19:14:41 +0530 evolve: show cset hash in "update to local conflict" message
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 29 Apr 2018 19:14:41 +0530] rev 3740
evolve: show cset hash in "update to local conflict" message
Sun, 29 Apr 2018 19:11:29 +0530 evolve: use hg.updaterepo() instead of hg.update() to hide stats
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 29 Apr 2018 19:11:29 +0530] rev 3739
evolve: use hg.updaterepo() instead of hg.update() to hide stats
Sun, 29 Apr 2018 19:04:18 +0530 evolve: fix the conflicts error message during content-divergence resolution
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 29 Apr 2018 19:04:18 +0530] rev 3738
evolve: fix the conflicts error message during content-divergence resolution Before last patch, we didn't had an automated way to continue an interrupted content-divergence resolution and we used to show a very long error message on how to continue manually. This patch replaces that long error message with nice small message which tells how to continue and how to abort. We still show `hg update -C .` to abort as we need to test and make `--abort` work in case of content-divergence.
Sun, 29 Apr 2018 18:51:56 +0530 evolve: add logic to continue interrupted content-divergence resolution
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 29 Apr 2018 18:51:56 +0530] rev 3737
evolve: add logic to continue interrupted content-divergence resolution We continue the interrupted content-divergence using the logic to complete content-divergence which we refactored in it's own function few patches ago. We had to delete evolvestate file before using cmdutil.amend() because otherwise we can't use the function. This leads to a hack which deletes the evolvestate file, we may want to not to use the high level API function here. Also we had to pass evolvestate also to _completecontentdivergent function because of this. This patch also, adds a test which demonstrates that the logic works fine.
Sun, 29 Apr 2018 18:48:36 +0530 evolve: store the evolvestate file when encountering conflicts
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 29 Apr 2018 18:48:36 +0530] rev 3736
evolve: store the evolvestate file when encountering conflicts This patch makes `hg evolve` store the evolvestate file when it encounters merge conflicts while resolving content-divergence.
Sun, 29 Apr 2018 18:13:29 +0530 evolve: take out logic to complete phase-divergence in separate fn
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 29 Apr 2018 18:13:29 +0530] rev 3735
evolve: take out logic to complete phase-divergence in separate fn This patch takes out the logic to complete the content-divergence resolution to it's own separate function so that we can reuse it in case of interrupted resolution.
Sun, 29 Apr 2018 17:54:01 +0530 evolve: store divergent nodes in evolvestate when resolving content-divergence
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 29 Apr 2018 17:54:01 +0530] rev 3734
evolve: store divergent nodes in evolvestate when resolving content-divergence We need to store the divergent nodes in evolvestate so that we can continue an interrupted phase divergence resolution.
Wed, 02 May 2018 11:59:06 +0200 branching: merge stable into default
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 02 May 2018 11:59:06 +0200] rev 3733
branching: merge stable into default
Sat, 28 Apr 2018 18:44:07 +0530 tests: add test showing `hg evolve --stop` works fine with phase-divergence stable
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 28 Apr 2018 18:44:07 +0530] rev 3732
tests: add test showing `hg evolve --stop` works fine with phase-divergence This patch adds a new test file which contains test demonstrating that `--stop` flag works well while resolving phase-divergence using `hg evolve`.
Sat, 28 Apr 2018 18:03:32 +0530 tests: rename the test file to add 'orphan' in the name stable
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 28 Apr 2018 18:03:32 +0530] rev 3731
tests: rename the test file to add 'orphan' in the name test-evolve-stop.t contains test for `hg evolve --stop` for orphan resolution only. We also need to test the flag while resolving divergence. It will be good if we have a test file for each type of instability.
Fri, 27 Apr 2018 16:28:34 +0800 tests: test that `hg obslog wdir()` aborts with a useful message stable
Anton Shestakov <av6@dwimlabs.net> [Fri, 27 Apr 2018 16:28:34 +0800] rev 3730
tests: test that `hg obslog wdir()` aborts with a useful message
Fri, 27 Apr 2018 16:19:45 +0800 obshistory: make obslog work when a commit doesn't have any description stable
Anton Shestakov <av6@dwimlabs.net> [Fri, 27 Apr 2018 16:19:45 +0800] rev 3729
obshistory: make obslog work when a commit doesn't have any description This logic is taken from logcmdutil.changesetprinter class. It checks that commit description is not empty before extracting the first line (before this patch it would try to index an empty list). Stripping description also makes obslog behave more like regular log when there are trailing/leading whitespaces.
Fri, 27 Apr 2018 16:14:10 +0800 obshistory: use a more appropriate type for obslog entries stable
Anton Shestakov <av6@dwimlabs.net> [Fri, 27 Apr 2018 16:14:10 +0800] rev 3728
obshistory: use a more appropriate type for obslog entries cand is actually a regular changeset and not 'M' (graphmod.MISSINGPARENT). And 'M' is only used for graph edges, but cand is drawn as a graph node. Visually there's no effect, but the code makes more sense this way.
Wed, 25 Apr 2018 14:19:13 +0100 packaging: mark as development version
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 Apr 2018 14:19:13 +0100] rev 3727
packaging: mark as development version This help avoiding confusion when installing from source.
Wed, 25 Apr 2018 14:18:19 +0100 branching: merge with latest release
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 Apr 2018 14:18:19 +0100] rev 3726
branching: merge with latest release
Wed, 25 Apr 2018 14:16:35 +0100 packaking: mark as development version stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 Apr 2018 14:16:35 +0100] rev 3725
packaking: mark as development version This avoid confusion when installing from source.
Wed, 25 Apr 2018 14:09:36 +0100 test-compat: merge mercurial-4.4 into mercurial-4.3 mercurial-4.3
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 Apr 2018 14:09:36 +0100] rev 3724
test-compat: merge mercurial-4.4 into mercurial-4.3
Wed, 25 Apr 2018 14:09:35 +0100 test-compat: merge mercurial-4.5 into mercurial-4.4 mercurial-4.4
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 Apr 2018 14:09:35 +0100] rev 3723
test-compat: merge mercurial-4.5 into mercurial-4.4
Wed, 25 Apr 2018 14:09:34 +0100 test-compat: merge stable into mercurial-4.5 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 Apr 2018 14:09:34 +0100] rev 3722
test-compat: merge stable into mercurial-4.5
Wed, 25 Apr 2018 14:09:14 +0100 Added tag 8.0.0 for changeset 116cdd8c102a stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 Apr 2018 14:09:14 +0100] rev 3721
Added tag 8.0.0 for changeset 116cdd8c102a
Wed, 25 Apr 2018 14:02:43 +0100 packaging: update version number stable 8.0.0
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 Apr 2018 14:02:43 +0100] rev 3720
packaging: update version number
Wed, 25 Apr 2018 13:55:52 +0100 packagin: update `tested-with` statement stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 Apr 2018 13:55:52 +0100] rev 3719
packagin: update `tested-with` statement
Wed, 25 Apr 2018 13:49:00 +0100 changelog: mention 4.6 compatibility stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 Apr 2018 13:49:00 +0100] rev 3718
changelog: mention 4.6 compatibility
Wed, 25 Apr 2018 11:55:49 +0100 Changelog: pre-version gardening stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 Apr 2018 11:55:49 +0100] rev 3717
Changelog: pre-version gardening
Wed, 25 Apr 2018 01:58:45 +0100 testcompat: update output for Mercurial 4.3 mercurial-4.3
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 Apr 2018 01:58:45 +0100] rev 3716
testcompat: update output for Mercurial 4.3 Lets of minor update + one major update to tests/test-evolve-phase-divergence.t since all hashed chance (different instability name).
Mon, 23 Apr 2018 12:23:00 +0200 test-compat: merge mercurial-4.4 into mercurial-4.3 mercurial-4.3
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 23 Apr 2018 12:23:00 +0200] rev 3715
test-compat: merge mercurial-4.4 into mercurial-4.3
Mon, 23 Apr 2018 12:11:10 +0200 test-compat: merge mercurial-4.5 into mercurial-4.4 mercurial-4.4
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 23 Apr 2018 12:11:10 +0200] rev 3714
test-compat: merge mercurial-4.5 into mercurial-4.4
Tue, 24 Apr 2018 08:57:18 +0100 testcompat: revert output change from new capabilities mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 24 Apr 2018 08:57:18 +0100] rev 3713
testcompat: revert output change from new capabilities This new capabilities is 4.6 only.
Tue, 24 Apr 2018 08:42:47 +0100 testcompat: revert output change from 54a469cd5b26 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 24 Apr 2018 08:42:47 +0100] rev 3712
testcompat: revert output change from 54a469cd5b26 These are 4.6 only changes.
Tue, 24 Apr 2018 08:41:57 +0100 testcompat: revert output change from 1de6ba0ac6d7 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 24 Apr 2018 08:41:57 +0100] rev 3711
testcompat: revert output change from 1de6ba0ac6d7 These are 4.6 only changes.
Mon, 23 Apr 2018 12:10:26 +0200 testcompat: merge stable into mercurial-4.5 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 23 Apr 2018 12:10:26 +0200] rev 3710
testcompat: merge stable into mercurial-4.5
Tue, 24 Apr 2018 15:23:15 +0100 compat: handle different `ui.edit` signature with Mercurial 4.3 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 24 Apr 2018 15:23:15 +0100] rev 3709
compat: handle different `ui.edit` signature with Mercurial 4.3
Tue, 24 Apr 2018 16:13:42 +0100 wirepeer: try modern module first stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 24 Apr 2018 16:13:42 +0100] rev 3708
wirepeer: try modern module first This avoid some issue with remaining .pyc
Tue, 24 Apr 2018 12:07:35 +0100 compat: handle lack of allpredecessors for Mercurial 4.3 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 24 Apr 2018 12:07:35 +0100] rev 3707
compat: handle lack of allpredecessors for Mercurial 4.3
Mon, 23 Apr 2018 12:03:05 +0100 branching: merge further fix into stable stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 23 Apr 2018 12:03:05 +0100] rev 3706
branching: merge further fix into stable
Mon, 23 Apr 2018 11:44:05 +0100 wrapping: fix a silly error were we checking on module and wrapping the other
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 23 Apr 2018 11:44:05 +0100] rev 3705
wrapping: fix a silly error were we checking on module and wrapping the other ...
Mon, 23 Apr 2018 11:04:27 +0200 brancing: merge next release into default stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 23 Apr 2018 11:04:27 +0200] rev 3704
brancing: merge next release into default We are about to release hg-evolve 8.0.0
Sat, 21 Apr 2018 11:01:12 +0200 test-compat: open mercurial-4.5 branch mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 21 Apr 2018 11:01:12 +0200] rev 3703
test-compat: open mercurial-4.5 branch
Sun, 22 Apr 2018 11:40:17 +0200 evolve: point to '--abort' in error message
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 22 Apr 2018 11:40:17 +0200] rev 3702
evolve: point to '--abort' in error message The way to escape and evolve run has been updated and we need to tell our user about it.
Thu, 19 Apr 2018 16:27:13 +0200 compat: drop compatibility layer for pager
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 16:27:13 +0200] rev 3701
compat: drop compatibility layer for pager All versions we support now support `ui.pager`.
Thu, 19 Apr 2018 16:25:17 +0200 compat: drop compatibility layer for duplicatecopies
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 16:25:17 +0200] rev 3700
compat: drop compatibility layer for duplicatecopies We no longer support version before Mercurial 4.3.
Thu, 19 Apr 2018 16:21:44 +0200 compat: drop compatibility layer for bookmark.applychanges
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 16:21:44 +0200] rev 3699
compat: drop compatibility layer for bookmark.applychanges We now only support Mercurial version down to 4.3.
Thu, 19 Apr 2018 16:15:10 +0200 compat: from compatibility layer for allprecursors
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 16:15:10 +0200] rev 3698
compat: from compatibility layer for allprecursors We only support down to 4.3 now.
Thu, 19 Apr 2018 16:12:37 +0200 compat: drop compatibility layer for successorssets
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 16:12:37 +0200] rev 3697
compat: drop compatibility layer for successorssets We support down to Mercurial 4.3 now.
Thu, 19 Apr 2018 16:08:01 +0200 compat: drop compatibility wrapper for "relevantmarkers"
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 16:08:01 +0200] rev 3696
compat: drop compatibility wrapper for "relevantmarkers" We no longer support version without the logic we have been adding.
Thu, 19 Apr 2018 16:51:53 +0200 compat: drop compat layer for cleanupnodes
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 16:51:53 +0200] rev 3695
compat: drop compat layer for cleanupnodes We no longer support version lower than 4.3.
Thu, 19 Apr 2018 16:07:23 +0200 compat: from compatibility layer for createmarkers
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 16:07:23 +0200] rev 3694
compat: from compatibility layer for createmarkers We support down to 4.3 now. It supports operation.
Thu, 19 Apr 2018 16:01:49 +0200 compat: drop obsutile layer
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 16:01:49 +0200] rev 3693
compat: drop obsutile layer Mercurial 4.2 is no longer supported.
Thu, 19 Apr 2018 15:59:39 +0200 compat: drop vfsmod compat layer
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 15:59:39 +0200] rev 3692
compat: drop vfsmod compat layer Mercurial 4.2 is no longer supported.
Thu, 19 Apr 2018 14:26:03 +0200 evolve: use in code filtered error for 4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 14:26:03 +0200] rev 3691
evolve: use in code filtered error for 4.6 Things have been upstream into core for a while, let us use them instead of the evolve version.
Thu, 19 Apr 2018 15:51:44 +0200 documentation: refer to 4.3 in the help text
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 15:51:44 +0200] rev 3690
documentation: refer to 4.3 in the help text Minimal version supported is now 4.3. Drop reference to 4.2 in the help.
Thu, 19 Apr 2018 14:14:34 +0200 topic: remove compatibility for older version in discovery wrapping
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 14:14:34 +0200] rev 3689
topic: remove compatibility for older version in discovery wrapping Support for 4.1 and 4.2 has been dropped.
Thu, 19 Apr 2018 14:01:24 +0200 obscache: drop compat layer to access public changeset
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 14:01:24 +0200] rev 3688
obscache: drop compat layer to access public changeset We can now access precomputed sets. (compat to 4.1 and 4.2 dropped)
Thu, 19 Apr 2018 14:00:12 +0200 obscache: drop compat layer for obsmarkers reading
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 14:00:12 +0200] rev 3687
obscache: drop compat layer for obsmarkers reading We cna now use a version with the argument we needs.
Thu, 19 Apr 2018 13:40:57 +0200 template: drop compatibility layer
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 13:40:57 +0200] rev 3686
template: drop compatibility layer Support has been dropped for 4.1 and 4.2
Thu, 19 Apr 2018 13:35:31 +0200 timer: drop compat layer for time
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 13:35:31 +0200] rev 3685
timer: drop compat layer for time Support for 4.1 and 4.2 has been dropped.
Thu, 19 Apr 2018 11:38:13 +0200 compat: drop support for Mercurial 4.2
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 11:38:13 +0200] rev 3684
compat: drop support for Mercurial 4.2 Since Mercurial 4.6 is about to be released, we drop support for 4.2 too. (code still need to be cleaned up).
Thu, 19 Apr 2018 11:39:04 +0200 compat: close test-compat branch for mercurial-4.2 mercurial-4.2
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 11:39:04 +0200] rev 3683
compat: close test-compat branch for mercurial-4.2 Support for this version have just been dropped.
Wed, 18 Apr 2018 22:54:11 -0700 evolve: add support for hg >= b4d85bc1
Martin von Zweigbergk <martinvonz@google.com> [Wed, 18 Apr 2018 22:54:11 -0700] rev 3682
evolve: add support for hg >= b4d85bc1 Mercurial commit b4d85bc1 deleted the wireproto module and its contents are now in various other modules, so we can not even do unchecked imports of it now.
Thu, 19 Apr 2018 10:59:12 +0200 discovery: handle deletion of 'wireproto' module
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 10:59:12 +0200] rev 3681
discovery: handle deletion of 'wireproto' module Mercurial commit b4d85bc122bd. deleted the wireproto module and its contents are now in various other modules, so we can not even do unchecked imports of it now.
Thu, 19 Apr 2018 10:55:57 +0200 evolve: handle wireproto module deletion for registering new commands
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 10:55:57 +0200] rev 3680
evolve: handle wireproto module deletion for registering new commands Module have been deleted in b4d85bc122bd. We can no longer import it blindly.
Thu, 19 Apr 2018 10:53:59 +0200 minitopic: handle wireproto module change from b4d85bc122bd
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 10:53:59 +0200] rev 3679
minitopic: handle wireproto module change from b4d85bc122bd This module have been scattered in other place, so we need to detect and handle this for 4.6+
Thu, 19 Apr 2018 10:50:24 +0200 topic: handle wireproto module change from b4d85bc122bd
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 19 Apr 2018 10:50:24 +0200] rev 3678
topic: handle wireproto module change from b4d85bc122bd This module have been scattered in other place, so we need to detect and handle this for 4.6+
Wed, 18 Apr 2018 22:36:54 -0700 obsexchange: remove unused import of wireprotoserver
Martin von Zweigbergk <martinvonz@google.com> [Wed, 18 Apr 2018 22:36:54 -0700] rev 3677
obsexchange: remove unused import of wireprotoserver This seems to be unused since 300d7d019b9.
Wed, 18 Apr 2018 10:08:05 +0200 compat: rename resolvepartialhexnodeid to resolvehexnodeidprefix
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 18 Apr 2018 10:08:05 +0200] rev 3676
compat: rename resolvepartialhexnodeid to resolvehexnodeidprefix The name changed in 5f8f013e7d52
Tue, 17 Apr 2018 19:42:46 +0200 compat: access datestr in a way compatible with verison prior to 4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 17 Apr 2018 19:42:46 +0200] rev 3675
compat: access datestr in a way compatible with verison prior to 4.6
Tue, 17 Apr 2018 19:42:26 +0200 compat: fallback to compatible partial lookup prior to 4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 17 Apr 2018 19:42:26 +0200] rev 3674
compat: fallback to compatible partial lookup prior to 4.6
Tue, 17 Apr 2018 18:30:56 +0200 import: adapt to fd1dd79cff20
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 17 Apr 2018 18:30:56 +0200] rev 3673
import: adapt to fd1dd79cff20 With the latest state of the code, the patch is passed to "import try one" as parsed.
Tue, 17 Apr 2018 18:10:53 +0200 import: grab the expected node value on the fly
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 17 Apr 2018 18:10:53 +0200] rev 3672
import: grab the expected node value on the fly We no longer parse the patch beforehand this will reduce inconsistency with newer API.
Tue, 17 Apr 2018 17:58:12 +0200 import: use a less direct approach to store the expected node
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 17 Apr 2018 17:58:12 +0200] rev 3671
import: use a less direct approach to store the expected node This will help later refactoring.
Tue, 17 Apr 2018 15:45:58 +0200 compat: adapt `amend --patch` to the new `patch.extract` API
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 17 Apr 2018 15:45:58 +0200] rev 3670
compat: adapt `amend --patch` to the new `patch.extract` API
Tue, 17 Apr 2018 15:04:15 +0200 compat: deal with change in the wireproto module
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 17 Apr 2018 15:04:15 +0200] rev 3669
compat: deal with change in the wireproto module
Mon, 16 Apr 2018 12:46:23 -0700 branching: merge with stable
Martin von Zweigbergk <martinvonz@google.com> [Mon, 16 Apr 2018 12:46:23 -0700] rev 3668
branching: merge with stable
Mon, 16 Apr 2018 20:18:10 +0200 topic: allow '.' in topic names
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 16 Apr 2018 20:18:10 +0200] rev 3667
topic: allow '.' in topic names This is also commonly used.
Mon, 16 Apr 2018 10:58:06 -0700 relocate: look up partial nodeids in unfiltered repo
Martin von Zweigbergk <martinvonz@google.com> [Mon, 16 Apr 2018 10:58:06 -0700] rev 3666
relocate: look up partial nodeids in unfiltered repo This accidentally changed to using the filtered repo in commit 0f0f3135.
Mon, 16 Apr 2018 17:11:27 +0200 compat: avoid using partial node ID in lookup
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 16 Apr 2018 17:11:27 +0200] rev 3665
compat: avoid using partial node ID in lookup This is getting deprecated in 4.6.
Mon, 16 Apr 2018 00:05:54 +0200 test: apply output change from protocaps
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 16 Apr 2018 00:05:54 +0200] rev 3664
test: apply output change from protocaps CORE-TEST-OUTPUT-UPDATE: afcfdf53e4b5
Sun, 15 Apr 2018 23:24:03 +0200 test: update output to match upstream
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 15 Apr 2018 23:24:03 +0200] rev 3663
test: update output to match upstream The exact wording for filtered error has been changed. CORE-TEST-OUTPUT-UPDATE: ecd3f6909184
Fri, 13 Apr 2018 09:26:28 -0700 evolve: don't pass stringified int to repo.__getitem__
Martin von Zweigbergk <martinvonz@google.com> [Fri, 13 Apr 2018 09:26:28 -0700] rev 3662
evolve: don't pass stringified int to repo.__getitem__ We were doing repo['-1'], which is now deprecated. Switch to repo['tip'], which is much clearer anyway (I initially thought this was nullrev and sent an incorrect patch until Pierre-Yves corrected me).
Wed, 11 Apr 2018 07:23:34 +0200 patch: offer the user a chance to fix the patch if it fails to apply
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 11 Apr 2018 07:23:34 +0200] rev 3661
patch: offer the user a chance to fix the patch if it fails to apply The experience is still not great, but better than purely dropping the changes.
Sun, 18 Mar 2018 23:48:06 +0530 amend: add a new flag `--patch` to `hg amend`
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 18 Mar 2018 23:48:06 +0530] rev 3660
amend: add a new flag `--patch` to `hg amend` This patch adds a new flag `--patch` to `hg amend` which pops up an editor with the patch of working directory parent which you can change, and when you exit the editor the patch with changes is applied to current working directory with old changeset being obsoleted in favour of new one created by the applied patch. If supplied filenames, only those filenames are present in the popped editor and rest files stay the same way in the commit as they were. The extension of the file which opens up in editor is '.diff', we cannot have it as '.patch' as there will be develwarns related to that. We need to change to patch core and undo some change to achieve this. The implementation does not use any core API rather it has picked chunks from API which are required. One main reason to not use core import API is that we have to change wdir parent before using patch.patch() which I will like to avoid to make sure we handle merge cases too. While writing this patch I have spend lot of time try to use internal API's to work for this but none of them served the purpose well. If I have time in future and work on similar problem again, I am going to write better high-level API's which uses patchstore to achieve this. A new test file test-amend-patch.t which contains a lot of testing of the feature.
Thu, 12 Apr 2018 13:30:28 +0800 stablerangecache: include units in ui.progress() calls
Anton Shestakov <av6@dwimlabs.net> [Thu, 12 Apr 2018 13:30:28 +0800] rev 3659
stablerangecache: include units in ui.progress() calls
Thu, 12 Apr 2018 13:28:30 +0800 stablerange: include units in ui.progress() calls
Anton Shestakov <av6@dwimlabs.net> [Thu, 12 Apr 2018 13:28:30 +0800] rev 3658
stablerange: include units in ui.progress() calls
Fri, 06 Apr 2018 20:00:43 +0530 tests: add test demonstarting issue5833 is fixed
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 06 Apr 2018 20:00:43 +0530] rev 3657
tests: add test demonstarting issue5833 is fixed Previous patch which fixed issue5832 also fixed issue5833 as the root cause for both was same. This patch adds test of issue5833 as well. CHANEGLOG entry is also added for the fixed issues.
Fri, 06 Apr 2018 20:13:27 +0530 utility: convert node from MultipleSuccessorsError to rev numbers (issue5832)
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 06 Apr 2018 20:13:27 +0530] rev 3656
utility: convert node from MultipleSuccessorsError to rev numbers (issue5832) utility.builddependencies() deals with rev numbers but MultipleSuccessorsError returns nodeid which breaks the function and also breaks instability resolution. Previou patch demonstrate the breakage. This patch makes sure we convert those nodeids to rev numbers before processing ahead.
Fri, 06 Apr 2018 15:35:57 +0530 tests: add a test demonstarting issue5832 traceback
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 06 Apr 2018 15:35:57 +0530] rev 3655
tests: add a test demonstarting issue5832 traceback The traceback will be fixed in upcoming patches.
Fri, 06 Apr 2018 14:56:27 +0530 CHANGELOG: add an entry about `hg evolve --abort`
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 06 Apr 2018 14:56:27 +0530] rev 3654
CHANGELOG: add an entry about `hg evolve --abort` Previous patches added a new flag `--abort` for `hg evolve` which aborts an interrupted evolve. Currently this only works for orphan resolution cases which is very common and most people use `evolve` for that. So let's add an entry about that.
Thu, 29 Mar 2018 17:34:51 +0530 evolve: restore bookmarks correctly after `hg evolve --abort`
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 29 Mar 2018 17:34:51 +0530] rev 3653
evolve: restore bookmarks correctly after `hg evolve --abort` This patch adds logic to store bookmark movements in evolvestate class and restore bookmarks to their original place if `hg evolve --abort` is called.
Thu, 29 Mar 2018 17:42:32 +0530 topic-ext: restrict the format of topic names
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 29 Mar 2018 17:42:32 +0530] rev 3652
topic-ext: restrict the format of topic names This patch restrict the format of topic names to make sure they consist only of alphanumeric, '_' and '-' characters.
Fri, 06 Apr 2018 23:42:47 +0530 serverminitopic: wrap context.changectx.branch instead of context.changectx
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 06 Apr 2018 23:42:47 +0530] rev 3651
serverminitopic: wrap context.changectx.branch instead of context.changectx Recently some changes in core resulted in this wrapping of class leading to an infinite recursion. Let's wrap the particular function instead of wrapping the whole command. This fixes test-minitopic.t which was breaking.
Fri, 06 Apr 2018 17:53:41 +0200 templatekw: remove obsfatedata templatekw
Boris Feld <boris.feld@octobus.net> [Fri, 06 Apr 2018 17:53:41 +0200] rev 3650
templatekw: remove obsfatedata templatekw Individuals fields are available in core as single template functions.
Thu, 29 Mar 2018 13:01:05 -0700 evolve: do not exit 1 when there are no troubled changesets (issue5823)
Kyle Lippincott <spectral@google.com> [Thu, 29 Mar 2018 13:01:05 -0700] rev 3649
evolve: do not exit 1 when there are no troubled changesets (issue5823) There are possibly other cases we also do not wish to exit non-zero for in this function, but I did not analyze them closely and am just looking at resolving issue5823.
Fri, 06 Apr 2018 17:54:58 +0200 changelog: add an entry about the memory fixes
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 06 Apr 2018 17:54:58 +0200] rev 3648
changelog: add an entry about the memory fixes
Fri, 06 Apr 2018 14:37:22 +0800 safeguard: use self instead of repo in noautopublishrepo.checkpush()
Anton Shestakov <av6@dwimlabs.net> [Fri, 06 Apr 2018 14:37:22 +0800] rev 3647
safeguard: use self instead of repo in noautopublishrepo.checkpush() Referring to repo here was somehow preventing it from being garbage-collected (important in hgweb, where currently every request gets a new repo).
Fri, 06 Apr 2018 14:36:36 +0800 stablerangecache: use self instead of repo in stablerangerepo.stablerange()
Anton Shestakov <av6@dwimlabs.net> [Fri, 06 Apr 2018 14:36:36 +0800] rev 3646
stablerangecache: use self instead of repo in stablerangerepo.stablerange() Referring to repo here was somehow preventing it from being garbage-collected (important in hgweb, where currently every request gets a new repo).
Fri, 06 Apr 2018 14:26:24 +0800 obscache: use self instead of repo in obscacherepo.updatecaches()
Anton Shestakov <av6@dwimlabs.net> [Fri, 06 Apr 2018 14:26:24 +0800] rev 3645
obscache: use self instead of repo in obscacherepo.updatecaches() Referring to repo here was somehow preventing it from being garbage-collected (important in hgweb, where currently every request gets a new repo).
Wed, 04 Apr 2018 16:29:48 +0200 templatekw: fix templatedata for 46
Boris Feld <boris.feld@octobus.net> [Wed, 04 Apr 2018 16:29:48 +0200] rev 3644
templatekw: fix templatedata for 46
Sat, 31 Mar 2018 11:53:09 +0200 style: fix a couple of pyflakes complains
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 31 Mar 2018 11:53:09 +0200] rev 3643
style: fix a couple of pyflakes complains
Thu, 29 Mar 2018 16:43:28 +0530 evolve: add a `--abort` flag for `hg evolve` command
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 29 Mar 2018 16:43:28 +0530] rev 3642
evolve: add a `--abort` flag for `hg evolve` command This patch adds a new flag `--abort` to `hg evolve` command which will abort the interrupted evolve going on undoes the changes created by the evolve command till now. The changes are bookmark movements, creation of evolved commits, obsolete the old commits in favor of evolved commits. In case when user changed things while the interrupted evolve, like did some actions which created a new commit on top of evolved commits, or changed phase of evolved commits to public, the evolve fails to abort as we should not strip out the new commit formed by user neither we can strip the public changeset. The abort fails and tell user to use `hg evolve --stop` instead. Right now bookmark movement is broken, and will be fixed in upcoming patches. Tests are added for the new flag.
Thu, 29 Mar 2018 16:38:00 +0530 evolve: don't allow updating or commiting when there is interrupted evolve
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 29 Mar 2018 16:38:00 +0530] rev 3641
evolve: don't allow updating or commiting when there is interrupted evolve We should make things simple in the starting and restrict user from doing things which can lead to problems. This is same as the rebase behavior.
Wed, 28 Mar 2018 17:47:49 +0530 evolve: internationalize the entry of --list in hg evolve help
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 28 Mar 2018 17:47:49 +0530] rev 3640
evolve: internationalize the entry of --list in hg evolve help
Wed, 28 Mar 2018 17:37:10 +0530 evolve: add evolvestate as an argument to _finalizerelocate()
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 28 Mar 2018 17:37:10 +0530] rev 3639
evolve: add evolvestate as an argument to _finalizerelocate() This will help us to store bookmark changes to evolvestate to revert them in case when `hg evolve --abort` is called.
Wed, 28 Mar 2018 17:33:54 +0530 evolve: add evolvestate as an argument to evolvecmd.relocate()
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 28 Mar 2018 17:33:54 +0530] rev 3638
evolve: add evolvestate as an argument to evolvecmd.relocate() This will help us in passing it to _finalizerelocate() and store the bookmark changes which happend.
Wed, 28 Mar 2018 17:13:08 +0530 tests: add test about handling phase-divergent merges
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 28 Mar 2018 17:13:08 +0530] rev 3637
tests: add test about handling phase-divergent merges We don't handle phase-divergent merges and we should. Upcoming patches will add the ability to handle them.
Wed, 28 Mar 2018 14:11:13 +0530 evolve: show a message when evolution leads to no changes to commit
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 28 Mar 2018 14:11:13 +0530] rev 3636
evolve: show a message when evolution leads to no changes to commit In case of orphan resolution, evolution may result in no changes to commit. This patch adds a use message in such cases. This is same as the rebase behavior.
Wed, 28 Mar 2018 13:48:34 +0530 evolve: pass the instability category to relocate() and _finalizerelocate()
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 28 Mar 2018 13:48:34 +0530] rev 3635
evolve: pass the instability category to relocate() and _finalizerelocate() This patch adds category argument to relocate() and _finalizerelocate() functions to take the type of instability which we are processing so that we perform actions accordingly.
Wed, 28 Mar 2018 12:56:35 +0530 tests: add more tests for solving phase-divergence using `hg evolve`
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 28 Mar 2018 12:56:35 +0530] rev 3634
tests: add more tests for solving phase-divergence using `hg evolve` This patch adds more tests for resolving phase-divergence caused due to fold or split using `hg evolve` command. The resolution in case of split is not very good and will be fixed in upcoming patches
Sat, 24 Mar 2018 17:21:42 +0530 evolve: handle interrupted phase-divergence resolution gracefully
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 24 Mar 2018 17:21:42 +0530] rev 3633
evolve: handle interrupted phase-divergence resolution gracefully This patch adds logic to handle the interrupted phase-divergence resolution by `hg evolve` command gracefully. We first complete the relocation of the changeset and then do the divergence resolution. Previous functions moved required code separate fucntions so that we can use them here.
Sat, 24 Mar 2018 16:41:14 +0530 evolve: move logic to resolve phase-divergence in a new function
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 24 Mar 2018 16:41:14 +0530] rev 3632
evolve: move logic to resolve phase-divergence in a new function This patch moves logic which does the revert and create a commit on top of public changeset because we need to repeat that logic while handling continuation of `hg evolve` when there are conflicts while rebasing the phase-divergent changeset.
Sat, 24 Mar 2018 16:38:03 +0530 evolve: store the precursor of phase-divergent in evolvestate
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 24 Mar 2018 16:38:03 +0530] rev 3631
evolve: store the precursor of phase-divergent in evolvestate This patch makes `hg evolve` store the precursor of phase-divergent changeset in evolvestate so that we don't need to calculate that again.
Sat, 24 Mar 2018 13:17:05 +0530 evolve: move logic to complete interrupted relocation to new fn
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 24 Mar 2018 13:17:05 +0530] rev 3630
evolve: move logic to complete interrupted relocation to new fn This moves logic which completed the interrupted relocation to it's own separate function as we will need that function in continuing phase-divergence and content-divergence too.
Sat, 24 Mar 2018 12:58:12 +0530 evolve: move logic to complete interrupted orphan resolution to new fn
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 24 Mar 2018 12:58:12 +0530] rev 3629
evolve: move logic to complete interrupted orphan resolution to new fn This patch moves logic which completes an interrupted orphan resolution to it's own new function. We will defining such functions for completing phase-divergence and content-divergence too.
Fri, 23 Mar 2018 19:36:08 +0530 evolve: write data to evolvestate in case on conflicts in phase-divergence
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 23 Mar 2018 19:36:08 +0530] rev 3628
evolve: write data to evolvestate in case on conflicts in phase-divergence This patch makes phase-divergence resolution write data to evolvestate instead of graftstate. The `evolve --continue` handling of phase-divergence is broken which will be done in upcoming patches.
Fri, 23 Mar 2018 19:16:25 +0530 evolve: explicitly turn revs to list before storing into evolvestate
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 23 Mar 2018 19:16:25 +0530] rev 3627
evolve: explicitly turn revs to list before storing into evolvestate The cbor library which we are using cannot handle encoding and decoding Python sets, and revs was set there. Let's convert revs explicitly to list to make sure we don't try writing sets.
Fri, 23 Mar 2018 18:58:19 +0530 tests: add tests of content+parent change creating phase-divergence
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 23 Mar 2018 18:58:19 +0530] rev 3626
tests: add tests of content+parent change creating phase-divergence This patch adds tests which shows handling of phase divergence cases by `hg evolve` command which involved content+parent change. The conflicts case is not handled and will be fixed in upcoming patches.
Fri, 23 Mar 2018 18:28:37 +0530 tests: show first line of commit message in test-evolve-phase-divergence.t
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 23 Mar 2018 18:28:37 +0530] rev 3625
tests: show first line of commit message in test-evolve-phase-divergence.t This patch adds 'firstline' filter to description in the log template.
Fri, 23 Mar 2018 17:49:26 +0530 evolve: make sure bookmarks are moved after phase-divergence resolution
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 23 Mar 2018 17:49:26 +0530] rev 3624
evolve: make sure bookmarks are moved after phase-divergence resolution This patch adds logic to move bookmarks from the rebased node to the phase-divergence resolved node.
Fri, 23 Mar 2018 17:46:46 +0530 evolve: use the new rebased changeset to resolve phase-divergence
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 23 Mar 2018 17:46:46 +0530] rev 3623
evolve: use the new rebased changeset to resolve phase-divergence When there is a parent change in phase-divergence, `hg evolve` first rebases the diveregent changeset on parent of public changeset and then continue the resolution of phase-divergence *but* we used to continue with the old divergent changeset rather than the new rebased one. This patch makes sure we use the new rebased changeset to proceed with the resolution. Tests changes shows that it fixes things which were broken earlier.
Fri, 23 Mar 2018 17:21:09 +0530 evolvecmd: add a detailed comment and some newlines
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 23 Mar 2018 17:21:09 +0530] rev 3622
evolvecmd: add a detailed comment and some newlines This patch adds a detailed comment on a chunk and some newlines to make things look better and more understandable for upcoming patches.
Fri, 23 Mar 2018 17:20:20 +0530 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 23 Mar 2018 17:20:20 +0530] rev 3621
tests: add one more test case about handling of phase-divergence by evolve This patch adds a test case when phasedivergence is caused by rebase command and there is parent change involved. As the tests show, we are not handling things correctly here. Upcoming patches will fix that. Fixing things in later patches showed there was a wrong case in one another test which will be fixed by later patches, so let's add description on why that test is wrong in this patch.
Fri, 23 Mar 2018 15:27:26 +0530 tests: add more tests for handling of phase divergence by `hg evolve`
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 23 Mar 2018 15:27:26 +0530] rev 3620
tests: add more tests for handling of phase divergence by `hg evolve` This patch adds more tests related to handling of phase-divergence by `hg evolve` command.
Fri, 23 Mar 2018 13:16:42 +0530 tests: temporary delete the merge test of handling phase divergence
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 23 Mar 2018 13:16:42 +0530] rev 3619
tests: temporary delete the merge test of handling phase divergence This patch temporary deletes the merge test of handling phase divergence by `hg evolve` command to that other important tests can be plugged in before this. This will make adding more tests easy. As I say, this is temporary to ease out adding more tests, the test will be added back.
Fri, 30 Mar 2018 19:38:55 +0200 tests: various comment on test-evolve-phase-divergence
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 30 Mar 2018 19:38:55 +0200] rev 3618
tests: various comment on test-evolve-phase-divergence
Fri, 30 Mar 2018 19:37:06 +0200 tests: make test-evolve-phase-divergence more descriptive
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 30 Mar 2018 19:37:06 +0200] rev 3617
tests: make test-evolve-phase-divergence more descriptive This patch adds description to what each part is doing in test-evolve-phase-divergence.t and some commands which should be used to analyze the divergence before resolving that.
Fri, 30 Mar 2018 20:26:54 +0200 compat: use updateresult API if available
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 30 Mar 2018 20:26:54 +0200] rev 3616
compat: use updateresult API if available The status return is no longer a tuple, we access attribute instead.
Fri, 30 Mar 2018 20:13:06 +0200 compat: provide an explicit default value to the 'odiff' config
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 30 Mar 2018 20:13:06 +0200] rev 3615
compat: provide an explicit default value to the 'odiff' config There is a devel warning about this now.
Thu, 29 Mar 2018 19:47:48 +0200 compat: keep passing arguments as keyword argument
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 29 Mar 2018 19:47:48 +0200] rev 3614
compat: keep passing arguments as keyword argument Otherwise, This break with new changes in upstream Mercurial.
Thu, 29 Mar 2018 18:34:32 +0200 compat: search for stringmatcher in the new location
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 29 Mar 2018 18:34:32 +0200] rev 3613
compat: search for stringmatcher in the new location More of util has been split into sub modules.
Thu, 29 Mar 2018 14:13:13 +0200 rebase: update the rebase wrapping to works with hg 4.6
Boris Feld <boris.feld@octobus.net> [Thu, 29 Mar 2018 14:13:13 +0200] rev 3612
rebase: update the rebase wrapping to works with hg 4.6 Mercurial core commit bd0086bd3af4 removed _makeextrafn hence breaking our wrapping. Update the code to wrap rebaseruntime directly in a way that's compatible with hg 4.1+.
Fri, 23 Mar 2018 09:08:21 -0700 compat: call current obsolete.createmarkers(), not one from load time stable
Martin von Zweigbergk <martinvonz@google.com> [Fri, 23 Mar 2018 09:08:21 -0700] rev 3611
compat: call current obsolete.createmarkers(), not one from load time Other extensions may wrap obsolete.createmarkers(). If they do, we should call their wrapped version. However, since f61a23a84dac (compat: add wrapper for obsolete.createmarkers() that accepts "operation" arg, 2018-03-16), we started storing the version of the function as it was when our compat module was loaded. This broke an extension we use internally at Google.
Fri, 23 Mar 2018 12:44:06 +0530 tests: rename test-evolve-bumped to test-evolve-phase-divergence.t
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 23 Mar 2018 12:44:06 +0530] rev 3610
tests: rename test-evolve-bumped to test-evolve-phase-divergence.t While I was here, I added a heading to test mentioning what the test if for.
Fri, 23 Mar 2018 12:39:00 +0530 evolve: replace bumped in function name to phasedivergence
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 23 Mar 2018 12:39:00 +0530] rev 3609
evolve: replace bumped in function name to phasedivergence bumped was the old name of phasedivergence. Lets replace with its new name so that we can forget the old one.
Fri, 23 Mar 2018 12:35:37 +0530 evolve: drop duplicate import of rewriteutil._bookmarksupdater
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 23 Mar 2018 12:35:37 +0530] rev 3608
evolve: drop duplicate import of rewriteutil._bookmarksupdater
Thu, 22 Mar 2018 10:39:18 +0100 obslog: more 4.1 code compatibility drop
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 22 Mar 2018 10:39:18 +0100] rev 3607
obslog: more 4.1 code compatibility drop
Thu, 22 Mar 2018 10:38:01 +0100 template: drop some 4.1 compatibility code
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 22 Mar 2018 10:38:01 +0100] rev 3606
template: drop some 4.1 compatibility code Simplify all the things.
Thu, 22 Mar 2018 10:35:27 +0100 checkheads: drop upstreamed code
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 22 Mar 2018 10:35:27 +0100] rev 3605
checkheads: drop upstreamed code Mercurial 4.2 has all the code that used to live in the evolve extensions so we can drop it now.
Thu, 22 Mar 2018 10:34:44 +0100 obslog: cleanup patch handling after 4.1 compat drop
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 22 Mar 2018 10:34:44 +0100] rev 3604
obslog: cleanup patch handling after 4.1 compat drop We can remove some of your compatibility code.
Thu, 22 Mar 2018 10:25:01 +0100 packaging: further mark 4.1 support as dropped
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 22 Mar 2018 10:25:01 +0100] rev 3603
packaging: further mark 4.1 support as dropped
Thu, 22 Mar 2018 10:05:50 +0100 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 22 Mar 2018 10:05:50 +0100] rev 3602
branching: merge with stable
Thu, 22 Mar 2018 09:53:42 +0100 tests: extend the globing to the user name stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 22 Mar 2018 09:53:42 +0100] rev 3601
tests: extend the globing to the user name Silly me.
Thu, 22 Mar 2018 01:20:03 +0100 branching: close mercurial-4.1 test branch mercurial-4.1
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 22 Mar 2018 01:20:03 +0100] rev 3600
branching: close mercurial-4.1 test branch
Thu, 15 Mar 2018 00:09:24 +0530 evolve: kill `--obsolete` and `--old-obsolete` flags for graft
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 15 Mar 2018 00:09:24 +0530] rev 3599
evolve: kill `--obsolete` and `--old-obsolete` flags for graft Evolve extension used to add the couple of flags to `hg graft` command for reasons I don't know but they were deprecated. For the functionality of `hg graft --old-obsolete`, we have `hg grab` now which can do that. One more reason to kill this is that we have logic to parse the graftstate, whereas in core, we are going to change how state files are read and write. Tweaked the tests a bit to use `hg grab` instead of these flags to make rest of the test output consistent. Replaced an entry of `hg graft -O` in doc by `hg grab`.
Thu, 22 Mar 2018 00:56:48 +0100 compat: drop support for Mercurial 4.1
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 22 Mar 2018 00:56:48 +0100] rev 3598
compat: drop support for Mercurial 4.1 This version is over 1 year old and we are dropping support for it.
Thu, 22 Mar 2018 00:50:11 +0100 packaging: mark versiond as devel versions
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 22 Mar 2018 00:50:11 +0100] rev 3597
packaging: mark versiond as devel versions This will help prevent confusion when installing a non-tagged version.
Thu, 22 Mar 2018 00:49:04 +0100 packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 22 Mar 2018 00:49:04 +0100] rev 3596
packaging: merge stable back into default Version have been released.
Thu, 22 Mar 2018 00:47:09 +0100 packaging: mark version as devel version stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 22 Mar 2018 00:47:09 +0100] rev 3595
packaging: mark version as devel version This will help prevent confusion when installing non-tagged version.
Thu, 22 Mar 2018 00:45:47 +0100 Added tag 7.3.0 for changeset e4ac2e2c2086 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 22 Mar 2018 00:45:47 +0100] rev 3594
Added tag 7.3.0 for changeset e4ac2e2c2086
Wed, 21 Mar 2018 16:35:18 +0100 test-compat: merge mercurial-4.2 into mercurial-4.1 mercurial-4.1
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Mar 2018 16:35:18 +0100] rev 3593
test-compat: merge mercurial-4.2 into mercurial-4.1
Wed, 21 Mar 2018 16:32:54 +0100 test-compat: merge mercurial-4.3 into mercurial-4.2 mercurial-4.2
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Mar 2018 16:32:54 +0100] rev 3592
test-compat: merge mercurial-4.3 into mercurial-4.2
Wed, 21 Mar 2018 16:18:31 +0100 test-compat: merge mercurial-4.4 into mercurial-4.3 mercurial-4.3
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Mar 2018 16:18:31 +0100] rev 3591
test-compat: merge mercurial-4.4 into mercurial-4.3
Wed, 21 Mar 2018 16:06:17 +0100 test-compat: merge stable into mercurial-4.4 mercurial-4.4
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Mar 2018 16:06:17 +0100] rev 3590
test-compat: merge stable into mercurial-4.4
Wed, 21 Mar 2018 16:03:46 +0100 branching: merge future 7.3.0 into stable stable 7.3.0
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Mar 2018 16:03:46 +0100] rev 3589
branching: merge future 7.3.0 into stable Release belong to stable
Wed, 21 Mar 2018 15:57:53 +0100 tests: update test output for the stable branch stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Mar 2018 15:57:53 +0100] rev 3588
tests: update test output for the stable branch
Wed, 21 Mar 2018 15:34:29 +0100 debian: add version 7.3.0 to changelog
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Mar 2018 15:34:29 +0100] rev 3587
debian: add version 7.3.0 to changelog
Wed, 21 Mar 2018 15:32:59 +0100 packaging: update version numbers
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Mar 2018 15:32:59 +0100] rev 3586
packaging: update version numbers
Wed, 21 Mar 2018 15:30:06 +0100 changelog: prepare release 7.3.0
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Mar 2018 15:30:06 +0100] rev 3585
changelog: prepare release 7.3.0
Wed, 21 Mar 2018 15:36:10 +0100 tests: updated tested with version
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Mar 2018 15:36:10 +0100] rev 3584
tests: updated tested with version
Wed, 21 Mar 2018 17:03:55 +0530 __init__: show some internationalization love
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 21 Mar 2018 17:03:55 +0530] rev 3583
__init__: show some internationalization love
Wed, 21 Mar 2018 17:04:41 +0530 evolvecmd: show some internationalization love
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 21 Mar 2018 17:04:41 +0530] rev 3582
evolvecmd: show some internationalization love Some outputs are not internationalized because I doubt that they are gonna stay here for long.
Wed, 21 Mar 2018 16:52:46 +0530 utility: make sure prompt text is internationalized
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 21 Mar 2018 16:52:46 +0530] rev 3581
utility: make sure prompt text is internationalized This patch internationlize the prompt text by passing the into mercurial.i18n._
Wed, 21 Mar 2018 17:59:15 +0100 test: do not use revision number
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Mar 2018 17:59:15 +0100] rev 3580
test: do not use revision number This get confused with older version.
Wed, 21 Mar 2018 19:30:51 +0100 compat: use mergetoolopts from commands.py
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Mar 2018 19:30:51 +0100] rev 3579
compat: use mergetoolopts from commands.py Mercurial <= 4.2 do not have cmdutils.py yet.
Wed, 21 Mar 2018 15:24:51 +0100 branching: merge stable into default
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Mar 2018 15:24:51 +0100] rev 3578
branching: merge stable into default Some bugfix that we could use here (also getting ready for a release).
Tue, 20 Mar 2018 18:41:31 +0530 evolve: add a `--stop` flag for `hg evolve` command
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 20 Mar 2018 18:41:31 +0530] rev 3577
evolve: add a `--stop` flag for `hg evolve` command This patch adds a `--stop` flag for `hg evolve` command. The stop flag lets you stop the evolution from where you are and let you move to other things if you want. This fuctionality is great as user can decide to resolve conflicts later on, stop the command execution, do something else and get back once they has time or care about resolving them. As implementation details, it clears the evolvestate, updates to the parent of working directory clearing the uncommitted changes which also deletes the mergestate. A new test file test-evolve-stop.t is added with tests of the new flag added.
Mon, 19 Mar 2018 15:20:40 -0700 obsexchange: make compatible with some unreleased 4.5 versions
Martin von Zweigbergk <martinvonz@google.com> [Mon, 19 Mar 2018 15:20:40 -0700] rev 3576
obsexchange: make compatible with some unreleased 4.5 versions We don't generally care to be compatible with unreleased versions of hg, but this is just a one-line change to be compatible with a range of commits before 158d4ecc03c8 (wireprotoserver: move all wire protocol handling logic out of hgweb, 2018-03-08), so hopefull it can be worth it.
Mon, 19 Mar 2018 15:46:17 -0700 compat: make override of createmarkers work on wrapped function
Martin von Zweigbergk <martinvonz@google.com> [Mon, 19 Mar 2018 15:46:17 -0700] rev 3575
compat: make override of createmarkers work on wrapped function If createmarkers() has been wrapped using functools.partial(), the __code__ attribute won't exist. Fix by unwrapping partial functions. I tried to find another attribute to use as proxy for the "__code__.co_argcount < 6", but there were no new functions or similar added in that commit.
Mon, 19 Mar 2018 11:18:47 -0700 previous/next: add -m short form for --merge
Martin von Zweigbergk <martinvonz@google.com> [Mon, 19 Mar 2018 11:18:47 -0700] rev 3574
previous/next: add -m short form for --merge This matches core's option to `hg update`. This patch also covers `hg next`, but test-check-commit.t only lets me mention one of them.
Sun, 18 Mar 2018 17:29:32 +0530 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 18 Mar 2018 17:29:32 +0530] rev 3573
evolve: handle stabilization of merge changeset with both parents obsoleted This patch adds logic to stabilize an orphan merge changeset having both parents obsoleted. The logic tries to first stabilize the merge changeset on successor of second parent and then stabilize the new changeset formed on the successor of first parent. We are stabilizing on second parent first and then to second parent to preserve the first parent's successor as first parent of the merge changeset. Conflicts can occcur and we can loose processing information, therefore we store a variable in statefile `orphanmerge` which represents whether we are processing a merge changeset with both parents obsoleted. Thanks to Pierre-Yves David for suggesting this way and helping to understand the correctness of this. More rigourous test cases for this will be added in next patch.
Mon, 19 Mar 2018 13:11:55 +0530 state: add __setitem__() for cmdstate class
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 19 Mar 2018 13:11:55 +0530] rev 3572
state: add __setitem__() for cmdstate class Adding __setitem__() will help us in setting the value of variables stored in state files using `state[key] = value` in our code which is very convenient.
Mon, 19 Mar 2018 12:58:31 +0530 evolve: preserve the order of merge parents in `hg evolve --continue`
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 19 Mar 2018 12:58:31 +0530] rev 3571
evolve: preserve the order of merge parents in `hg evolve --continue` This patch makes sure we preserves the order of merge parents in case of `hg evolve --continue`.
Mon, 12 Mar 2018 15:41:51 -0700 topics: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com> [Mon, 12 Mar 2018 15:41:51 -0700] rev 3570
topics: include "operation" metadata in obsmarkers
Mon, 12 Mar 2018 15:51:43 -0700 grab: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com> [Mon, 12 Mar 2018 15:51:43 -0700] rev 3569
grab: include "operation" metadata in obsmarkers
Mon, 12 Mar 2018 15:51:34 -0700 touch: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com> [Mon, 12 Mar 2018 15:51:34 -0700] rev 3568
touch: include "operation" metadata in obsmarkers
Mon, 12 Mar 2018 15:51:26 -0700 split: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com> [Mon, 12 Mar 2018 15:51:26 -0700] rev 3567
split: include "operation" metadata in obsmarkers
Mon, 12 Mar 2018 15:51:17 -0700 prune: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com> [Mon, 12 Mar 2018 15:51:17 -0700] rev 3566
prune: include "operation" metadata in obsmarkers
Mon, 12 Mar 2018 15:51:07 -0700 metaedit: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com> [Mon, 12 Mar 2018 15:51:07 -0700] rev 3565
metaedit: include "operation" metadata in obsmarkers
Mon, 12 Mar 2018 15:50:59 -0700 fold: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com> [Mon, 12 Mar 2018 15:50:59 -0700] rev 3564
fold: include "operation" metadata in obsmarkers
Mon, 12 Mar 2018 15:50:45 -0700 uncommit: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com> [Mon, 12 Mar 2018 15:50:45 -0700] rev 3563
uncommit: include "operation" metadata in obsmarkers
Mon, 12 Mar 2018 15:40:28 -0700 evolve: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com> [Mon, 12 Mar 2018 15:40:28 -0700] rev 3562
evolve: include "operation" metadata in obsmarkers
Mon, 12 Mar 2018 15:50:25 -0700 amend: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com> [Mon, 12 Mar 2018 15:50:25 -0700] rev 3561
amend: include "operation" metadata in obsmarkers This is for the legacy handling support for "hg commit --amend" case. I picked "amend" because it feels more natural than "commit". Besides, and more importantly, that's consistent what core uses.
Fri, 16 Mar 2018 10:22:27 -0700 compat: add wrapper for obsolete.createmarkers() that accepts "operation" arg
Martin von Zweigbergk <martinvonz@google.com> [Fri, 16 Mar 2018 10:22:27 -0700] rev 3560
compat: add wrapper for obsolete.createmarkers() that accepts "operation" arg I want to start passing the operation argument, but hg < 4.3 does not support it, so we need a compat wrapper. For older hg, the operation is simply ignored.
Mon, 12 Mar 2018 23:26:25 -0700 tests: do not glob out fixed dates
Martin von Zweigbergk <martinvonz@google.com> [Mon, 12 Mar 2018 23:26:25 -0700] rev 3559
tests: do not glob out fixed dates Perhaps these dates historically have not been fixed, but they seem to be now. I got tired of not being able to use "run-tests.py -i".
Fri, 16 Mar 2018 17:00:01 +0530 evolve: de-duplicate some function calls
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 16 Mar 2018 17:00:01 +0530] rev 3558
evolve: de-duplicate some function calls _cleanup() was called in continueevolve() and evolve() function too. Let's call it at a single place for both the cases. Also call progresscb() outside of conditionals to call it both times.
Fri, 16 Mar 2018 16:11:22 +0530 evolve: move deletion of evolvestate out of continueevolve() function
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 16 Mar 2018 16:11:22 +0530] rev 3557
evolve: move deletion of evolvestate out of continueevolve() function We need to extract some data at evolve() function from evolvestate.
Fri, 16 Mar 2018 16:04:28 +0530 evolve: load evolvestate before passing to continueevolve()
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 16 Mar 2018 16:04:28 +0530] rev 3556
evolve: load evolvestate before passing to continueevolve() This patch moves some code from continueevolve() to evolve() function so that we have a loaded evolvestate present in the evolve() function for post processing.
Fri, 16 Mar 2018 15:56:05 +0530 evolve: move the handling for non-continue part in else conditional
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 16 Mar 2018 15:56:05 +0530] rev 3555
evolve: move the handling for non-continue part in else conditional This will help us do factor out which operations we want to do for continue, which for non-continue and which operations we want to do for both of them.
Wed, 14 Mar 2018 21:21:10 +0530 evolve: move the logic of continuation handling of `hg evolve` in own fn
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 14 Mar 2018 21:21:10 +0530] rev 3554
evolve: move the logic of continuation handling of `hg evolve` in own fn The function which defines the evolve command is pretty big with all the logic messed up there. It's better to have individual functions for individual uses. The movement of code will help in adding more logic to continue part in clean way. Moreover for implementing `hg continue`, we need all continuation handling in their own functions, so it will help there too.
Fri, 16 Mar 2018 15:24:56 +0530 CHANGELOG: add an entry about next and prev being interactive
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 16 Mar 2018 15:24:56 +0530] rev 3553
CHANGELOG: add an entry about next and prev being interactive
Fri, 16 Mar 2018 13:24:57 +0530 prev: show changeset hash in --dry-run instead of rev numbers
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 16 Mar 2018 13:24:57 +0530] rev 3552
prev: show changeset hash in --dry-run instead of rev numbers rev numbers can change, so it's better to show changeset hash.
Fri, 16 Mar 2018 13:13:21 +0530 prev: prompt user to choose parent in case of multiple parents
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 16 Mar 2018 13:13:21 +0530] rev 3551
prev: prompt user to choose parent in case of multiple parents This patch adds functionality to `hg prev` to prompt user to choose one parent to update when multiple parents exist. Surprisingly there were no tests for this case before this patch, I added one with this patch.
Fri, 16 Mar 2018 12:48:03 +0530 next: cleanup logic around return by returning early
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 16 Mar 2018 12:48:03 +0530] rev 3550
next: cleanup logic around return by returning early In the cmdnext function, there are some conditionals which returns early and some which sets a result value to be returned later. Let's return from all the conditionals early. There are if, elif and else involved, so it's sure we will end up in one of the conditional, each conditional will return, so it's guranteed that we are returning the correct value and returning everytime.
Fri, 16 Mar 2018 12:14:39 +0530 next: prompt user to choose child in ambiguity in `hg next --evolve`
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 16 Mar 2018 12:14:39 +0530] rev 3549
next: prompt user to choose child in ambiguity in `hg next --evolve` This patch makes `hg next --evolve` prompt user to choose a child to evolve and update when multiple of them exists. This is improvement over previous behavior where we used to error out saying ambiguous next unstable changeset and told user to manually use `hg evolve -r rev`. While writing this patch, I am personally very happy to have this feature as I have encountered this stage many times and I wanted `next --evolve` to take care of that. It uses the revselectionprompt thing added in earlier patches.
Fri, 16 Mar 2018 11:56:50 +0530 next: move logic to evolve the children to it's own function
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 16 Mar 2018 11:56:50 +0530] rev 3548
next: move logic to evolve the children to it's own function This patch moves the logic which evolves the children and updates to it in `hg next --evolve` to it's own function as we want to use that again.
Fri, 16 Mar 2018 11:46:47 +0530 next: prompt user to choose a children in case of ambiguity
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 16 Mar 2018 11:46:47 +0530] rev 3547
next: prompt user to choose a children in case of ambiguity This patch adds functionality to prompt user and ask the children to which next should move to incase of multiple childrens. This is a very nice UI because otherwise user has to lookup changeset hash, and then manually do `hg update` to that. In this case we show hash and description so user can choose which one to update easily. It is using the interactive revision choosing functionality added in a previous patch.
Fri, 16 Mar 2018 11:31:13 +0530 next: show changeset hash in `--dry-run` instead of rev numbers
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 16 Mar 2018 11:31:13 +0530] rev 3546
next: show changeset hash in `--dry-run` instead of rev numbers Rev numbers can change, hence we should show rev hash instead of rev numbers in dry-run.
Sun, 18 Mar 2018 01:27:02 +0530 evolve: make sure we consider all cases in if-else
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 18 Mar 2018 01:27:02 +0530] rev 3545
evolve: make sure we consider all cases in if-else The part of code which is touched decides on evolution of merge changeset. We need proper handling of each case there, so before adding logic, let's add conditional for each case so that upcoming patches are easy to understand.
Mon, 19 Mar 2018 14:03:41 +0100 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 19 Mar 2018 14:03:41 +0100] rev 3544
tests: add more cases about stabilization of an orphaned merge commit This patch adds three more cases related to stabilization of orphaned merge commits.
Mon, 19 Mar 2018 13:47:07 +0100 evolve: fix missing negation
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Mar 2018 13:47:07 +0100] rev 3543
evolve: fix missing negation Spotted by Pulkit Goyal.
Mon, 19 Mar 2018 12:01:07 +0100 evolve: clarify message for ambiguous destination from split
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 19 Mar 2018 12:01:07 +0100] rev 3542
evolve: clarify message for ambiguous destination from split Message is a bit long, but should be less scary.
Wed, 14 Mar 2018 18:24:22 +0530 evolve: prompt user to select destination for stabilization in case of split
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 14 Mar 2018 18:24:22 +0530] rev 3541
evolve: prompt user to select destination for stabilization in case of split This patch adds functionality to prompt user to select a revision when there exists multiple stabilization destination because of split on multiple branches. Test are also added for the feature. I am not sure whether this is the best message which we can show, if people have suggestions I will like to improve the messages shown in prompt.
Wed, 14 Mar 2018 18:36:35 +0530 tests: remove some tests which are moved to dedicated files
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 14 Mar 2018 18:36:35 +0530] rev 3540
tests: remove some tests which are moved to dedicated files The tests in test-unstable.t files are now moved to their dedicated file with all the cases to that in that file. Let's delete them from here.
Fri, 16 Mar 2018 11:24:35 +0530 next: factor out the logic to update to changeset in another function
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 16 Mar 2018 11:24:35 +0530] rev 3539
next: factor out the logic to update to changeset in another function This patch moves the logic to update to children changeset during `hg next` in a separate function because we want to re-use the logic when we will prompt user to choose a changeset in case of multiple childrens.
Wed, 14 Mar 2018 17:59:53 +0530 utility: add a function to prompt user to choose a revision
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 14 Mar 2018 17:59:53 +0530] rev 3538
utility: add a function to prompt user to choose a revision This patch adds a utility function to interactively prompt user to choose a revision to proceed in cases when there are multiple revisions which are candidates. The function will be used in `hg evolve`, `hg next`, `hg prev` etc. If user feedback will be good, I plan to move it to core and use it at more possible places.
Wed, 14 Mar 2018 17:20:20 +0530 tests: add a test about evolve stabilizing orphan caused by splits
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 14 Mar 2018 17:20:20 +0530] rev 3537
tests: add a test about evolve stabilizing orphan caused by splits There are some similar tests lying around in the test suite but they are not well arranged. I wanted the test suite to be a goto reference for all the behaviors till the time we get all of them documented.
Mon, 19 Mar 2018 11:36:55 +0100 test: fix output after rev-branch-cache has been merged
Boris Feld <boris.feld@octobus.net> [Mon, 19 Mar 2018 11:36:55 +0100] rev 3536
test: fix output after rev-branch-cache has been merged Mercurial core 2090044a288d added a new revbranchcache part which changed some exchange-related outputs. Glob them to ease merging with old Mercurial versions branches.
Fri, 16 Mar 2018 09:13:33 -0700 cleanup: remove duplicate import of "obsolete"
Martin von Zweigbergk <martinvonz@google.com> [Fri, 16 Mar 2018 09:13:33 -0700] rev 3535
cleanup: remove duplicate import of "obsolete"
Fri, 16 Mar 2018 15:21:05 +0530 previous: fix behavior on obsolete cset when topic is involved (issue5708) stable
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 16 Mar 2018 15:21:05 +0530] rev 3534
previous: fix behavior on obsolete cset when topic is involved (issue5708) This patch fixes the behavior of `hg previous` when done on an obsolete changeset having a successor of different topic. The underlying code is bit messed up, I wanted to split the topic handling to topic extension but I have postponed it to next bug.
Fri, 16 Mar 2018 15:15:17 +0530 previous: add test case when it's broken on obsolete cset stable
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 16 Mar 2018 15:15:17 +0530] rev 3533
previous: add test case when it's broken on obsolete cset This patch adds couple of tests showing `hg previous` is broken on obsolete changeset when the successor has different topic. Upcoming patch will fix this.
Fri, 16 Mar 2018 15:01:44 +0530 prev: fix the breakage of `hg previous` from obsolete cset stable
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 16 Mar 2018 15:01:44 +0530] rev 3532
prev: fix the breakage of `hg previous` from obsolete cset This patch fix the breakage of `hg prev` from obsolete changeset when topic is involved. We get the topicidx of it's succesor and proceed.
Fri, 16 Mar 2018 14:59:10 +0530 prev: add a test case which shows traceback when doing prev on obsolete cset stable
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 16 Mar 2018 14:59:10 +0530] rev 3531
prev: add a test case which shows traceback when doing prev on obsolete cset This patch adds a test which shows how `hg prev` is borken when called from a obsolete changeset and there is an active topic. The next patch will fix that.
Tue, 13 Mar 2018 19:06:14 +0530 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 13 Mar 2018 19:06:14 +0530] rev 3530
tests: add more tests related to stabilization of orphaned merge commit This patch more tests related to stabilization of orphaned merge commit. Stabilization of a merge changeset with both the parents is not supported right now and prints a message on how to do that. Maybe we should do that internally as a part of `hg evolve` but I need to think about this.
Tue, 13 Mar 2018 18:17:50 +0530 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 13 Mar 2018 18:17:50 +0530] rev 3529
evolve: fix stabilization of orphan merge changesets in case of conflicts As demonstrated by tests added in previous patch, if one of the parent of a merge changeset has a new version and merge changeset gets, running `hg evolve` to stabilize that if results in conflicts will lead to lose of other parent of that merge changeset when we resolve conflicts and do `hg evolve --continue`. This patch fixes the behavior, by checking whether we are continuing evolving a merge changeset and if yes, setting the dirstate parents according to that.
Tue, 13 Mar 2018 15:29:35 +0530 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 13 Mar 2018 15:29:35 +0530] rev 3528
tests: add a test file of resolving orphaness of merge changesets This patch adds a new test file named test-evolve-orphan-merge.t which contains test cases when `hg evolve` try to stabilize a merge changeset which was orphan. This file contains 20-30% of all the cases as we have got something to fix before we add tests for rest of the cases. Going by this approach will make sure we don't live unfixed cases in the test file and the test files does not become a pile of hacks which are used to get in state when we fix the bugs.
Tue, 13 Mar 2018 20:44:51 +0530 grab: gracefully handle the case when we try to grab parent of wdir
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 13 Mar 2018 20:44:51 +0530] rev 3527
grab: gracefully handle the case when we try to grab parent of wdir Before this patch, we go all the way down to obsmarker creation logic and gets an error saying that changeset cannot obsolete itself. We should be more smart here and error out early saying we cannot grab that changeset.
Sat, 03 Mar 2018 23:31:46 +0530 grab: move the initialization of pctx variable outside of if-else
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 03 Mar 2018 23:31:46 +0530] rev 3526
grab: move the initialization of pctx variable outside of if-else The pctx variable is used outside of the if-else but it was initialized under the conditional statements. Added test for the case when the initialization inside the if-else broke `hg grab --continue`.
Wed, 14 Mar 2018 02:32:08 +0100 compat: drop hack around http request handling for 4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 14 Mar 2018 02:32:08 +0100] rev 3525
compat: drop hack around http request handling for 4.6 The approach we used in 4.5 works again :-)
Wed, 14 Mar 2018 02:08:53 +0100 obsdiscovery: add compatibility layer to register wireproto command
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 14 Mar 2018 02:08:53 +0100] rev 3524
obsdiscovery: add compatibility layer to register wireproto command Mercurial core 0b18604db95e changed the way permissions are registered.
Wed, 14 Mar 2018 02:21:07 +0100 compat: pass all hgweb dispatch argument to the orig function
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 14 Mar 2018 02:21:07 +0100] rev 3523
compat: pass all hgweb dispatch argument to the orig function This make use compatible with whatever changes on this side.
Wed, 07 Mar 2018 00:00:02 -0500 grab: add short version for continue and abort
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 07 Mar 2018 00:00:02 -0500] rev 3522
grab: add short version for continue and abort
Fri, 23 Feb 2018 20:27:17 +0800 obsdiscovery: include units in ui.progress() calls (issue5773)
Anton Shestakov <av6@dwimlabs.net> [Fri, 23 Feb 2018 20:27:17 +0800] rev 3521
obsdiscovery: include units in ui.progress() calls (issue5773)
Sun, 04 Mar 2018 20:19:19 -0500 tests: commit tests changes missing in the previous changeset
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 04 Mar 2018 20:19:19 -0500] rev 3520
tests: commit tests changes missing in the previous changeset (guess who forgot to amend)...
Sun, 04 Mar 2018 11:34:49 -0500 obslog: add the operation to the Obslog output
Boris Feld <boris.feld@octobus.net> [Sun, 04 Mar 2018 11:34:49 -0500] rev 3519
obslog: add the operation to the Obslog output The operation is helpful when debugging a case where we don't know how we ended up in this case while effect-flag are useful to understand what semantic changes happens to a changeset. Add the operation when displaying an obs-marker in the following form: `rewritten as X using amend` The other proposal is interesting but seems harder to internationalize and might requires update each time we introduce new operation: `Amended as X` Let's use the first proposal right now.
Tue, 19 Dec 2017 13:15:00 -0600 serverminitopic: attempt to fix assertion for repoview in branchmap
Sean Farley <sean@farley.io> [Tue, 19 Dec 2017 13:15:00 -0600] rev 3518
serverminitopic: attempt to fix assertion for repoview in branchmap This seems fine since we topic never impact public only caches.
Sun, 04 Mar 2018 17:41:45 -0500 compat: register a version of 'obsfatedata' template that works with 4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 04 Mar 2018 17:41:45 -0500] rev 3517
compat: register a version of 'obsfatedata' template that works with 4.6 Since showlist is deprecated, let us use compatlist.
Sun, 04 Mar 2018 17:09:41 -0500 compat: register a version of 'troubles' template that works with 4.6 API
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 04 Mar 2018 17:09:41 -0500] rev 3516
compat: register a version of 'troubles' template that works with 4.6 API Since showlist is deprecated, let us use compatlist.
Sun, 04 Mar 2018 17:07:53 -0500 exthelper: add support for "requires" argument for template keyword
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 04 Mar 2018 17:07:53 -0500] rev 3515
exthelper: add support for "requires" argument for template keyword This will help use to support the new template API.
Sat, 03 Mar 2018 23:17:26 -0500 compat: add compat layer for date related functions
Boris Feld <boris.feld@octobus.net> [Sat, 03 Mar 2018 23:17:26 -0500] rev 3514
compat: add compat layer for date related functions
Sat, 03 Mar 2018 22:25:24 -0500 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 03 Mar 2018 22:25:24 -0500] rev 3513
branching: merge with stable
Sat, 03 Mar 2018 22:12:35 -0500 compat: more straight forward alias for old template names
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 03 Mar 2018 22:12:35 -0500] rev 3512
compat: more straight forward alias for old template names The template registration have significantly changed in core:7b74afec6772. We take simpler approach to define the alias in a way that works for all versions.
Tue, 05 Dec 2017 20:45:46 -0800 serverminitopic: fix wrong object being passed to phase stable
Sean Farley <sean@farley.io> [Tue, 05 Dec 2017 20:45:46 -0800] rev 3511
serverminitopic: fix wrong object being passed to phase
Fri, 02 Mar 2018 19:33:20 -0500 legacy: respect explicit config for server.bundle1 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 02 Mar 2018 19:33:20 -0500] rev 3510
legacy: respect explicit config for server.bundle1 Unconditionally disabling bundle1 is a problem for larger hosting website. We adopt a less aggressive approach and only disable it the default would be used.
Fri, 02 Mar 2018 16:31:08 -0500 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 02 Mar 2018 16:31:08 -0500] rev 3509
branching: merge with stable
Fri, 02 Mar 2018 16:30:48 -0500 compat: only wrap wireprotoserver function if they exist
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 02 Mar 2018 16:30:48 -0500] rev 3508
compat: only wrap wireprotoserver function if they exist Older version does not need the wrapping so everything should be fine.
Fri, 02 Mar 2018 16:07:33 -0500 pure: make sure what we expect to be list are list stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 02 Mar 2018 16:07:33 -0500] rev 3507
pure: make sure what we expect to be list are list In the pure version, some of these object would be generator.
Mon, 26 Feb 2018 13:59:30 +0100 evolve: update code for not implicitly converting ctx to revision
Boris Feld <boris.feld@octobus.net> [Mon, 26 Feb 2018 13:59:30 +0100] rev 3506
evolve: update code for not implicitly converting ctx to revision Mercurial core 38f480502043 removed the capacity to implicitly convert contexts to revisions using `int(ctx)`. Update Evolve code to explicitly call rev instead.
Fri, 23 Feb 2018 11:02:59 +0100 legacy-push: fix the code forbidding legacy obsmarkers pulling
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 23 Feb 2018 11:02:59 +0100] rev 3505
legacy-push: fix the code forbidding legacy obsmarkers pulling changeset e69e65b2b4a9 in code remove a key try/except. We reintroduce it for compatibility.
Wed, 21 Feb 2018 17:45:50 +0100 updatecaches: handle any new parameters to the method
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 21 Feb 2018 17:45:50 +0100] rev 3504
updatecaches: handle any new parameters to the method
Wed, 07 Feb 2018 13:42:30 +0530 evolvecmd: fix broken `evolve --continue` ran after `next --evolve`
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 07 Feb 2018 13:42:30 +0530] rev 3503
evolvecmd: fix broken `evolve --continue` ran after `next --evolve` Recent series broke `evolve --continue`in cases when run after `hg next --evolve`. The previous patch adds test demonstarting the broken behaviour, this patch fixes that by storing the command which leads us to evolve --continue in the evolvestate.
Wed, 07 Feb 2018 22:41:30 +0530 tests: add test showing `evolve --continue` after `next --evolve` is broken
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 07 Feb 2018 22:41:30 +0530] rev 3502
tests: add test showing `evolve --continue` after `next --evolve` is broken Recent series fixing `hg evolve --continue` break the continue functionality after a conflicting `hg next --evolve`. This patch adds a test to demonstrate that. It will be fixed in the upcoming patch.
Wed, 17 May 2017 09:39:15 +0200 color: add some colors to evolve command itself
Boris Feld <boris.feld@octobus.net> [Wed, 17 May 2017 09:39:15 +0200] rev 3501
color: add some colors to evolve command itself
Wed, 14 Feb 2018 14:53:43 +0100 wireproto: fix *_capabilities for change of API types
Boris Feld <boris.feld@octobus.net> [Wed, 14 Feb 2018 14:53:43 +0100] rev 3500
wireproto: fix *_capabilities for change of API types Mercurial commit 2f7290555c96 introduced new types for *_capabilities, update the code to use them.
Wed, 14 Feb 2018 09:46:56 +0100 obsfate: fix changeset description diff computing
Boris Feld <boris.feld@octobus.net> [Wed, 14 Feb 2018 09:46:56 +0100] rev 3499
obsfate: fix changeset description diff computing Mercurial core 8b6dd3922f70 changed the mdiff.unidiff API. Add a new compat method for all supported Mercurial versions.
Tue, 30 Jan 2018 15:11:35 +0530 evolve: add comptability to read old evolvestate files
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 30 Jan 2018 15:11:35 +0530] rev 3498
evolve: add comptability to read old evolvestate files When a user runs `hg evolve` with old evolve where we used to write evolvestate the old ways i.e. without using cbor, and faces conflicts, the evolve is interrupted. If the user updates evolve before completing the evolve, that can result in traceback as the new evolve cannot read the old evolvestate file. The previous patch added function to read old evolvestate file and this patch uses that when we encounter the above mentioned case.
Tue, 30 Jan 2018 15:02:40 +0530 state: bring back the function to read old evolvestate files
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 30 Jan 2018 15:02:40 +0530] rev 3497
state: bring back the function to read old evolvestate files Before introduction of this nice cmdstate file wrapper, we had individual methods to write data to evolvestate file. Let's bring back the function which used to read data from the old evolvestae file so that we can use it in next patch for BC purposes.
Tue, 30 Jan 2018 00:02:29 +0530 evolve: add entry in CHANGELOG about fixed behavior of `hg evolve --continue`
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 30 Jan 2018 00:02:29 +0530] rev 3496
evolve: add entry in CHANGELOG about fixed behavior of `hg evolve --continue`
Tue, 30 Jan 2018 00:00:45 +0530 evolve: store the skippedrevs in evolvestate
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 30 Jan 2018 00:00:45 +0530] rev 3495
evolve: store the skippedrevs in evolvestate While doing `hg evolve`, there are some revs which are skipped as they can't be evolved. Before this patch, we did not store this information in evolvestate and neither they were evolved, so `hg evolve --continue` will again try to stabilize those revisions. As much time as we run `hg evolve --continue`, this will happen which is not a good behavior. This patch adds a skippedrevs list to evolvestate where we store such revisions so that we don't try to stabilize them again.
Mon, 29 Jan 2018 00:09:44 +0530 evolve: show the updated working directory after `hg evolve --continue`
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 29 Jan 2018 00:09:44 +0530] rev 3494
evolve: show the updated working directory after `hg evolve --continue` `hg evolve` shows a nice message about the new working directory when the evolve ends but if the evolve is interrupted by conflicts and you continue the evolve resolving the conflicts, that nice message is lost. Let's have that in case of `--continue` too.
Sun, 28 Jan 2018 23:49:46 +0530 evolve: make `hg evolve --continue` respect `--confirm`
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 28 Jan 2018 23:49:46 +0530] rev 3493
evolve: make `hg evolve --continue` respect `--confirm` Previous patch added capability to `hg evolve --continue` to continue the rest of the stack, not just the current revision but that was missing respecting the `--confirm` flag which user passed earlier. This patch makes sure we respect the `--confirm` flag.
Wed, 24 Jan 2018 13:20:18 +0530 evolve: make `--continue` continue evolving all remaining revisions
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 24 Jan 2018 13:20:18 +0530] rev 3492
evolve: make `--continue` continue evolving all remaining revisions This patch makes `hg evolve --continue` to continue all remaining revisions instead of just the current conflicted one. There are some still improvements required to this behavior after which the CHANGELOG entry will be added.
Sun, 04 Feb 2018 20:58:03 +0530 tests: add more tests to test-evolve-continue.t
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 04 Feb 2018 20:58:03 +0530] rev 3491
tests: add more tests to test-evolve-continue.t This patch adds more tests for `hg evolve --continue`. The tests demonstrates how the continuation handling of hg evolve is broken and the later patches fixes that handling.
Mon, 22 Jan 2018 18:52:27 +0530 evolve: handle case when newnode can be None while continuing evolve
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 22 Jan 2018 18:52:27 +0530] rev 3490
evolve: handle case when newnode can be None while continuing evolve There can be case when `hg evolve --continue` is run, when working directory is clean and there is nothing to be included in the new commit. Let's make sure we handle such cases correctly and obsolete the node which is evolved with parent of wdir as successor. This is same as what rebase does.
Sun, 28 Jan 2018 19:28:08 +0530 tests: add tests for `hg evolve --continue`
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 28 Jan 2018 19:28:08 +0530] rev 3489
tests: add tests for `hg evolve --continue` This patch adds a new test file containing tests for `hg evolve --continue`. The test file still does not contains all the tests related to `hg evolve --continue` as one of the case is broken which needs to be fixed first. The case is when resolving a conflicting evolve results in empty wdir. Next patch will fix the traceback and then a later patch will add more tests.
Tue, 06 Feb 2018 13:00:28 +0100 merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 06 Feb 2018 13:00:28 +0100] rev 3488
merge with stable
Sun, 04 Feb 2018 21:05:03 +0530 CHANGELOG: add an entry about resolve showing how to continue evolve
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 04 Feb 2018 21:05:03 +0530] rev 3487
CHANGELOG: add an entry about resolve showing how to continue evolve
Sun, 21 Jan 2018 16:55:02 -0500 test: explicitly run HGEDITOR shell command with `sh` stable
Matt Harbison <matt_harbison@yahoo.com> [Sun, 21 Jan 2018 16:55:02 -0500] rev 3486
test: explicitly run HGEDITOR shell command with `sh` Otherwise Windows pops up the "What program do you want to use to open this?" dialog.
Sun, 21 Jan 2018 16:46:31 -0500 test: conditionalize blackbox output for Windows stable
Matt Harbison <matt_harbison@yahoo.com> [Sun, 21 Jan 2018 16:46:31 -0500] rev 3485
test: conditionalize blackbox output for Windows
Mon, 05 Feb 2018 14:36:34 +0100 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 05 Feb 2018 14:36:34 +0100] rev 3484
branching: merge with stable
Mon, 05 Feb 2018 20:58:46 +0900 compat: add wrapper for logcmdutil functions stable
Yuya Nishihara <yuya@tcha.org> [Mon, 05 Feb 2018 20:58:46 +0900] rev 3483
compat: add wrapper for logcmdutil functions These classes and functions were bulk-renamed at hg c8e2d6ed1f9e.
Mon, 22 Jan 2018 18:35:50 +0530 evolve: store the revs to be processed in the evolvestate
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 22 Jan 2018 18:35:50 +0530] rev 3482
evolve: store the revs to be processed in the evolvestate This will help us in getting a full functional `hg evolve` where `hg evolve --continue` does not only continue one changeset.
Mon, 22 Jan 2018 18:18:11 +0530 evolve: store the replacements in the evolvestate
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 22 Jan 2018 18:18:11 +0530] rev 3481
evolve: store the replacements in the evolvestate This will greatly help when we will be implementing `hg evolve --abort`.
Mon, 22 Jan 2018 18:13:52 +0530 evolve: store the target category in evolvestate
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 22 Jan 2018 18:13:52 +0530] rev 3480
evolve: store the target category in evolvestate
Mon, 22 Jan 2018 17:54:27 +0530 evolvecmd: use the evolvestate object passed as argument in _solveunstable
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 22 Jan 2018 17:54:27 +0530] rev 3479
evolvecmd: use the evolvestate object passed as argument in _solveunstable Earlier if get a merge conflict, we used to initialize a new evolvestate object and used to save it. Let's start using the state object which we get in as argument as that will contain more data about the state.
Mon, 22 Jan 2018 17:44:57 +0530 evolvecmd: pass evolvestate object to _solve* functions
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 22 Jan 2018 17:44:57 +0530] rev 3478
evolvecmd: pass evolvestate object to _solve* functions This patchs adds an argument evolvestate to _solve* functions. This will help us in having one evolvestate object which we can pass around various functions and keep storing what's going on.
Mon, 22 Jan 2018 17:29:56 +0530 evolve: create a state object in all case
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 22 Jan 2018 17:29:56 +0530] rev 3477
evolve: create a state object in all case Let's create a state object even when we are not in the continue mode. This will help us passing the state object to rest of the functions.
Sun, 04 Feb 2018 14:29:18 +0100 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 04 Feb 2018 14:29:18 +0100] rev 3476
branching: merge with stable
Fri, 02 Feb 2018 13:59:33 +0530 grab: preserve phase of the grabbed changeset
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 02 Feb 2018 13:59:33 +0530] rev 3475
grab: preserve phase of the grabbed changeset This patch fixes the wrong behavior of loosing secret phase of the grabbed changeset.
Fri, 02 Feb 2018 13:45:47 +0530 tests: add a test showing grabbing of secret changeset turn it into draft
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 02 Feb 2018 13:45:47 +0530] rev 3474
tests: add a test showing grabbing of secret changeset turn it into draft This patch adds a test showing wrong behavior of `hg grab` command which looses the secret phase while grabbing a secret changeset.
Fri, 02 Feb 2018 15:37:00 +0530 grab: add grab info to cmdutil.afterresolvedstates
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 02 Feb 2018 15:37:00 +0530] rev 3473
grab: add grab info to cmdutil.afterresolvedstates This will help us in showing how to continue the grab when user resolves all the conflicts.
Sat, 27 Jan 2018 21:15:27 +0530 evolve: add evolve info to cmdutil.afterresolvedstates
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 27 Jan 2018 21:15:27 +0530] rev 3472
evolve: add evolve info to cmdutil.afterresolvedstates Adding evolve info to cmdutil.afterresolvedstate will improve the ui when we run into merge conflicts while evolving. Once we resolve all the conflicts using `hg resolve`, this will show a message saying "continue: hg evolve --continue". Other extensions like rebase and shelve also use it and it's very helpful.
Mon, 29 Jan 2018 17:32:08 +0100 doc: add link to roadmap stable
Boris Feld <boris.feld@octobus.net> [Mon, 29 Jan 2018 17:32:08 +0100] rev 3471
doc: add link to roadmap Add a link to the Evolution roadmap in the main page of the documentation.
Fri, 19 Jan 2018 19:32:34 +0530 evolve: move the evolve command to evolvecmd.py
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 19 Jan 2018 19:32:34 +0530] rev 3470
evolve: move the evolve command to evolvecmd.py This patch moves finishes the code movement by moving the evolve command to evolvecmd.py.
Sun, 21 Jan 2018 20:33:39 +0530 evolve: move _orderrevs() function evolvecmd.py
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 21 Jan 2018 20:33:39 +0530] rev 3469
evolve: move _orderrevs() function evolvecmd.py _orderrevs() is a function which is used to order the revs in which the instability needs to be solved if we have multiple revisions to resolve.
Sun, 21 Jan 2018 20:28:06 +0530 evolve: move builddependencies() and _singlesuccessor() to utility module
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 21 Jan 2018 20:28:06 +0530] rev 3468
evolve: move builddependencies() and _singlesuccessor() to utility module The builddependencies() and _singlesuccessor() function are very useful functions and can be used at a lot of places. They are also used in topic extension also, so let's move them to utility. However moving them to utility won't help anything in the topic extension.
Fri, 19 Jan 2018 17:29:48 +0530 utility: move MultipleSuccessorsError from __init__.py
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 19 Jan 2018 17:29:48 +0530] rev 3467
utility: move MultipleSuccessorsError from __init__.py The MultipleSuccessorsError is required in multiple modules in upcoming patches, so let's move it to utility first.
Fri, 19 Jan 2018 16:44:00 +0530 evolvecmd: move more core from __init__.py to evolvecmd.py
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 19 Jan 2018 16:44:00 +0530] rev 3466
evolvecmd: move more core from __init__.py to evolvecmd.py We are done with moving helper code, we will now be moving the evolve command in the new module.
Fri, 19 Jan 2018 16:00:21 +0530 evolvecmd: move code from __init__.py to evolvecmd.py
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 19 Jan 2018 16:00:21 +0530] rev 3465
evolvecmd: move code from __init__.py to evolvecmd.py
Fri, 19 Jan 2018 15:55:38 +0530 evolvecmd: move more code from __init__.py to evolvecmd.py
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 19 Jan 2018 15:55:38 +0530] rev 3464
evolvecmd: move more code from __init__.py to evolvecmd.py We are now very close to have most of the evolve related code in evolvecmd.py.
Fri, 19 Jan 2018 15:22:28 +0530 evolvecmd: move more chunks of code from __init__.py to evolvecmd.py
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 19 Jan 2018 15:22:28 +0530] rev 3463
evolvecmd: move more chunks of code from __init__.py to evolvecmd.py
Fri, 19 Jan 2018 15:04:12 +0530 evolvecmd: move more functions from __init__.py to evolvecmd.py
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 19 Jan 2018 15:04:12 +0530] rev 3462
evolvecmd: move more functions from __init__.py to evolvecmd.py If things are looking ugly, hold on.
Fri, 19 Jan 2018 14:42:46 +0530 evolvecmd: introduce a new module to handle `hg evolve` related code
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 19 Jan 2018 14:42:46 +0530] rev 3461
evolvecmd: introduce a new module to handle `hg evolve` related code __init__.py is to cluttered with wrapping and all, it's better to move code related to evolve command to new a module which will help us in great refactoring and introducing nice and better flow of data through functions. There is a temporary import cycle is introduced which will be fixed in the series.
Thu, 18 Jan 2018 16:57:19 +0530 evolve: remove not required calls to phases.retractboundary()
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 18 Jan 2018 16:57:19 +0530] rev 3460
evolve: remove not required calls to phases.retractboundary() To make sure phases are preserved during evolve, we started using the phases.new-commit config option. Now we don't need to call phases.retractboundary(). Let's remove the redundant code.
Tue, 16 Jan 2018 17:14:32 +0530 evolve: store the replacements occurred during `hg evolve` at top level
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 16 Jan 2018 17:14:32 +0530] rev 3459
evolve: store the replacements occurred during `hg evolve` at top level This patch starts storing the replacements made during the `hg evolve` command. The current dictionary is not used anywhere but will be used in future as we want to introduce abort functionality, so we want to delay writing of obsmarkers, storing these exchanges in statefile etc.
Sat, 27 Jan 2018 16:13:19 +0530 evolve: make the _solve* functions return a tuple
Pulkit Goyal <7895pulkit@gmail.com> [Sat, 27 Jan 2018 16:13:19 +0530] rev 3458
evolve: make the _solve* functions return a tuple This patch makes _solve* functions return a tuple which will contain information about whether we were able to solve the instability and if yes, then what was the newnode. For more details about tuple, look the fn docs added. There was some refactoring required in next command because of change in return values. This also leds to omitting the wdir update message in case of dry-run which is good.
Wed, 17 Jan 2018 19:12:32 +0530 evolvestate: rename the file to state.py and class name to cmdstate
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 17 Jan 2018 19:12:32 +0530] rev 3457
evolvestate: rename the file to state.py and class name to cmdstate The evolvestate.py and the evolvestate class in it were introduced to help `hg evolve` grow continue and abort options. But the class and it's API can be easily used to store state information for other state files like we stored the information for grab state in the previous commit. Let's rename the the file and class.
Fri, 26 Jan 2018 17:55:16 +0100 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 26 Jan 2018 17:55:16 +0100] rev 3456
branching: merge with stable
Wed, 24 Jan 2018 09:55:12 -0800 update: show "use 'hg evolve' to..." hint iff evolve command enabled stable
Martin von Zweigbergk <martinvonz@google.com> [Wed, 24 Jan 2018 09:55:12 -0800] rev 3455
update: show "use 'hg evolve' to..." hint iff evolve command enabled Before this patch, one had to enable *all* commands (by including "allnewcommands" in the experimental.evolution config) for the hint to be shown.
Thu, 25 Jan 2018 17:29:21 -0800 obslog: drop period from summary line in accordance with convention
Martin von Zweigbergk <martinvonz@google.com> [Thu, 25 Jan 2018 17:29:21 -0800] rev 3454
obslog: drop period from summary line in accordance with convention
Thu, 11 Jan 2018 20:03:20 +0530 grab: add a command to grab a commit and update to it
Pulkit Goyal <7895pulkit@gmail.com> [Thu, 11 Jan 2018 20:03:20 +0530] rev 3453
grab: add a command to grab a commit and update to it This patch adds anew command `hg grab` which will pick a commit and put it on the top of the working directory parent and updates to it. Earlier grab was an alias for `hg rebase -r <rev> -d .` which is now deleted to make sure `hg grab` resolves to the grab command and that alias. Continuing interrupted grab functionality is also there using the evolvestate class. Tests are also added for the new introduced command.
Mon, 22 Jan 2018 14:10:59 +0530 amend: query the wdir parent after taking lock (issue5266) stable
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 22 Jan 2018 14:10:59 +0530] rev 3452
amend: query the wdir parent after taking lock (issue5266) If we query wdir parent without taking a lock, that can lead to bugs because the wdir parent can change is another process has changed the wdir parent. One such example of this was issue 5266. When a user is running amend and that amend is waiting for commit message, the user runs another amend which waits for lock. The second amend is waiting for lock, but has already read the description from the parent of working directory to use. Once the first amend completes the wdir parent changes but we still have the description from an old wdir parent. This patch fixes the bug by querying the description after taking lock. Attempts were made to add test for this but the results were unstable because they depend on time in which lock is released.
Mon, 22 Jan 2018 13:44:32 +0530 fold: make sure we move bookmarks after folding (issue5772) stable
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 22 Jan 2018 13:44:32 +0530] rev 3451
fold: make sure we move bookmarks after folding (issue5772) The rewriteutil.rewrite() API currently only handles moving bookmark from a old node to new node. In case on fold, we have multiple old nodes, from where a bookmark move is possible. The rewriteutil.rewrite() API is used by another commands also and it's not good to plug in some logic there. This patch handles bookmark movement from all the old nodes to the new node.
Mon, 22 Jan 2018 13:33:58 +0530 tests: add a test showing bookmark not moving in-case of `hg fold` stable
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 22 Jan 2018 13:33:58 +0530] rev 3450
tests: add a test showing bookmark not moving in-case of `hg fold` This patch adds a test showing that bookmark is not moved when doing `hg fold`. This test represents issue 5772.
(0) -3000 -1000 -960 tip