2018-08-01 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
2018-07-31 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
2018-07-31 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.
2018-07-23 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
2018-07-31 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.
2018-07-31 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
2018-07-31 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.
2018-07-31 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
2018-07-31 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.
2018-07-31 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
2018-07-31 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.
2018-07-31 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.
2018-07-25 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.
2018-07-25 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.
2018-07-25 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.
2018-07-25 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.
2018-07-31 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
2018-07-25 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 :)
2018-07-25 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.
2018-07-25 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.
2018-07-25 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).
2018-05-25 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
2018-05-25 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
2018-05-25 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
2018-05-22 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
2018-05-25 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
2018-05-22 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
2018-05-22 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
2018-05-22 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
2018-05-22 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
2018-05-22 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
2018-05-22 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
2018-05-22 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
2018-05-22 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.
2018-05-22 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
2018-07-26 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.
2018-07-20 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.
2018-06-07 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.
2018-07-18 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).
2018-07-08 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.
2018-07-08 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.
2018-07-08 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.
2018-07-08 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.
2018-07-08 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.
2018-07-06 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
2018-06-17 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.
2018-06-17 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
2018-06-17 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
2018-06-17 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.
2018-06-17 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.
2018-06-17 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.
2018-06-17 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.
2018-06-17 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.
2018-06-16 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.
2018-06-16 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.
2018-06-16 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.
2018-06-16 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.
2018-06-16 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.
2018-06-16 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.
2018-06-16 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.
(0) -3000 -1000 -300 -100 -60 +60 +100 +300 +1000 tip