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.
(0) -3000 -1000 -300 -100 -50 -28 +28 +50 +100 +300 +1000 tip