Yuya Nishihara <yuya@tcha.org> [Wed, 28 Mar 2018 22:06:47 +0900] rev 37140
py3: bytes/unicode dance on __doc__ of cmdalias
Yuya Nishihara <yuya@tcha.org> [Wed, 28 Mar 2018 22:04:45 +0900] rev 37139
alias: reject non-ascii characters in user help/doc strings
Since command doc/help texts are passed to i18n.gettext(), they must be
ASCII. Otherwise, UnicodeError would be raised.
Matt Harbison <matt_harbison@yahoo.com> [Mon, 26 Mar 2018 22:18:36 -0400] rev 37138
lfs: respect narrowmatcher when testing to add 'lfs' requirement (
issue5794)
There's a similar test in lfs.wrapper.convertsink(), but I didn't update that
because I don't think that the sink repo in a convert can be narrow.
It seems reasonable that a narrow clone of an LFS repo may not necessarily be an
LFS repo. The only potential issue is that LFS has a hard requirement for
changegroup v3, which that extension enables. The use of treemanifest will
enable changegroup v3 in narrow clones, because allsupportedversions() in
changegroup.py preserves it when it sees a 'treemanifest' requirement. But I
don't see where changegroup v3 is enabled for a flat manifest.
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 20 Mar 2018 18:02:16 -0700] rev 37137
localrepo: make filterpats private (API)
I'm not sure why this is available on the public API. AFAICT it isn't
used outside of the class.
.. api::
localrepo.localrepository.filterpats was renamed to
localrepo.localrepository._filterpats.
Differential Revision: https://phab.mercurial-scm.org/D2927
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 20 Mar 2018 17:34:05 -0700] rev 37136
narrow: use featuresetupfuncs
This is the preferred way to register repo requirements that can be
opened because it respects the set of loaded extensions at repo open
time.
Differential Revision: https://phab.mercurial-scm.org/D2926
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 20 Mar 2018 17:30:30 -0700] rev 37135
localrepo: move featuresetupfuncs out of localrepository class (API)
I want to establish an interface for local repositories.
featuresetupfuncs is a class attribute and is global/shared across all
localrepository instances. Let's move it to a module-level attribute
to clarify it isn't part of the local repository interface.
.. api::
localrepo.localrepository.featuresetupfuncs has been renamed to
localrepo.featuresetupfuncs.
Differential Revision: https://phab.mercurial-scm.org/D2925
Rodrigo Damazio <rdamazio@google.com> [Sun, 04 Mar 2018 17:11:33 -0500] rev 37134
help: supporting both help and doc for aliases
This allows an alias to be definted like:
[alias]
lj = log -Tjson
lj:help = [-r REV]
lj:doc = Shows the revision log in JSON format.
Differential Revision: https://phab.mercurial-scm.org/D2678
Sangeet Kumar Mishra <mail2sangeetmishra@gmail.com> [Tue, 27 Mar 2018 20:21:30 +0530] rev 37133
grep: fixes erroneous output of grep in forward order (
issue3885)
If grep is passed a revset in forwards order via -r , say -r 0:tip
Then the output is erroneous. This patch fixes that. The output was wrong
because we deleted the last revision key in the matches and when we moved
to the next revision we didn't had this to compare the diff. So the pstates
dict was always empty and in the SequenceMatcher, to convert and empty pstate
to the states dictionary you would always insert. This patch keeps the matches
dictionary until the end of this window and clears it at once when this
window ends. This solves the above mentioned problem and also do not cause
any memory leak.
Matt Harbison <matt_harbison@yahoo.com> [Mon, 26 Mar 2018 23:02:50 -0400] rev 37132
lfs: move the 'supportedoutgoingversions' handling to changegroup.py
This handling already exists here for the narrow extension. We still need to
either figure out how to enable changegroup v3 without the extension, or figure
out how to let the server detect that the client doesn't have it loaded, and
emit a user friendly error[1]. I can't tell if D1944 is the appropriate vehicle
for the latter.
[1] https://www.mercurial-scm.org/pipermail/mercurial-devel/2018-January/109550.html
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 04 Mar 2018 09:58:57 -0500] rev 37131
obsolete: refactor function for getting obsolete options
The function for returning obsolete option values obtains all
options, validates, then returns the option that was requested.
Let's create a new function to return all obsolete option values
so callers needing multiple values can call that.
Differential Revision: https://phab.mercurial-scm.org/D2667