Thu, 10 Feb 2022 15:27:58 -0800 simplemerge: let filemerge check for binary inputs
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
Thu, 10 Feb 2022 13:36:09 -0800 simplemerge: let extension check for binary inputs (unless `--text`)
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
Thu, 10 Feb 2022 11:00:32 -0800 simplemerge: store input data in MergeInput
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
Fri, 04 Feb 2022 18:36:36 -0800 simplemerge: convert MergeInput to regular, non-attr.ib class
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
Thu, 10 Feb 2022 09:59:07 -0800 simplemerge: replace `**opts` passed to `simplemerge()` by keyword arguments
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
Wed, 25 Aug 2021 19:55:20 -0700 automation: use gp3 volume type stable
Gregory Szorc <gregory.szorc@gmail.com> [Wed, 25 Aug 2021 19:55:20 -0700] rev 48748
automation: use gp3 volume type This is a newer volume type. It offers a better baseline of performance by default and is ~10% cheaper. It doesn't offer burst credits. But its performance is guaranteed, unlike gp2, which had wonky performance behavior. Differential Revision: https://phab.mercurial-scm.org/D12132
Thu, 26 Aug 2021 17:47:50 -0700 automation: use m6i instances stable
Gregory Szorc <gregory.szorc@gmail.com> [Thu, 26 Aug 2021 17:47:50 -0700] rev 48747
automation: use m6i instances This instance type is much, much faster than t3 and can perform tasks much quicker. Differential Revision: https://phab.mercurial-scm.org/D12131
Thu, 03 Feb 2022 18:14:25 +0100 narrow: add support for merging add and remove outside of the tracked set
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 03 Feb 2022 18:14:25 +0100] rev 48746
narrow: add support for merging add and remove outside of the tracked set This extend f1eb77dceb36 to test and support the remaining action. Or, at least, the simple incarnation of them. Differential Revision: https://phab.mercurial-scm.org/D12181
Fri, 21 Jan 2022 17:54:03 +0100 status: prefer relative paths in Rust code
Simon Sapin <simon.sapin@octobus.net> [Fri, 21 Jan 2022 17:54:03 +0100] rev 48745
status: prefer relative paths in Rust code … when the repository root is under the current directory, so the kernel needs to traverse fewer directory in every call to `read_dir` or `symlink_metadata`. Better yet would be to use libc functions like `openat` and `fstatat` to remove such repeated traversals entirely, but the standard library does not provide APIs based on those. Maybe with a crate like https://crates.io/crates/openat instead? Benchmarks of `rhg status` show that this patch is neutral in some configurations, and makes the command up to ~20% faster in others. Below is semi-arbitrary subset of results. The four numeric columns are: time (in seconds) with this changeset’s parent, time with this changeset, time difference (negative is better), time ratio (less than 1 is better). ``` mercurial-dirstate-v1 | default-plain-clean.no-iu.pbr | 0.0061 -> 0.0059: -0.0002 (0.97) mercurial-dirstate-v2 | default-plain-clean.no-iu.pbr | 0.0029 -> 0.0028: -0.0001 (0.97) mozilla-dirstate-v1 | default-plain-clean.no-iu.pbr | 0.2110 -> 0.2102: -0.0007 (1.00) mozilla-dirstate-v2 | default-copies-clean.ignored.pbr | 0.0489 -> 0.0401: -0.0088 (0.82) mozilla-dirstate-v2 | default-copies-clean.no-iu.pbr | 0.0479 -> 0.0393: -0.0085 (0.82) mozilla-dirstate-v2 | default-copies-large.all.pbr | 0.1262 -> 0.1210: -0.0051 (0.96) mozilla-dirstate-v2 | default-copies-small.ignored-unknown.pbr | 0.1262 -> 0.1200: -0.0062 (0.95) mozilla-dirstate-v2 | default-copies-small.ignored.pbr | 0.0536 -> 0.0417: -0.0119 (0.78) mozilla-dirstate-v2 | default-copies-small.no-iu.pbr | 0.0482 -> 0.0393: -0.0089 (0.81) mozilla-dirstate-v2 | default-plain-clean.ignored.pbr | 0.0518 -> 0.0402: -0.0116 (0.78) mozilla-dirstate-v2 | default-plain-clean.no-iu.pbr | 0.0481 -> 0.0392: -0.0088 (0.82) mozilla-dirstate-v2 | default-plain-large.all.pbr | 0.1271 -> 0.1218: -0.0052 (0.96) mozilla-dirstate-v2 | default-plain-small.ignored-unknown.pbr | 0.1225 -> 0.1202: -0.0022 (0.98) mozilla-dirstate-v2 | default-plain-small.ignored.pbr | 0.0510 -> 0.0418: -0.0092 (0.82) mozilla-dirstate-v2 | default-plain-small.no-iu.pbr | 0.0480 -> 0.0394: -0.0086 (0.82) netbeans-dirstate-v1 | default-plain-clean.no-iu.pbr | 0.1442 -> 0.1422: -0.0020 (0.99) netbeans-dirstate-v2 | default-plain-clean.no-iu.pbr | 0.0325 -> 0.0282: -0.0043 (0.87) ``` Differential Revision: https://phab.mercurial-scm.org/D12175
Mon, 14 Feb 2022 18:51:43 +0100 rust: remove unused `StatusError::IO` enum variant
Simon Sapin <simon.sapin@octobus.net> [Mon, 14 Feb 2022 18:51:43 +0100] rev 48744
rust: remove unused `StatusError::IO` enum variant All `io::Error` cases are now handled through PatternFileWarning or BadMatch Differential Revision: https://phab.mercurial-scm.org/D12174
(0) -30000 -10000 -3000 -1000 -300 -100 -10 +10 +100 +300 +1000 tip