Fri, 20 Dec 2019 17:19:25 +0100 tests-pure: fixing test-parseindex2
Georges Racinet <georges.racinet@octobus.net> [Fri, 20 Dec 2019 17:19:25 +0100] rev 43946
tests-pure: fixing test-parseindex2 This is a followup to D7603 (49fa0b31ee1d) which broke the tests for pure Python implementation. There are two divergences between pure and C implementations: - the pure implementation would accept only -1 as slice end, whereas C accepts both -1 and len(index) - in pure Python, `headrevs` is provided by revlog.py, not by the index. Differential Revision: https://phab.mercurial-scm.org/D7707
Fri, 13 Dec 2019 19:59:59 +0100 rust-index: add a function to convert PyObject index for hg-core
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 13 Dec 2019 19:59:59 +0100] rev 43945
rust-index: add a function to convert PyObject index for hg-core Function in hg-core need something implementing the `Graph` trait. Right now, the `hg-cpython` entry points directly turn the PyObject passed as argument into a `cindex::Index`. However, if we start having the option to use an Index in Rust, we need to dispatch between the different possible PyObject we could receive. So move the "duplicate" call into a unified function. When time come. It will be easy to update the logic of all interface when the time come. Differential Revision: https://phab.mercurial-scm.org/D7653
Wed, 11 Dec 2019 18:40:04 +0100 test: extract some generic data and utility from test-rust-ancestor.py
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 11 Dec 2019 18:40:04 +0100] rev 43944
test: extract some generic data and utility from test-rust-ancestor.py We will reuse this for more tests related to revlog index. In pratice this series of changesets add an index implementation provided from Rust and we want to be able to test it. Differential Revision: https://phab.mercurial-scm.org/D7652
Tue, 17 Dec 2019 23:33:35 -0500 patch: fix header.__repr__() to not have `b''` prefixes in file names
Matt Harbison <matt_harbison@yahoo.com> [Tue, 17 Dec 2019 23:33:35 -0500] rev 43943
patch: fix header.__repr__() to not have `b''` prefixes in file names Spotted by Denis Laxalde. Differential Revision: https://phab.mercurial-scm.org/D7695
Wed, 18 Dec 2019 11:11:40 -0800 cmdutil: allow native string as input to check_at_most_one_arg()
Martin von Zweigbergk <martinvonz@google.com> [Wed, 18 Dec 2019 11:11:40 -0800] rev 43942
cmdutil: allow native string as input to check_at_most_one_arg() We seem to always convert **opts args to use bytes as keys early on in Mercurial core, but I'm not sure we have good reason to do that, and not all extensions do that. It's therefore helpful to be able to pass in a native string to check_at_most_one_arg(). Differential Revision: https://phab.mercurial-scm.org/D7699
Wed, 18 Dec 2019 10:52:49 -0800 cmdutil: return underscore-separate name from check_at_most_one_arg()
Martin von Zweigbergk <martinvonz@google.com> [Wed, 18 Dec 2019 10:52:49 -0800] rev 43941
cmdutil: return underscore-separate name from check_at_most_one_arg() As noticed by Yuya, when I changed the function (during review) to work with underscore-separated names as input, I forgot to make sure the returned name was also underscore-separated. We don't have any cases where it matters yet, but it should still clearly be fixed. Instead of converting the hyphen-separated value we already have in `previous`, I'm changing it so we convert to the underscore-separated values to be hyphen-separated only when we need to display them. This will also help a coming change where we allow the inputs to native strings instead only bytes. Differential Revision: https://phab.mercurial-scm.org/D7698
Wed, 18 Dec 2019 10:55:06 -0800 rebase: restore i18n of a hint message
Martin von Zweigbergk <martinvonz@google.com> [Wed, 18 Dec 2019 10:55:06 -0800] rev 43940
rebase: restore i18n of a hint message As noticed by Yuya, I lost the _() call in 71fee4564410 (rebase: use rewriteutil.precheck() instead of reimplementing it, 2019-12-18). Differential Revision: https://phab.mercurial-scm.org/D7697
Wed, 18 Dec 2019 23:45:11 -0800 status: make unresolved files always be in the morestatus structured output
Rodrigo Damazio Bovendorp <rdamazio@google.com> [Wed, 18 Dec 2019 23:45:11 -0800] rev 43939
status: make unresolved files always be in the morestatus structured output We don't know the status of those files, only that they're unresolved, so we don't output the status for those - any code parsing this will have to be tolerant to that. Differential Revision: https://phab.mercurial-scm.org/D7668
Wed, 18 Dec 2019 23:43:21 -0800 status: make morestatus call out unresolved conflicts after update
Rodrigo Damazio Bovendorp <rdamazio@google.com> [Wed, 18 Dec 2019 23:43:21 -0800] rev 43938
status: make morestatus call out unresolved conflicts after update Differential Revision: https://phab.mercurial-scm.org/D7704
Wed, 18 Dec 2019 23:41:36 -0800 status: extract active-merge state for reuse
Rodrigo Damazio Bovendorp <rdamazio@google.com> [Wed, 18 Dec 2019 23:41:36 -0800] rev 43937
status: extract active-merge state for reuse Differential Revision: https://phab.mercurial-scm.org/D7667
Tue, 17 Dec 2019 10:55:50 -0800 fix: use rewriteutil.precheck() instead of reimplementing it
Martin von Zweigbergk <martinvonz@google.com> [Tue, 17 Dec 2019 10:55:50 -0800] rev 43936
fix: use rewriteutil.precheck() instead of reimplementing it Differential Revision: https://phab.mercurial-scm.org/D7687
Tue, 17 Dec 2019 11:09:22 -0800 split: use rewriteutil.precheck() instead of reimplementing it
Martin von Zweigbergk <martinvonz@google.com> [Tue, 17 Dec 2019 11:09:22 -0800] rev 43935
split: use rewriteutil.precheck() instead of reimplementing it As you can see from the patch, I disagree with most of the comment saying that `rewriteutil.precheck()` is not worthwhile. Differential Revision: https://phab.mercurial-scm.org/D7686
Wed, 18 Dec 2019 09:18:02 +0300 rebase: use rewriteutil.precheck() instead of reimplementing it
Martin von Zweigbergk <martinvonz@google.com> [Wed, 18 Dec 2019 09:18:02 +0300] rev 43934
rebase: use rewriteutil.precheck() instead of reimplementing it After this patch, there's still another place in `rebase.py`, in the `--stop` code path, that reimplements `rewriteutil.precheck()`. I couldn't fix that place because it `rewriteutil.precheck()` checks that there is only one dirstate parent, which fails because we have two parents at that point. I think it's incorrect that rebase leaves the user with two parents during conflicts, but changing that is way out of scope for this series. Differential Revision: https://phab.mercurial-scm.org/D7685
Tue, 17 Dec 2019 10:53:51 -0800 histedit: use rewriteutil.precheck() instead of reimplementing it
Martin von Zweigbergk <martinvonz@google.com> [Tue, 17 Dec 2019 10:53:51 -0800] rev 43933
histedit: use rewriteutil.precheck() instead of reimplementing it We have had this nice utility since 490df753894d (rewriteutil: add a precheck function to check if revs can be rewritten, 2017-11-24). We got two callers soon thereafter, in 98f97eb20597 (rewriteutil: use precheck() in uncommit and amend commands, 2017-11-28). It's about time we use it in other places. rewriteutil.precheck() looks unfortunate for i18n (it seems to rely on an English verb for the action making sense in other languages), but hopefully not bad enough that we should avoid using it. Differential Revision: https://phab.mercurial-scm.org/D7684
Thu, 12 Dec 2019 23:25:16 -0800 rebase: inline single-use variables passed to _definedestmap()
Martin von Zweigbergk <martinvonz@google.com> [Thu, 12 Dec 2019 23:25:16 -0800] rev 43932
rebase: inline single-use variables passed to _definedestmap() Differential Revision: https://phab.mercurial-scm.org/D7646
Thu, 12 Dec 2019 23:20:48 -0800 rebase: use cmdutil.check_at_most_one_arg() for action+revision
Martin von Zweigbergk <martinvonz@google.com> [Thu, 12 Dec 2019 23:20:48 -0800] rev 43931
rebase: use cmdutil.check_at_most_one_arg() for action+revision Differential Revision: https://phab.mercurial-scm.org/D7645
Thu, 12 Dec 2019 23:03:52 -0800 rebase: use cmdutil.check_incompatible_arguments() for --auto-orphans
Martin von Zweigbergk <martinvonz@google.com> [Thu, 12 Dec 2019 23:03:52 -0800] rev 43930
rebase: use cmdutil.check_incompatible_arguments() for --auto-orphans Differential Revision: https://phab.mercurial-scm.org/D7644
Thu, 12 Dec 2019 22:43:15 -0800 rebase: use cmdutil.check_at_most_one_arg() for -b/-s/-r
Martin von Zweigbergk <martinvonz@google.com> [Thu, 12 Dec 2019 22:43:15 -0800] rev 43929
rebase: use cmdutil.check_at_most_one_arg() for -b/-s/-r Differential Revision: https://phab.mercurial-scm.org/D7643
Thu, 12 Dec 2019 23:11:33 -0800 rebase: inline single-use `dryrun` and `confirm` variables
Martin von Zweigbergk <martinvonz@google.com> [Thu, 12 Dec 2019 23:11:33 -0800] rev 43928
rebase: inline single-use `dryrun` and `confirm` variables Differential Revision: https://phab.mercurial-scm.org/D7642
Fri, 13 Dec 2019 14:50:42 -0800 rebase: use cmdutil.check_incompatible_arguments() for action+confirm/dryrun
Martin von Zweigbergk <martinvonz@google.com> [Fri, 13 Dec 2019 14:50:42 -0800] rev 43927
rebase: use cmdutil.check_incompatible_arguments() for action+confirm/dryrun Differential Revision: https://phab.mercurial-scm.org/D7661
Fri, 13 Dec 2019 14:49:48 -0800 rebase: use cmdutil.check_at_most_one_arg() for --confirm/--dry-run
Martin von Zweigbergk <martinvonz@google.com> [Fri, 13 Dec 2019 14:49:48 -0800] rev 43926
rebase: use cmdutil.check_at_most_one_arg() for --confirm/--dry-run I've also updated the helper to work with the hyphenated --dry-run option. Differential Revision: https://phab.mercurial-scm.org/D7641
Tue, 17 Dec 2019 21:25:54 -0500 windows: factor the hgrc directory scan into a function
Matt Harbison <matt_harbison@yahoo.com> [Tue, 17 Dec 2019 21:25:54 -0500] rev 43925
windows: factor the hgrc directory scan into a function Differential Revision: https://phab.mercurial-scm.org/D7691
Tue, 17 Dec 2019 21:21:36 -0500 windows: don't return early from building the hgrc search path
Matt Harbison <matt_harbison@yahoo.com> [Tue, 17 Dec 2019 21:21:36 -0500] rev 43924
windows: don't return early from building the hgrc search path This will minimize the changes needed to add other sources. Differential Revision: https://phab.mercurial-scm.org/D7690
Tue, 17 Dec 2019 21:15:59 -0500 windows: clarify a comment about the hgrc search path
Matt Harbison <matt_harbison@yahoo.com> [Tue, 17 Dec 2019 21:15:59 -0500] rev 43923
windows: clarify a comment about the hgrc search path The exe relative hgrc.d and the registry paths are not mutually exclusive. Differential Revision: https://phab.mercurial-scm.org/D7689
Tue, 17 Dec 2019 21:12:17 -0500 windows: drop detection of Windows 95/98/ME
Matt Harbison <matt_harbison@yahoo.com> [Tue, 17 Dec 2019 21:12:17 -0500] rev 43922
windows: drop detection of Windows 95/98/ME Support was removed in python 2.6. Differential Revision: https://phab.mercurial-scm.org/D7688
Tue, 17 Dec 2019 14:04:02 -0500 examples: add an example configuration for go source files
Augie Fackler <augie@google.com> [Tue, 17 Dec 2019 14:04:02 -0500] rev 43921
examples: add an example configuration for go source files Tested by timeless. Differential Revision: https://phab.mercurial-scm.org/D7683
Sun, 15 Dec 2019 21:34:00 -0500 util: move common proxyobserver attributes to the base class
Matt Harbison <matt_harbison@yahoo.com> [Sun, 15 Dec 2019 21:34:00 -0500] rev 43920
util: move common proxyobserver attributes to the base class Fixes the following pytype warnings: line 791, in _writedata: No attribute 'logdata' on baseproxyobserver [attribute-error] line 792, in _writedata: No attribute 'logdataapis' on baseproxyobserver [attribute-error] line 793, in _writedata: No attribute 'fh' on baseproxyobserver [attribute-error] line 794, in _writedata: No attribute 'fh' on baseproxyobserver [attribute-error] line 799, in _writedata: No attribute 'logdataapis' on baseproxyobserver [attribute-error] line 800, in _writedata: No attribute 'fh' on baseproxyobserver [attribute-error] line 802, in _writedata: No attribute 'fh' on baseproxyobserver [attribute-error] line 803, in _writedata: No attribute 'name' on baseproxyobserver [attribute-error] line 805, in _writedata: No attribute 'fh' on baseproxyobserver [attribute-error] line 809, in _writedata: No attribute 'logdataapis' on baseproxyobserver [attribute-error] line 810, in _writedata: No attribute 'fh' on baseproxyobserver [attribute-error] line 814, in _writedata: No attribute 'fh' on baseproxyobserver [attribute-error] line 815, in _writedata: No attribute 'name' on baseproxyobserver [attribute-error] line 817, in _writedata: No attribute 'fh' on baseproxyobserver [attribute-error] Differential Revision: https://phab.mercurial-scm.org/D7675
Wed, 11 Dec 2019 22:23:42 -0800 config: drop debug messages saying where config was read from
Martin von Zweigbergk <martinvonz@google.com> [Wed, 11 Dec 2019 22:23:42 -0800] rev 43919
config: drop debug messages saying where config was read from `hg config --debug` includes lines like this: set config by: $EDITOR but also lines like this: $EDITOR: ui.editor=emacs -nw The `set config by` messages don't seem to provide much additional information over what we get from the `$EDITOR:`-type message. I could imagine wanting to see which values got overriden by a later entry, but that information is already not present. So let's just remove the first type of output. My next patch would otherwise amplify the redundant output (there would be one `set config by` for each line in `mergetools.rc`). Differential Revision: https://phab.mercurial-scm.org/D7627
Wed, 11 Dec 2019 11:22:37 -0800 rcutil: don't check if defaultrc/ is a directory -- we know it is
Martin von Zweigbergk <martinvonz@google.com> [Wed, 11 Dec 2019 11:22:37 -0800] rev 43918
rcutil: don't check if defaultrc/ is a directory -- we know it is `mercurial/defaultrc/` is a directory both in the Mercurial repo and once installed on a target platform. The directory was created in c4ce077588d0 (config: introduce "built-in" default configuration settings in default.d, 2014-09-04). That commit has some more information, but it still doesn't seem to say that `defaultrc/` (then called `default.d/`) could be a file. Perhaps the check was there to allow you to run the same code on an older install/repo? Differential Revision: https://phab.mercurial-scm.org/D7624
Fri, 29 Nov 2019 17:30:57 +0100 rust-matchers: add support for `exactmatcher` in `dirstate.status`
Raphaël Gomès <rgomes@octobus.net> [Fri, 29 Nov 2019 17:30:57 +0100] rev 43917
rust-matchers: add support for `exactmatcher` in `dirstate.status` `exactmatcher` is the name in the Python implementation and corresponds to `FileMatcher` in Rust. Differential Revision: https://phab.mercurial-scm.org/D7531
(0) -30000 -10000 -3000 -1000 -300 -100 -50 -30 +30 +50 +100 +300 +1000 +3000 tip