Thu, 07 Nov 2019 19:46:05 +0100 readme: update contribution guide stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 07 Nov 2019 19:46:05 +0100] rev 4922
readme: update contribution guide We move to heptapod !
Thu, 07 Nov 2019 10:29:03 +0100 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 07 Nov 2019 10:29:03 +0100] rev 4921
branching: merge with stable
Sat, 26 Oct 2019 22:44:06 +0700 docs: remove --all from hg evolve, since it's been the default for some time stable
Anton Shestakov <av6@dwimlabs.net> [Sat, 26 Oct 2019 22:44:06 +0700] rev 4920
docs: remove --all from hg evolve, since it's been the default for some time
Sat, 26 Oct 2019 22:43:06 +0700 docs: typo in user-guide.rst stable
Anton Shestakov <av6@dwimlabs.net> [Sat, 26 Oct 2019 22:43:06 +0700] rev 4919
docs: typo in user-guide.rst
Mon, 04 Nov 2019 14:58:58 -0800 obslog: don't overwrite {rev} keyword from changeset context
Martin von Zweigbergk <martinvonz@google.com> [Mon, 04 Nov 2019 14:58:58 -0800] rev 4918
obslog: don't overwrite {rev} keyword from changeset context Now that we have the whole changeset in the formatter context, there's no need to explicitly add {rev}. We should also deprecate the {shortdescription} keyword since it's no longer needed, but I don't know how to do that.
Mon, 04 Nov 2019 14:31:08 -0800 obslog: make changeset available to templater
Martin von Zweigbergk <martinvonz@google.com> [Mon, 04 Nov 2019 14:31:08 -0800] rev 4917
obslog: make changeset available to templater obslog templating currently has very limited support for templating the precursor changeset (when available). The only available keywords are {node}, {rev}, and {shortdescription}. This patch makes the entire changeset available to the templater by passing it to formatter.context(). That function has been available since Mercurial 4.2.
Wed, 16 Oct 2019 11:10:04 -0700 tests: simplify by pruning unwanted changesets a little earlier
Martin von Zweigbergk <martinvonz@google.com> [Wed, 16 Oct 2019 11:10:04 -0700] rev 4916
tests: simplify by pruning unwanted changesets a little earlier The pruned commits are not relevant to the test case, so let's clean them up at the end of the previous test case instead of part-way through the next one.
Fri, 01 Nov 2019 17:54:09 +0700 evolve: use more often seen metavariables in command synopsis strings stable
Anton Shestakov <av6@dwimlabs.net> [Fri, 01 Nov 2019 17:54:09 +0700] rev 4915
evolve: use more often seen metavariables in command synopsis strings Also use ellipsis when multiple options are acceptable.
Fri, 01 Nov 2019 17:52:43 +0700 topic: add more options to command synopsis string stable
Anton Shestakov <av6@dwimlabs.net> [Fri, 01 Nov 2019 17:52:43 +0700] rev 4914
topic: add more options to command synopsis string
Fri, 11 Oct 2019 16:53:52 +0200 debian: also build with python3 stable
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 11 Oct 2019 16:53:52 +0200] rev 4913
debian: also build with python3 We build with Python 3 along with Python 2. The binary package will contain the extension for both python version. This is to ease transition until the mercurial package in Debian uses Python 3. The documentation is still built with Python 2 because it needs Mercurial (which is currently Python 2).
Fri, 18 Oct 2019 10:17:53 +0200 debian: update debhelper compat stable
Denis Laxalde <denis@laxalde.org> [Fri, 18 Oct 2019 10:17:53 +0200] rev 4912
debian: update debhelper compat Level before 9 are deprecated says debhelper 12. Upgrade to 10, which is available in Debian oldstable and old Ubuntu releases to be conservative (and since we probably don't need more).
Thu, 17 Oct 2019 20:33:02 +0200 debian: make it possible to by-pass doc build stable
Denis Laxalde <denis@laxalde.org> [Thu, 17 Oct 2019 20:33:02 +0200] rev 4911
debian: make it possible to by-pass doc build
Tue, 15 Oct 2019 11:39:58 +0200 debian: define extend-diff-ignore for dpkg-source stable
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 15 Oct 2019 11:39:58 +0200] rev 4910
debian: define extend-diff-ignore for dpkg-source This makes it possible to build the source package from a hg checkout (and a sdist) by having dpkg-source ignore files not distributed in sdist.
Fri, 11 Oct 2019 17:05:37 +0200 debian: use pybuild and dh_sphinxdoc stable
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 11 Oct 2019 17:05:37 +0200] rev 4909
debian: use pybuild and dh_sphinxdoc Use pybuild because it's kind of standard nowadays. Use sphinxdoc debhelper to have a Depends: libjs-sphinxdoc and common files (JS/CSS) symlinked.
Tue, 15 Oct 2019 11:41:22 +0200 debian: mark 9.2.1-1 as released stable
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 15 Oct 2019 11:41:22 +0200] rev 4908
debian: mark 9.2.1-1 as released
Sat, 19 Oct 2019 10:42:09 -0700 obsexchange: delete dead code for old exchange protocol
Martin von Zweigbergk <martinvonz@google.com> [Sat, 19 Oct 2019 10:42:09 -0700] rev 4907
obsexchange: delete dead code for old exchange protocol Dead since 79a926b557f1 (compat: drop support for older exchange protocol, 2017-10-25).
Wed, 23 Oct 2019 01:14:42 +0200 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 23 Oct 2019 01:14:42 +0200] rev 4906
branching: merge with stable
Wed, 23 Oct 2019 01:11:13 +0200 branching: merge the stable branch with the mercurial-5.1 branch mercurial-5.1
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 23 Oct 2019 01:11:13 +0200] rev 4905
branching: merge the stable branch with the mercurial-5.1 branch This revert all the test changes to match the expected output for mercurial 5.1.
Thu, 10 Oct 2019 08:22:41 +0700 tests: add the new "-r" bit to the usual merge hint stable
Anton Shestakov <av6@dwimlabs.net> [Thu, 10 Oct 2019 08:22:41 +0700] rev 4904
tests: add the new "-r" bit to the usual merge hint CORE-TEST-OUTPUT-UPDATE: 8197b395710e
Wed, 23 Oct 2019 01:07:58 +0200 test-output: reinstalled test change for 5.2 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 23 Oct 2019 01:07:58 +0200] rev 4903
test-output: reinstalled test change for 5.2 This effectively reinstall: * 8345b852cd4f * e804d5a7c193 * 62b60fc1983d * 2d85de79ead8 This mean backing out the following backout changeset: * 2eab4363fc62 * c1cc5b1f813a * 015cdd3fa469 * 3ba1c9dbf462
Wed, 23 Oct 2019 00:58:56 +0200 test-compat: opening test compatibility branch for mercurial 5.1 mercurial-5.1
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 23 Oct 2019 00:58:56 +0200] rev 4902
test-compat: opening test compatibility branch for mercurial 5.1 5.2 has a release candidate.
Thu, 17 Oct 2019 21:03:19 +0200 py3: encode/decode with going through ui in rst directive stable
Denis Laxalde <denis@laxalde.org> [Thu, 17 Oct 2019 21:03:19 +0200] rev 4901
py3: encode/decode with going through ui in rst directive mercurial's ui wants bytes, doctutils wants text.
Fri, 11 Oct 2019 16:51:13 +0200 py3: fix setup.py --version stable
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 11 Oct 2019 16:51:13 +0200] rev 4900
py3: fix setup.py --version Before: $ python3 setup.py --version b'9.3.0.dev' After: $ python3 setup.py --version 9.3.0.dev
Wed, 16 Oct 2019 18:12:53 +0200 rewind: preserve date stable
Manuel Jacob <me@manueljacob.de> [Wed, 16 Oct 2019 18:12:53 +0200] rev 4899
rewind: preserve date
Wed, 09 Oct 2019 21:22:03 +0700 metaedit: don't change commit date by default (issue5994) stable
Anton Shestakov <av6@dwimlabs.net> [Wed, 09 Oct 2019 21:22:03 +0700] rev 4898
metaedit: don't change commit date by default (issue5994) We deliberately unset devel.default-date to allow hg commands to see the real system date, that demonstrates that metaedit doesn't fall back to system date for any of these commands.
Wed, 09 Oct 2019 20:16:38 +0700 tests: simply use testlib/common.sh in test-metaedit.t stable
Anton Shestakov <av6@dwimlabs.net> [Wed, 09 Oct 2019 20:16:38 +0700] rev 4897
tests: simply use testlib/common.sh in test-metaedit.t
Wed, 09 Oct 2019 20:12:54 +0700 tests: turn glog shell function into an alias in test-metaedit.t stable
Anton Shestakov <av6@dwimlabs.net> [Wed, 09 Oct 2019 20:12:54 +0700] rev 4896
tests: turn glog shell function into an alias in test-metaedit.t Mostly because we already have an alias and because creating an alias is the usual way to customize log -G in tests.
Wed, 09 Oct 2019 20:07:42 +0700 tests: clean up test-metaedit.t stable
Anton Shestakov <av6@dwimlabs.net> [Wed, 09 Oct 2019 20:07:42 +0700] rev 4895
tests: clean up test-metaedit.t Mostly just artifacts from the times when it was one big test-evolve.t. All completely unused nowadays.
Sun, 06 Oct 2019 02:30:12 -0400 help: categorizing evolve and topic commands
Rodrigo Damazio <rdamazio@google.com> [Sun, 06 Oct 2019 02:30:12 -0400] rev 4894
help: categorizing evolve and topic commands This makes them show up under the right categories in 'hg help'. Differential Revision: https://phab.mercurial-scm.org/D6999
Thu, 10 Oct 2019 08:22:41 +0700 tests: add the new "-r" bit to the usual merge hint
Anton Shestakov <av6@dwimlabs.net> [Thu, 10 Oct 2019 08:22:41 +0700] rev 4893
tests: add the new "-r" bit to the usual merge hint CORE-TEST-OUTPUT-UPDATE: 8197b395710e
Sat, 05 Oct 2019 14:31:19 -0400 branching: merge back into default
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 05 Oct 2019 14:31:19 -0400] rev 4892
branching: merge back into default
Mon, 07 Oct 2019 14:38:56 +0700 pick: don't create any successors when there were no changes (issue6093) stable
Anton Shestakov <av6@dwimlabs.net> [Mon, 07 Oct 2019 14:38:56 +0700] rev 4891
pick: don't create any successors when there were no changes (issue6093) For example, when a changeset that user is trying to pick was already grafted or rebased (and no obsmarkers were created), pick will naturally say that there's no changes to commit and will not create the new commit. In that case it should not mark any changeset as a successor of the picked changeset, because the actual file changes were already there before picking. Technically, pick could (and did before this patch) mark the wdir commit as a successor of picked changeset (may be useful in the most trivial cases when e.g. wdir is a graft of the required change), but there are cases when the picked change is introduced in an ancestor of wdir, or even in multiple ancestors piece by piece. Pick definitely shouldn't be trying to guess something this complicated, so with this patch it always marks the picked change as pruned if it gave no changes to commit.
Sat, 05 Oct 2019 14:26:19 -0400 packaging: mark as development version stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 05 Oct 2019 14:26:19 -0400] rev 4890
packaging: mark as development version This avoid confusion.
Sat, 05 Oct 2019 14:22:21 -0400 Added tag 9.2.1 for changeset d989bab720e5 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 05 Oct 2019 14:22:21 -0400] rev 4889
Added tag 9.2.1 for changeset d989bab720e5
Sat, 05 Oct 2019 13:50:13 -0400 test-compat: merge mercurial-4.6 into mercurial-4.5 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 05 Oct 2019 13:50:13 -0400] rev 4888
test-compat: merge mercurial-4.6 into mercurial-4.5
Sat, 05 Oct 2019 13:50:11 -0400 test-compat: merge mercurial-4.7 into mercurial-4.6 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 05 Oct 2019 13:50:11 -0400] rev 4887
test-compat: merge mercurial-4.7 into mercurial-4.6
Sat, 05 Oct 2019 13:50:09 -0400 test-compat: merge mercurial-4.8 into mercurial-4.7 mercurial-4.7
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 05 Oct 2019 13:50:09 -0400] rev 4886
test-compat: merge mercurial-4.8 into mercurial-4.7
Sat, 05 Oct 2019 13:50:07 -0400 test-compat: merge mercurial-4.9 into mercurial-4.8 mercurial-4.8
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 05 Oct 2019 13:50:07 -0400] rev 4885
test-compat: merge mercurial-4.9 into mercurial-4.8
Sat, 05 Oct 2019 13:50:05 -0400 test-compat: merge mercurial-5.0 into mercurial-4.9 mercurial-4.9
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 05 Oct 2019 13:50:05 -0400] rev 4884
test-compat: merge mercurial-5.0 into mercurial-4.9
Sat, 05 Oct 2019 13:50:03 -0400 test-compat: merge stable into mercurial-5.0 mercurial-5.0
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 05 Oct 2019 13:50:03 -0400] rev 4883
test-compat: merge stable into mercurial-5.0
Sat, 05 Oct 2019 13:48:25 -0400 packaging: prepare version 9.2.1 stable 9.2.1
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 05 Oct 2019 13:48:25 -0400] rev 4882
packaging: prepare version 9.2.1
Sat, 05 Oct 2019 13:46:13 -0400 packaging: update changelog stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 05 Oct 2019 13:46:13 -0400] rev 4881
packaging: update changelog
Sat, 05 Oct 2019 13:56:37 -0400 manifest: exclude the gitlab file stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 05 Oct 2019 13:56:37 -0400] rev 4880
manifest: exclude the gitlab file (oops)
Fri, 04 Oct 2019 14:16:52 -0400 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 04 Oct 2019 14:16:52 -0400] rev 4879
branching: merge with stable
Thu, 03 Oct 2019 23:48:50 +0100 py3: return unicode from setup.py's get_version stable
Ian Moody <moz-ian@perix.co.uk> [Thu, 03 Oct 2019 23:48:50 +0100] rev 4878
py3: return unicode from setup.py's get_version py3 expects the version number for eggs to be unicode, so despite 9.2.0 being the first evolve release with beta py3 support it isn't currently pip installable since it dies with: File "*/setuptools/command/egg_info.py", line *, in tagged_version return safe_version(version + self.vtags) TypeError: can't concat str to bytes The `setup.py install` test added in a previous commit should cover this since it died in a different but similar way before.
Thu, 03 Oct 2019 23:39:37 +0100 py3: remove smartquotes from README stable
Ian Moody <moz-ian@perix.co.uk> [Thu, 03 Oct 2019 23:39:37 +0100] rev 4877
py3: remove smartquotes from README They break running setup.py with py3 but only in tests, because in the test environment `locale.getpreferredencoding()` is ANSI_X3.4-1968, so the file is `open()`ed with that as the encoding. An alternative for fixing this would be to make the `open()` call with `encoding='utf-8'` under py3, which would be safe against any future non-ascii in README.
Thu, 03 Oct 2019 23:20:47 +0100 setup: make runnable from other dirs stable
Ian Moody <moz-ian@perix.co.uk> [Thu, 03 Oct 2019 23:20:47 +0100] rev 4876
setup: make runnable from other dirs Currently it fails when run in that way for two reasons: - the description is loaded from the README file but with a path relative to the working directory - module references have the same issue, which is fixed with package_dir.
Thu, 03 Oct 2019 23:17:13 +0100 setup: add a test for running setup.py stable
Ian Moody <moz-ian@perix.co.uk> [Thu, 03 Oct 2019 23:17:13 +0100] rev 4875
setup: add a test for running setup.py `python3 -m pip install hg-evolve==9.2.0` currently fails, despite 9.2.0 being the first beta py3 release, because of unicode issues with the version number. `setup.py install` is a proxy test for pip install since it also suffers from similar, however the test currently fails due to running setup.py from a different directory to the one it is in. Also add a test for `hg version -v` with evolve enabled since a naive first solution for the pip issue was to just change `__version__` to a `u''` string, but that busts version display in `version -v`, which isn't currently picked up by tests.
Fri, 04 Oct 2019 00:15:53 -0400 gitlab-ci: be bold and try to run the full test in them stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 04 Oct 2019 00:15:53 -0400] rev 4874
gitlab-ci: be bold and try to run the full test in them This is a basic version that should work reasonably well. The setup is a bit costly and the cleanup is not guaranteed yet.
Thu, 03 Oct 2019 22:46:21 -0400 gitlab-ci: basic test with flake8 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 03 Oct 2019 22:46:21 -0400] rev 4873
gitlab-ci: basic test with flake8 Let us step into the future.
Sat, 28 Sep 2019 13:15:02 +0200 branching: merge back with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 28 Sep 2019 13:15:02 +0200] rev 4872
branching: merge back with stable version 9.2.0 have been released
Fri, 27 Sep 2019 12:50:19 +0200 branching: preserve test change on stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 12:50:19 +0200] rev 4871
branching: preserve test change on stable CORE-TEST-OUTPUT-UPDATE: cdf0e9523de1 CORE-TEST-OUTPUT-UPDATE: d7304434390f CORE-TEST-OUTPUT-UPDATE: 181ee2118a96 CORE-TEST-OUTPUT-UPDATE: 181ee2118a96
Sat, 28 Sep 2019 13:14:07 +0200 packing: mark as development version stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 28 Sep 2019 13:14:07 +0200] rev 4870
packing: mark as development version This avoid confusion when installing from source.
Sat, 28 Sep 2019 13:00:20 +0200 Added tag 9.2.0 for changeset 40795751be1c stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 28 Sep 2019 13:00:20 +0200] rev 4869
Added tag 9.2.0 for changeset 40795751be1c
Fri, 27 Sep 2019 13:03:22 +0200 test-compat: merge mercurial-4.6 into mercurial-4.5 mercurial-4.5
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 13:03:22 +0200] rev 4868
test-compat: merge mercurial-4.6 into mercurial-4.5
Fri, 27 Sep 2019 13:03:20 +0200 test-compat: merge mercurial-4.7 into mercurial-4.6 mercurial-4.6
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 13:03:20 +0200] rev 4867
test-compat: merge mercurial-4.7 into mercurial-4.6
Fri, 27 Sep 2019 13:03:18 +0200 test-compat: merge mercurial-4.8 into mercurial-4.7 mercurial-4.7
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 13:03:18 +0200] rev 4866
test-compat: merge mercurial-4.8 into mercurial-4.7
Fri, 27 Sep 2019 13:03:16 +0200 test-compat: merge mercurial-4.9 into mercurial-4.8 mercurial-4.8
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 13:03:16 +0200] rev 4865
test-compat: merge mercurial-4.9 into mercurial-4.8
Fri, 27 Sep 2019 13:03:14 +0200 test-compat: merge mercurial-5.0 into mercurial-4.9 mercurial-4.9
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 13:03:14 +0200] rev 4864
test-compat: merge mercurial-5.0 into mercurial-4.9
Fri, 27 Sep 2019 13:03:12 +0200 test-compat: merge stable into mercurial-5.0 mercurial-5.0
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 13:03:12 +0200] rev 4863
test-compat: merge stable into mercurial-5.0
Sat, 28 Sep 2019 12:51:03 +0200 changelog: update for coming 9.2.0 stable 9.2.0
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 28 Sep 2019 12:51:03 +0200] rev 4862
changelog: update for coming 9.2.0
Fri, 27 Sep 2019 12:49:36 +0200 test: backed out test change applied in 2d85de79ead8 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 12:49:36 +0200] rev 4861
test: backed out test change applied in 2d85de79ead8
Fri, 27 Sep 2019 12:49:15 +0200 test: backed out test change applied in 62b60fc1983d stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 12:49:15 +0200] rev 4860
test: backed out test change applied in 62b60fc1983d
Fri, 27 Sep 2019 12:48:44 +0200 test: backed out test change applied in e804d5a7c193 stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 12:48:44 +0200] rev 4859
test: backed out test change applied in e804d5a7c193
Fri, 27 Sep 2019 12:48:28 +0200 test: backed out test change applied in 8345b852cd4f stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 12:48:28 +0200] rev 4858
test: backed out test change applied in 8345b852cd4f
Fri, 27 Sep 2019 06:55:05 +0200 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 06:55:05 +0200] rev 4857
branching: merge with stable
Wed, 25 Sep 2019 19:43:19 +0200 stable-doc: note about not storing smaller range
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 Sep 2019 19:43:19 +0200] rev 4856
stable-doc: note about not storing smaller range
Wed, 25 Sep 2019 19:43:02 +0200 stable-doc: small typo
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 Sep 2019 19:43:02 +0200] rev 4855
stable-doc: small typo
Wed, 25 Sep 2019 19:31:44 +0200 stable-doc: add more advanced examples
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 Sep 2019 19:31:44 +0200] rev 4854
stable-doc: add more advanced examples
Wed, 25 Sep 2019 18:23:37 +0200 stable-doc: add multiples example for the simple cases
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 Sep 2019 18:23:37 +0200] rev 4853
stable-doc: add multiples example for the simple cases
Thu, 26 Sep 2019 10:00:51 +0200 test-output: oops
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 26 Sep 2019 10:00:51 +0200] rev 4852
test-output: oops CORE-TEST-OUTPUT-UPDATE: 181ee2118a96
Wed, 25 Sep 2019 03:17:46 +0200 test: update part count in tests
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 25 Sep 2019 03:17:46 +0200] rev 4851
test: update part count in tests An off by one error got fixed upstream. CORE-TEST-OUTPUT-UPDATE: 181ee2118a96
Mon, 09 Sep 2019 09:28:47 +0700 evolve: check that relocating makes sense in _solvedivergent() (issue5958) stable
Anton Shestakov <av6@dwimlabs.net> [Mon, 09 Sep 2019 09:28:47 +0700] rev 4850
evolve: check that relocating makes sense in _solvedivergent() (issue5958)
Wed, 24 Oct 2018 19:32:04 +0200 tests: demonstrate content divergence causing "relocate node on top of itself" stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 24 Oct 2018 19:32:04 +0200] rev 4849
tests: demonstrate content divergence causing "relocate node on top of itself"
Mon, 16 Sep 2019 12:44:38 -0700 cmdstate: introduce a "saver" contextmanager and use it in place of save()
Kyle Lippincott <spectral@google.com> [Mon, 16 Sep 2019 12:44:38 -0700] rev 4848
cmdstate: introduce a "saver" contextmanager and use it in place of save() Previously, the state was only saved in some paths out of these functions. This can be problematic, if the user ctrl-c's (or `kill -9`'s) the process, or we exit out of `relocate` for anything besides the "expected" reason, we won't record that we were in the middle of an evolve. One of our users has discovered that this leaves hg in a weird state; the user did something like this: ``` $ hg evolve <something goes wrong with the merge tool, hits ctrl-c> <deals with the merge conflicts> $ hg evolve --continue abort: no interrupted evolve to continue $ hg evolve abort: uncommitted changes # Note: commands.status.verbose=True is set. $ hg status M foo # The repository is in an unfinished *update* state. # No unresolved merge conflicts # To continue: hg update ``` The user did an `hg update`, but it didn't actually do anything besides take it out of the unfinished update state (the files were still dirty in the working directory).
Mon, 16 Sep 2019 12:42:50 -0700 cmdstate: avoid setting a default argument to a mutable object (`{}`)
Kyle Lippincott <spectral@google.com> [Mon, 16 Sep 2019 12:42:50 -0700] rev 4847
cmdstate: avoid setting a default argument to a mutable object (`{}`) If there's ever more than one cmdstate for the lifetime of the process, this can cause surprising behavior where the later cmdstates pick up options from the earlier ones. I've not seen any evidence this is actually causing any issues, but it's subtle enough that it should probably be fixed to help save significant debugging time later.
Mon, 16 Sep 2019 12:42:11 -0700 cmdstate: switch to new-style classes
Kyle Lippincott <spectral@google.com> [Mon, 16 Sep 2019 12:42:11 -0700] rev 4846
cmdstate: switch to new-style classes This isn't a huge issue and isn't necessary on Python3, but we're still Python2 compatible and we should be consistent (and strongly prefer new-style classes); this is the only class that is not deriving from object that I could find.
Tue, 24 Sep 2019 12:42:27 +0200 branching: merge stable into default
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 24 Sep 2019 12:42:27 +0200] rev 4845
branching: merge stable into default
Fri, 19 Jul 2019 16:26:48 +0200 docs: add example for the `prune` command stable
Raphaël Gomès <rgomes@octobus.net> [Fri, 19 Jul 2019 16:26:48 +0200] rev 4844
docs: add example for the `prune` command Giving at least one example helps clear up the syntax, especially since most options will follow a very similar pattern.
Thu, 19 Sep 2019 11:46:16 +0700 tests: add some more actions to test-issue-6028, describe what's being done stable
Anton Shestakov <av6@dwimlabs.net> [Thu, 19 Sep 2019 11:46:16 +0700] rev 4843
tests: add some more actions to test-issue-6028, describe what's being done This patch does two things: it explains what's happening in the test file so it's easier to understand, and also it adds checks that make sure something like swapping merge parents is not accidentally breaking anything. The primary reason to touch this test file was that it was broken by a change in core's merge.graft() that erroneously swapped merge parents. Since only evolve uses merge.graft() for merge commits and there aren't any tests in core for it, let's test it here. Plus, this test case is pretty simple and these additional checks don't make it too complicated.
Fri, 13 Sep 2019 16:04:32 +0200 topic: fix some API to make it more robust stable
Valentin Gatien-Baron <vgatien-baron@janestreet.com> [Fri, 13 Sep 2019 16:04:32 +0200] rev 4842
topic: fix some API to make it more robust The new code can deal with changes in upstream mercurial.
Tue, 10 Sep 2019 15:43:20 +0700 rewriteutil: move allowdivergence check to foldcheck() stable
Anton Shestakov <av6@dwimlabs.net> [Tue, 10 Sep 2019 15:43:20 +0700] rev 4841
rewriteutil: move allowdivergence check to foldcheck() foldcheck() calls precheck() first and then performs more fold-specific checks.
Thu, 12 Sep 2019 12:35:42 +0200 test: change to output around transaction timing
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 12 Sep 2019 12:35:42 +0200] rev 4840
test: change to output around transaction timing CORE-TEST-OUTPUT-UPDATE: d7304434390f
Tue, 10 Sep 2019 07:38:46 +0200 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 10 Sep 2019 07:38:46 +0200] rev 4839
branching: merge with stable There have been multiple fix on stable.
Sun, 08 Sep 2019 21:24:45 +0200 stablerange: add some data from field testing
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 08 Sep 2019 21:24:45 +0200] rev 4838
stablerange: add some data from field testing This show that in number of stable range to track stay reasonable.
Sun, 08 Sep 2019 17:50:48 +0200 stablerange: add a debugstablerangecache command
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 08 Sep 2019 17:50:48 +0200] rev 4837
stablerange: add a debugstablerangecache command The command display get some data about stable range in a repository.
Sun, 08 Sep 2019 17:49:26 +0200 stablerange: add some documentation about the general concept
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 08 Sep 2019 17:49:26 +0200] rev 4836
stablerange: add some documentation about the general concept
Sun, 08 Sep 2019 17:47:37 +0200 stablesort: add some field data about stable sort cache
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 08 Sep 2019 17:47:37 +0200] rev 4835
stablesort: add some field data about stable sort cache
Sun, 08 Sep 2019 13:31:28 +0200 stablesort: introduce a small debugstablesortcache command
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 08 Sep 2019 13:31:28 +0200] rev 4834
stablesort: introduce a small debugstablesortcache command This give a small insight on the cache content.
Sun, 08 Sep 2019 11:56:11 +0200 stablesort: add some documentation for stablesort
Pierre-Yves David <pierre-yves.david@octobus.net> [Sun, 08 Sep 2019 11:56:11 +0200] rev 4833
stablesort: add some documentation for stablesort This should help people to understand what is going on here.
Sat, 07 Sep 2019 13:03:29 +0700 fold: check allowdivergence before folding obsolete changesets (issue5817) stable
Anton Shestakov <av6@dwimlabs.net> [Sat, 07 Sep 2019 13:03:29 +0700] rev 4832
fold: check allowdivergence before folding obsolete changesets (issue5817)
Wed, 28 Aug 2019 18:30:58 +0700 tests: demonstrate that fold doesn't care about allowdivergence config option stable
Anton Shestakov <av6@dwimlabs.net> [Wed, 28 Aug 2019 18:30:58 +0700] rev 4831
tests: demonstrate that fold doesn't care about allowdivergence config option
Fri, 06 Sep 2019 13:23:25 +0700 stack: remove unnecessary copying of rdependencies stable
Anton Shestakov <av6@dwimlabs.net> [Fri, 06 Sep 2019 13:23:25 +0700] rev 4830
stack: remove unnecessary copying of rdependencies rdependencies is not modified in any way in this method, so no need to copy it.
Fri, 06 Sep 2019 12:53:46 +0700 stack: make a deep copy of `dependencies` before modifying its items stable
Anton Shestakov <av6@dwimlabs.net> [Fri, 06 Sep 2019 12:53:46 +0700] rev 4829
stack: make a deep copy of `dependencies` before modifying its items The algorithm later on in this method uses .remove() to remove individual elements from items in dependencies, which before this patch modified the cached property contents. So for further use that dictionary was in the form of {1: set([])}, i.e. all sets were empty. This deep copy block could be way simpler, but the problem is that sometimes we get lists of _succs() from evolvebits.builddependencies(). Note: this happens only in topic's stack version of builddependencies() and it looks like a suboptimal way to handle multiple successors (see evolve's counterpart function). stack.builddependencies method is removed, it has served its purpose (see the previous patch).
Fri, 06 Sep 2019 12:16:34 +0700 stack: demonstrate that not reusing cached property gives different results stable
Anton Shestakov <av6@dwimlabs.net> [Fri, 06 Sep 2019 12:16:34 +0700] rev 4828
stack: demonstrate that not reusing cached property gives different results Instead of using self._dependencies, which is a cached property, let's get fresh deps and rdeps in stack.revs method using a newly introduced stack.builddependencies method (will be removed in the next patch). This makes it easier to explain why the next patch is correct.
Tue, 03 Sep 2019 12:48:47 +0200 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 03 Sep 2019 12:48:47 +0200] rev 4827
branching: merge with stable
Tue, 03 Sep 2019 13:02:20 +0700 changelog: add missing entry for 9af212b8565a stable
Anton Shestakov <av6@dwimlabs.net> [Tue, 03 Sep 2019 13:02:20 +0700] rev 4826
changelog: add missing entry for 9af212b8565a
Tue, 03 Sep 2019 13:02:20 +0700 evolve: test that target is not orig in _solveunstable() (issue6097) stable
Anton Shestakov <av6@dwimlabs.net> [Tue, 03 Sep 2019 13:02:20 +0700] rev 4825
evolve: test that target is not orig in _solveunstable() (issue6097) `newer` is the result of obsutil.successorssets() and can be [[orig.node()]], in which case later on in this function evolve will try to rebase orig onto orig, which is not correct. So let's just check this particular case. This fix doesn't cover cases when successorssets() result contains orig.node() not at [0][0]. Such cases need tests.
Mon, 02 Sep 2019 11:17:23 +0700 tests: demonstrate an orphan changeset cause "relocate node on top of itself" stable
Anton Shestakov <av6@dwimlabs.net> [Mon, 02 Sep 2019 11:17:23 +0700] rev 4824
tests: demonstrate an orphan changeset cause "relocate node on top of itself" See issue6097.
Fri, 30 Aug 2019 11:31:19 +0700 obslog: only indent the first chunk and chunks just after newlines (issue6175) stable
Anton Shestakov <av6@dwimlabs.net> [Fri, 30 Aug 2019 11:31:19 +0700] rev 4823
obslog: only indent the first chunk and chunks just after newlines (issue6175)
Fri, 30 Aug 2019 11:28:02 +0700 tests: demonstrate too many spaces in olog -p output with word-diff stable
Anton Shestakov <av6@dwimlabs.net> [Fri, 30 Aug 2019 11:28:02 +0700] rev 4822
tests: demonstrate too many spaces in olog -p output with word-diff
Thu, 25 Jul 2019 18:37:16 +0800 rewind: add --keep flag that "doesn't modify working directory"
Anton Shestakov <av6@dwimlabs.net> [Thu, 25 Jul 2019 18:37:16 +0800] rev 4821
rewind: add --keep flag that "doesn't modify working directory" The actual logic is more complicated than the flag description, but it's sufficiently similar to other --keep flags in action. Unlike strip (or prune), rewind always needs to modify the working directory to commit new revisions that "revive" old ones [1], see _revive_revision() (and rewriteutil.rewrite()). Because of that we don't prevent rewind from modifying wdir, but instead use hg.updaterepo() to update to the old changeset after the "revival" process is complete. Then we rebuild the dirstate based on the commit that rewind would update to without --keep. Since dirstate.rebuild() doesn't restore status of some files (added, removed, also copies and renames), we rely on cmdutil.revert(). It's a fairly crude solution and needs to be removed when implementing the missing copy tracing between oldctx and newctx (which are related only by obsolescence). [1] IOW this means that --keep doesn't allow rewinding if wdir is dirty (unlike e.g. strip).
Tue, 23 Jul 2019 18:05:40 +0800 tests: separate rewinding of merge commits, temporarily drop an error case
Anton Shestakov <av6@dwimlabs.net> [Tue, 23 Jul 2019 18:05:40 +0800] rev 4820
tests: separate rewinding of merge commits, temporarily drop an error case The error case will come back in the following commit, because it organically fits there without the need of a separate working clone.
Wed, 07 Aug 2019 15:22:16 +0200 python3: add python3 beta support to the CHANGELOG
Raphaël Gomès <rgomes@octobus.net> [Wed, 07 Aug 2019 15:22:16 +0200] rev 4819
python3: add python3 beta support to the CHANGELOG
Wed, 07 Aug 2019 15:21:56 +0200 python3: mention beta Python 3 support in README
Raphaël Gomès <rgomes@octobus.net> [Wed, 07 Aug 2019 15:21:56 +0200] rev 4818
python3: mention beta Python 3 support in README
Wed, 07 Aug 2019 15:21:17 +0200 python3: add supported python versions to setup.py
Raphaël Gomès <rgomes@octobus.net> [Wed, 07 Aug 2019 15:21:17 +0200] rev 4817
python3: add supported python versions to setup.py Mercurial technically can support Python 3.5 (although no lower, see its setup.py), but `evolve` probably won't because it represents more work for an underrepresented Python version. If you happen to *really* need evolve to work on Python 3 and you're reading this message, send an email to the mailing list, or contribute patches.
Fri, 09 Aug 2019 12:48:58 +0200 test: update output for wider cache warming
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 09 Aug 2019 12:48:58 +0200] rev 4816
test: update output for wider cache warming CORE-TEST-OUTPUT-UPDATE: cdf0e9523de1
Tue, 06 Aug 2019 19:28:51 +0200 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 06 Aug 2019 19:28:51 +0200] rev 4815
branching: merge with stable format source worked smoothly :-)
Tue, 06 Aug 2019 15:06:38 +0200 python3: use format-source to run byteify-strings in .py files
Raphaël Gomès <rgomes@octobus.net> [Tue, 06 Aug 2019 15:06:38 +0200] rev 4814
python3: use format-source to run byteify-strings in .py files Using the format-source extension smooth out the pain of merging after auto-formatting. This change makes all of the Evolve test suite pass under python3 and has added benefit of being 100% automated using mercurial's `byteify-strings` script version 1.0 (revision 11498aa91c036c6d70f7ac5ee5af2664a84a1130). How to benefit from the help of format-source is explained in the README.
Tue, 06 Aug 2019 19:27:54 +0200 topic: add a new random attribute stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 06 Aug 2019 19:27:54 +0200] rev 4813
topic: add a new random attribute (This is mostly an excuse to test the format-source setup)
Tue, 06 Aug 2019 15:06:27 +0200 python3: enforce byte prefix for vfs.open()
Raphaël Gomès <rgomes@octobus.net> [Tue, 06 Aug 2019 15:06:27 +0200] rev 4812
python3: enforce byte prefix for vfs.open() Changeset ea8da5aa23c6e723d7f0006387a1a20eef58fc9a added raw prefix to open(), but also to vfs.open(). The latter only handles bytestring arguments.
Tue, 06 Aug 2019 11:35:09 +0200 python3: add raw prefix to sqlite isolation level
Raphaël Gomès <rgomes@octobus.net> [Tue, 06 Aug 2019 11:35:09 +0200] rev 4811
python3: add raw prefix to sqlite isolation level
Tue, 06 Aug 2019 11:34:31 +0200 python3: add ignore block around python 2 compatibility if branch
Raphaël Gomès <rgomes@octobus.net> [Tue, 06 Aug 2019 11:34:31 +0200] rev 4810
python3: add ignore block around python 2 compatibility if branch
Tue, 06 Aug 2019 16:23:57 +0200 flake8: silence F633 error stable
Raphaël Gomès <rgomes@octobus.net> [Tue, 06 Aug 2019 16:23:57 +0200] rev 4809
flake8: silence F633 error
Tue, 06 Aug 2019 11:33:53 +0200 python3: add raw prefix to edge-cases kwargs-like objects
Raphaël Gomès <rgomes@octobus.net> [Tue, 06 Aug 2019 11:33:53 +0200] rev 4808
python3: add raw prefix to edge-cases kwargs-like objects
Tue, 06 Aug 2019 11:32:01 +0200 python3: add raw prefix to open()-like functions
Raphaël Gomès <rgomes@octobus.net> [Tue, 06 Aug 2019 11:32:01 +0200] rev 4807
python3: add raw prefix to open()-like functions
Tue, 06 Aug 2019 11:30:45 +0200 python3: add raw prefix to all array.array() calls
Raphaël Gomès <rgomes@octobus.net> [Tue, 06 Aug 2019 11:30:45 +0200] rev 4806
python3: add raw prefix to all array.array() calls
Tue, 06 Aug 2019 11:29:35 +0200 python3: add raw prefix to "troubles"-related dicts
Raphaël Gomès <rgomes@octobus.net> [Tue, 06 Aug 2019 11:29:35 +0200] rev 4805
python3: add raw prefix to "troubles"-related dicts The `byteify-strings.py` script cannot know that these will be used in a way that requires to use a system string without some pretty hardcore hardcoding.
Tue, 06 Aug 2019 11:26:29 +0200 python3: add raw prefix in cases harder to analyze at the token level
Raphaël Gomès <rgomes@octobus.net> [Tue, 06 Aug 2019 11:26:29 +0200] rev 4804
python3: add raw prefix in cases harder to analyze at the token level The `byteify-strings.py` script would be a lot more complicated if it had to do backtracking and other more advanced static analysis to figure our those cases, so we have to add the raw prefix to those cases manually.
Tue, 06 Aug 2019 11:17:38 +0200 python3: add byte prefix for objects that look like kwargs but aren't
Raphaël Gomès <rgomes@octobus.net> [Tue, 06 Aug 2019 11:17:38 +0200] rev 4803
python3: add byte prefix for objects that look like kwargs but aren't The `byteify-strings.py` script has no way of knowing that those aren't acutally kwargs since it works purely at the tokenization level, so we have to add the byte prefix to their keys manually.
(0) -3000 -1000 -120 +120 tip