Martin von Zweigbergk <martinvonz@google.com> [Mon, 07 Feb 2022 14:07:04 -0800] rev 48758
simplemerge: remove now-unused arguments
The `ui` argument is no longer needed now that we don't handle
`--print` in the library code.
Differential Revision: https://phab.mercurial-scm.org/D12151
Martin von Zweigbergk <martinvonz@google.com> [Tue, 18 Jan 2022 13:22:55 -0800] rev 48757
merge: fix documented order of `labels` argument
Differential Revision: https://phab.mercurial-scm.org/D12150
Martin von Zweigbergk <martinvonz@google.com> [Tue, 18 Jan 2022 12:57:55 -0800] rev 48756
filemerge: when not keeping premerge, don't write markers to context
When premerge is enabled (as it is for non-binary inputs by default)
and the markers are not kept, we currently still write it to the
output context and then restore the previous content right after. With
the refactoring in the previous patch, we can easily avoid that step
and instead write the output in the opposite case (i.e. when it's
successful or when the markers are supposed to be kept).
Differential Revision: https://phab.mercurial-scm.org/D12149
Martin von Zweigbergk <martinvonz@google.com> [Fri, 14 Jan 2022 08:17:13 -0800] rev 48755
simplemerge: move printing of merge result to extension
The `mercurial.simplemerge` module still has some command-lines
processing that doesn't belong in such a low-level module. This patch
moves the handling of `hg simplemerge --print` to the extension by
having `mercurial.simplemerge.simplemerge()` return the merged text.
Differential Revision: https://phab.mercurial-scm.org/D12148
Martin von Zweigbergk <martinvonz@google.com> [Thu, 10 Feb 2022 15:48:01 -0800] rev 48754
simplemerge: remove code for checking binary input now that callers do it
The callers now do the checking for binary inputs and handle warnings
and/or errors, so we can remove that code from the low-level
`simplemerge` module now. After this patch we just raise an error
unless the caller told us to allow binary inputs.
Differential Revision: https://phab.mercurial-scm.org/D12169
Martin von Zweigbergk <martinvonz@google.com> [Thu, 10 Feb 2022 15:27:58 -0800] rev 48753
simplemerge: let filemerge check for binary inputs
This is similar to the previous patch, but here we put a specialized
copy of `simplemerge._verifytext()` in the the `filemerge` module
instead.
Differential Revision: https://phab.mercurial-scm.org/D12147
Martin von Zweigbergk <martinvonz@google.com> [Thu, 10 Feb 2022 13:36:09 -0800] rev 48752
simplemerge: let extension check for binary inputs (unless `--text`)
The `simplemerge` module does too much UI-related things. This patch
puts a specialized copy of `simplemerge._verifytext()` in the
simplemerge extension.
Differential Revision: https://phab.mercurial-scm.org/D12146
Martin von Zweigbergk <martinvonz@google.com> [Thu, 10 Feb 2022 11:00:32 -0800] rev 48751
simplemerge: store input data in MergeInput
I want to be able to update the file contents for support for partial
conflict resolution. Having the text available (and later settable) on
`MergeInput` will enable that.
Differential Revision: https://phab.mercurial-scm.org/D12144
Martin von Zweigbergk <martinvonz@google.com> [Fri, 04 Feb 2022 18:36:36 -0800] rev 48750
simplemerge: convert MergeInput to regular, non-attr.ib class
I'm about to add more logic and state to it.
Differential Revision: https://phab.mercurial-scm.org/D12145
Martin von Zweigbergk <martinvonz@google.com> [Thu, 10 Feb 2022 09:59:07 -0800] rev 48749
simplemerge: replace `**opts` passed to `simplemerge()` by keyword arguments
The `simplemerge` module is library code; it should not get an
unmodified `opts` dict from the `simplemerge` extension.
Differential Revision: https://phab.mercurial-scm.org/D12152