Pulkit Goyal <7895pulkit@gmail.com> [Sun, 15 Oct 2017 19:29:56 +0530] rev 34795
amend: add a flag `-n/--note` to store note with amend
This patch utilises the functionality added in previous patches and adds a flag
to amend command in hgext/amend to add a note to the amend. Since the note is
stored in the obsmarker metadata, this will only be useful when obsmarker
creation is enabled, otherwise this is no-op.
Not adding releasenotes part as we yet don't have a functionality in core to
show the note.
Differential Revision: https://phab.mercurial-scm.org/D1095
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 15 Oct 2017 15:32:03 +0530] rev 34794
cmdutil: pass metadata from amend() to cleanupnodes
`commit --amend` and amend command in core and extensions rely on
cmdutil.amend() for amending a commit. So the logic to add a note to amend must
reside here. This patch assumes that note will be passed in opts dictionary to
the function and it will be passed to cleanupnodes and then createmarkers to
store the note in the obsmarker metadata.
After this patch, note can be stored on an amend changeset by passing notes as a
part of opts to cmdutil.amend().
Differential Revision: https://phab.mercurial-scm.org/D1094
Pulkit Goyal <7895pulkit@gmail.com> [Sun, 15 Oct 2017 14:34:24 +0530] rev 34793
scmutil: add capability to cleanupnodes to take obsmarker metadata
This patch adds a metadata argument to cleanupnodes() which will be dict and can
be passed to obsmarker.createmarkers() and can be stored on the obsmarker.
In cases when obsolescence is not enabled, the metadata argument is useless.
This is a step towards storing a note in amend.
Differential Revision: https://phab.mercurial-scm.org/D1093
Saurabh Singh <singhsrb@fb.com> [Mon, 16 Oct 2017 13:06:33 -0700] rev 34792
test-hgweb-annotate-whitespace: make test compatible with chg
D946 fixed a bunch of tests which had the same root cause. Please see
that for details. This seems to be one of the newer tests which fails because
of the same reason.
Test Plan:
Ran the test 'test-hgweb-annotate-whitespace.t' with and without the
'--chg' option.
Differential Revision: https://phab.mercurial-scm.org/D1124
Saurabh Singh <singhsrb@fb.com> [Mon, 16 Oct 2017 17:41:37 -0700] rev 34791
test-pager: make the test compatible with chg
D911 tried to make this test compatible with chg but instead resulted
in the test being flaky for chg. For now, disabling this test for chg because
it seems difficult to fix the test. This will allow for the continuous build
setup for chg.
Test Plan:
Ran the test 'test-pager.t' with and without the '--chg' option.
Differential Revision: https://phab.mercurial-scm.org/D1128
Saurabh Singh <singhsrb@fb.com> [Mon, 16 Oct 2017 17:06:32 -0700] rev 34790
test-obsolete-bounds-checking: make the test compatible with chg
This test fails when run with chg because the error message starts
with "ProgrammingError" instead of "mercurial.error.ProgrammingError".
Therefore, globing the "mercurial.error." to ensure that the test is compatible
with chg.
Test Plan:
Ran the test 'test-obsolete-bounds-checking.t' with and without the
'--chg' option.
Differential Revision: https://phab.mercurial-scm.org/D1127
Saurabh Singh <singhsrb@fb.com> [Mon, 16 Oct 2017 17:14:21 -0700] rev 34789
test-dispatch: make the test compatible with chg
The test is broken when run with chg because it prints a different
error message when chg is running. This commit fixes the test by special casing
for chg.
Test Plan:
Ran the test 'test-dispatch.t' with and without '--chg' option.
Differential Revision: https://phab.mercurial-scm.org/D1126
Saurabh Singh <singhsrb@fb.com> [Mon, 16 Oct 2017 12:15:00 -0700] rev 34788
histedit: remove the nonexistant config 'histeditng'
D942 removed the experimental config 'histeditng'. This is a leftover
which should have been removed in that commit. Therefore, this commit completes
the cleanup.
Test Plan:
Ran all the tests.
Differential Revision: https://phab.mercurial-scm.org/D1123
Phil Cohen <phillco@fb.com> [Sun, 15 Oct 2017 20:36:29 -0700] rev 34787
context: add workingfilectx.markcopied
With in-memory merge, copy information needs to be stored in-memory, not in the
dirstate.
To make this transition easy, move the existing dirstate-based approach to
workingfilectx; that way, other implementations can choose to store it
somewhere else.
Differential Revision: https://phab.mercurial-scm.org/D1106
Phil Cohen <phillco@fb.com> [Sun, 15 Oct 2017 20:36:29 -0700] rev 34786
merge: don't use workers in in-memory mode
The worker processes can't share memory, so workers should not be used.
Differential Revision: https://phab.mercurial-scm.org/D1105
Phil Cohen <phillco@fb.com> [Sun, 15 Oct 2017 20:36:29 -0700] rev 34785
filemerge: add a missing flushall()
Differential Revision: https://phab.mercurial-scm.org/D1060
Phil Cohen <phillco@fb.com> [Fri, 13 Oct 2017 12:34:22 -0700] rev 34784
filemerge: store backups in the overlayworkingctx if using imm
Differential Revision: https://phab.mercurial-scm.org/D1059
Phil Cohen <phillco@fb.com> [Fri, 13 Oct 2017 12:34:22 -0700] rev 34783
context: add overlayfilectx.cmp()
Differential Revision: https://phab.mercurial-scm.org/D1058
Phil Cohen <phillco@fb.com> [Mon, 16 Oct 2017 13:10:55 -0700] rev 34782
filemerge: use arbitraryfilectx for backups
With in-memory merge, backup files might be overlayworkingfilectxs stored
in memory. But they could also be real files if the user's backup directory is
outside the working dir.
Rather than have two code paths everywhere, let's use arbitraryfilectx so they
can be consistent.
Differential Revision: https://phab.mercurial-scm.org/D1057
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 20 Sep 2017 04:47:43 +0530] rev 34781
registrar: add support for storing the type of command in func object
This patch adds support for storing the type of command which is going to run in
the func object. For this it does the following:
1) Add three possible values as attributes to the registrar.command class
2) Add a new argument to registrar.command._doregister function
3) Add a new attribute cmdtype to the func object
The type of command will be helpful in deciding what level of access on hidden
commits it can has.
Differential Revision: https://phab.mercurial-scm.org/D736