timeless <timeless@mozdev.org> [Wed, 06 Apr 2016 19:08:04 +0000] rev 28824
tests: use /usr/bin/env python for test-status-inprocess.py
everyone else uses it, and the next commit will add a rule for it
Augie Fackler <augie@google.com> [Wed, 06 Apr 2016 22:26:47 -0400] rev 28823
run-tests: fix broken regular expression
The regular expression in use passed tests because the test repo only
has single-digit changesets present. When I tried to use this for real
today, it broke, because the regular expression would only match a
single digit.
https://xkcd.com/1171/, or something like that.
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 05 Apr 2016 12:19:45 -0700] rev 28822
test: don't rely on __del__ in test-devel-warnings.t
Whatever the future of __del__ in Mercurial is, that devel-warning test is not
about testing the automatic transaction rollback and we should explicitly call
release.
This change make this tests pass with pypy, as pypy try less hard to call
__del__ at program exit.
Martijn Pieters <mjpieters@fb.com> [Tue, 05 Apr 2016 20:01:23 +0100] rev 28821
dispatch: split out warning message generation to separate function
Allow for patching warning message generation, or for patching out the ui.log /
ui.warn behaviour (but still generate the warning message).
timeless <timeless@mozdev.org> [Wed, 06 Apr 2016 20:08:18 +0000] rev 28820
check-code: reject import Queue, suggest util.queue class for py3 compat
timeless <timeless@mozdev.org> [Wed, 06 Apr 2016 20:07:51 +0000] rev 28819
scmutil: use util.queue/util.empty for py3 compat
timeless <timeless@mozdev.org> [Wed, 06 Apr 2016 20:00:49 +0000] rev 28818
pycompat: add empty and queue to handle py3 divergence
While the pycompat module will actually handle divergence, please
access these properties from the util module:
util.queue = Queue.Queue / queue.Queue
util.empty = Queue.Empty / queue.Empty
Julien Cristau <julien.cristau@logilab.fr> [Mon, 04 Apr 2016 15:39:13 +0200] rev 28817
convert: kill dead code
gitread is unused with the new commandline-based code.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 04 Apr 2016 15:38:48 +0200] rev 28816
convert: don't ignore errors from git diff-tree
timeless <timeless@mozdev.org> [Wed, 06 Apr 2016 18:19:36 +0000] rev 28815
crecord: check for untracked arguments
hg commit tracked untracked -- fails complaining about untracked
prior to this commit,
hg commit -i tracked untracked -- did not fail
This is corrected by calling the refactored localrepo.checkcommitpatterns
timeless <timeless@mozdev.org> [Wed, 06 Apr 2016 18:08:38 +0000] rev 28814
localrepo: drop force check from checkcommitpatterns
It was retained to make the code movement clearer
timeless <timeless@mozdev.org> [Wed, 06 Apr 2016 17:52:17 +0000] rev 28813
localrepo: refactor commit argument check as checkcommitpatterns
timeless <timeless@mozdev.org> [Tue, 05 Apr 2016 04:26:20 +0000] rev 28812
run-tests: handle empty tests
timeless <timeless@mozdev.org> [Tue, 12 Jan 2016 09:30:57 +0000] rev 28811
docchecker: try to reject single quotes
timeless <timeless@mozdev.org> [Thu, 03 Mar 2016 03:32:44 +0000] rev 28810
docchecker: report context line at most once
timeless <timeless@mozdev.org> [Wed, 06 Jan 2016 20:45:50 +0000] rev 28809
tests: splitting test-gendoc.t into per file tests
Localizers can now run test-gendoc-$LOCALE.t instead of
test-gendoc.t.
After this change, test-gendoc.t only checks whether there is *some*
localization for the expected set of languages and no others.
Whenever a locale i18n/$LOCALE.po is added, someone needs
to add test-gendoc-$LOCALE.t
Yuya Nishihara <yuya@tcha.org> [Tue, 05 Apr 2016 23:21:17 +0900] rev 28808
test-hgweb-auth: stop direct symbol import of mercurial.error.Abort
Yuya Nishihara <yuya@tcha.org> [Tue, 05 Apr 2016 23:20:04 +0900] rev 28807
test-hgweb-auth: alias ui as uimod
Yuya Nishihara <yuya@tcha.org> [Tue, 05 Apr 2016 23:18:52 +0900] rev 28806
test-hg-parseurl: stop direct symbol import of mercurial.hg.parseurl
Yuya Nishihara <yuya@tcha.org> [Tue, 05 Apr 2016 23:17:43 +0900] rev 28805
test-filelog: alias ui as uimod
Yuya Nishihara <yuya@tcha.org> [Tue, 05 Apr 2016 23:17:05 +0900] rev 28804
test-duplicateoptions: alias ui as uimod
Yuya Nishihara <yuya@tcha.org> [Tue, 05 Apr 2016 23:16:16 +0900] rev 28803
test-filecache: alias ui as uimod
Yuya Nishihara <yuya@tcha.org> [Tue, 05 Apr 2016 23:15:49 +0900] rev 28802
test-filecache: sort import lines
Yuya Nishihara <yuya@tcha.org> [Tue, 05 Apr 2016 23:13:52 +0900] rev 28801
test-ctxmanager: stop direct symbol import of mercurial.util
Yuya Nishihara <yuya@tcha.org> [Tue, 05 Apr 2016 23:10:13 +0900] rev 28800
test-batching: stop direct symbol import of mercurial modules
Silences future errors reported by import-checker.py.
timeless <timeless@mozdev.org> [Wed, 06 Jan 2016 17:18:18 +0000] rev 28799
children: use double quotes for arguments
You can't use single quotes in cmd.exe. See be7ef03d7fb6.
timeless <timeless@mozdev.org> [Tue, 12 Jan 2016 09:30:39 +0000] rev 28798
largefiles: use double quotes for arguments
You can't use single quotes in cmd.exe. See be7ef03d7fb6.
timeless <timeless@mozdev.org> [Tue, 12 Jan 2016 09:30:24 +0000] rev 28797
graft: use double quotes for arguments
You can't use single quotes in cmd.exe. See be7ef03d7fb6.
timeless <timeless@mozdev.org> [Mon, 04 Apr 2016 06:27:12 +0000] rev 28796
hghave: add cvsnt
cvsnt is a maintained commercial fork of cvs
https://en.wikipedia.org/wiki/CVSNT
It is possible to build a version of it from sources (github),
it requires libpcre and libltdl (libtool).
We already have a test that relates to cvsnt:
test-convert-cvsnt-mergepoints.t
cvsnt installs: cvs, cvslockd, cvsnt, cvsscript
I think we should definitely have a check for cvsnt because it makes
the version checks for cvs make a lot more sense.
When I use the version I built, cvs --version says:
"""
Concurrent Versions System (CVSNT) 2.5.05 (Gan) Build 3744 (Suite) (client/server)
CVSNT 2.5.05 (Apr 4 2016) Copyright (c) 2008 March Hare Software Ltd.
see http://www.march-hare.com/cvspro
CVS Copyright (c) 1989-2001 Brian Berliner, david d `zoo' zuhn,
Jeff Polk, and other authors
CVSNT Copyright (c) 1999-2008 Tony Hoyle and others
see http://www.cvsnt.org
Commercial support and training provided by March Hare Software Ltd.
see http://www.march-hare.com/cvspro
CVSNT may be copied only under the terms of the GNU General Public License v2,
a copy of which can be found with the CVS distribution.
The CVSNT Application API is licensed under the terms of the
GNU Library (or Lesser) General Public License.
Specify the --help option for further information about CVS
"""
Kostia Balytskyi <ikostia@fb.com> [Fri, 01 Apr 2016 15:12:50 -0700] rev 28795
commands: allow debugobsolete to delete arbitrary obsmarkers
Sample usage is:
'$ hg debugobsolete --delete 0 5'
This is a debug feature that will help people working on evolution and
obsolescense.
Kostia Balytskyi <ikostia@fb.com> [Fri, 01 Apr 2016 15:20:31 -0700] rev 28794
commands: disallow 'hg debugobsolete --index --rev <smth>'
A bug in the original --index implementation. The goal of --index is to allow
unique obsmarker identification that would be consistent between invocations
of this command in the unchanged repo. Further goal is to use this index to
delete arbitrary obsmarkers. So calling --index together with --rev would
cause obsmarker indices to be different than just calling --index. This is
not desired and current pattern for getting the index of an interesting
obsmarker is: `$ hg debugobsolete --index | grep <interesting hash>`.
It would clearly be better if we could somehow compute a hash of an obsmarker
and use it to identify the one we want to delete, but it seems a bit too
heavy for our current goals, so we can do this later if we want.
Jun Wu <quark@fb.com> [Tue, 05 Apr 2016 18:10:33 +0100] rev 28793
mercurial: add editorconfig
Editorconfig (http://editorconfig.org/) is a file format helping define coding
styles like spaces, tabs etc. It supports a wide range of editors. Some well-
known projects like ruby and zsh are using it already.
This patch adds a simple .editorconfig, making it clear we use 8-char tabs in
C code, 4-char spaces in Python code, and we don't keep trailing spaces.
Matt Fowles <matt.fowles@gmail.com> [Tue, 05 Apr 2016 10:43:43 -0400] rev 28792
parsers: fix istat macro to work with single line if statement
Maciej Fijalkowski <fijall@gmail.com> [Tue, 05 Apr 2016 14:44:18 +0300] rev 28791
pypy: fix setdiscovery test
This test relies on the exact details of random.sample given the
seed. Things work a bit differently under pypy, make the test less
specific.
Jun Wu <quark@fb.com> [Tue, 05 Apr 2016 17:43:02 +0100] rev 28790
chg: wrap line at 80 chars
This is a style fix. I was using tabstop=4 for some early patches, although
I realized we use tabstop=8 later but these early style issues remains. Let's
fix them.
Jun Wu <quark@fb.com> [Tue, 05 Apr 2016 15:16:01 +0100] rev 28789
chg: replace abortmsg showing errno with abortmsgerrno
Since we have abortmsgerrno now, use it to show human friendly error messages
across platforms.
Jun Wu <quark@fb.com> [Tue, 05 Apr 2016 17:25:39 +0100] rev 28788
chg: add util function abortmsgerrno to print error with errno
It's common to abortmsg with the errno information. Let's make a utility
function for it.
Jun Wu <quark@fb.com> [Tue, 05 Apr 2016 14:48:09 +0100] rev 28787
chg: use color in debug/error messages conditionally
Before this patch, chg always uses color in its debugmsg and abortmsg and
there is no way to turn it off.
This patch adds a global flag to control whether chg should use color or
not and only enables it when stderr is a tty and HGPLAIN is not set.
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 04 Apr 2016 17:45:54 -0700] rev 28786
revset: force ascending order for baseset initialized from a set
It is possible to initialize a baseset directly from a set object. However, in
this case the iteration order was inherited from the set. Set have undefined
iteration order (especially cpython and pypy will have different one) so we
should not rely on it anywhere.
Therefor we declare the baseset "ascending" to enforce a consistent iteration
order. The sorting is done lazily by the baseset class and should have no
performance impact when it does not matter.
This makes test-revset.t pass with pypy.
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 04 Apr 2016 17:45:15 -0700] rev 28785
revset: stabilize repr of baseset initialized with a set
Cpython and pypy have different way to build and order set, so the result of
list(myset) is different. We work around this by using the sorted version of the
data when displaying a list.
This get pypy closer to pass test-revset.t.
Martijn Pieters <mjpieters@fb.com> [Mon, 04 Apr 2016 17:27:37 +0100] rev 28784
dispatch: factor out command failure handling into a function
Moving the warning generation to a function allows for wrapping and
alternative error handling.
Maciej Fijalkowski <fijall@gmail.com> [Tue, 05 Apr 2016 10:59:46 +0300] rev 28783
pypy: fix overeager pattern matching on mpatchError
Pypy have difference in error reporting.
timeless <timeless@mozdev.org> [Thu, 31 Mar 2016 02:05:28 +0000] rev 28782
mpatch: unify mpatchError (issue5182)
The pure version was mpatch was throwing struct.error or ValueError
for errors, whereas the C version was throwing an "mpatch.mpatchError".
Introducing an mpatch.mpatchError into pure and using it consistently
is fairly easy, but the actual form for it is mercurial.mpatch.mpatchError,
so with this commit, we change the C implementation to match the naming
convention too.
timeless <timeless@mozdev.org> [Wed, 30 Mar 2016 22:01:47 +0000] rev 28781
check-code: reject sed ... \\n
This would have caught 142891ab6e89 (fixed by a5a13eeffc59)
if repcomment didn't make the content of the perl code
opaque to the check.
Pierre-Yves David <pierre-yves.david@fb.com> [Sat, 02 Apr 2016 15:56:47 -0700] rev 28780
hideablerevs: expand docstring to warn about possible traps
Sean Farley just wasted multiple hours trying to figure out why his code was
crashing. We update the docstring to make the constraint clearer.
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Apr 2016 19:47:29 +0900] rev 28779
hghave: replace relative import of docutils.core
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Apr 2016 20:12:59 +0900] rev 28778
tests: make tinyproxy.py not import sys.argv by name
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Apr 2016 20:13:42 +0900] rev 28777
tests: alias ui as uimod in test-walkrepo
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Apr 2016 19:56:59 +0900] rev 28776
tests: alias ui as uimod in test-ui-config
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Apr 2016 19:52:13 +0900] rev 28775
tests: alias ui as uimod in test-context
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Apr 2016 19:48:47 +0900] rev 28774
tests: alias ui as uimod in test-ancestor
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Apr 2016 20:11:41 +0900] rev 28773
tests: sort import lines in tinyproxy.py
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Apr 2016 19:41:00 +0900] rev 28772
tests: sort import lines in failfilemerge.py
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Apr 2016 19:40:05 +0900] rev 28771
tests: sort import lines in dumbhttp.py
This series is an attempt to enable import-checker.py for tests/**.py, but
it turned out not easy. Since many tests have been ported to absolute_import
without the coverage, import-checker.py reports a lot of errors right now.
Should we enable import-checker.py without fixing all of them so that we
won't get more errors?
Jun Wu <quark@fb.com> [Mon, 04 Apr 2016 01:59:57 +0100] rev 28770
chgserver: change random state after fork
Before this patch, extensions expecting a different random state per command
will break since the chg request handler will inherit a same random state
from the parent daemon process.
This patch addresses the issue by calling random.seed() after fork.
Jun Wu <quark@fb.com> [Mon, 04 Apr 2016 02:36:05 +0100] rev 28769
chg: make connect debug message less repetitive
Before this patch, "connect to" debug message is printed repeatedly because
a previous patch changed how the chg client decides the server is ready to be
connected.
This patch revises the places we print connect debug messages so they are less
repetitive without losing useful information.
Jun Wu <quark@fb.com> [Mon, 04 Apr 2016 03:17:59 +0100] rev 28768
chgserver: use relative path at socket.bind
Before this patch, if the server address is long, the server will fail to
listen and throw the error:
socket.error: AF_UNIX path too long
It is because AF_UNIX path usually has a very short length limit (107 chars on
common platforms, see sys/un.h).
This patch addresses the issue by using relative path instead. Therefore the
directory length does not matter. It helps run tests with chg using a long
$TMPDIR.
Jun Wu <quark@fb.com> [Mon, 04 Apr 2016 01:10:51 +0100] rev 28767
chgserver: move args copying logic to the correct place
A previous patch moved it to an incorrect place. Since dispatch._earlygetopt
has side effects on args, we need to move it to the place before _earlygetopt.
Robert Stanca <robert.stanca7@gmail.com> [Mon, 04 Apr 2016 05:20:40 +0300] rev 28766
py3: use print_function in test-status-inprocess.py
Robert Stanca <robert.stanca7@gmail.com> [Mon, 04 Apr 2016 05:19:35 +0300] rev 28765
py3: use absolute_import in test-status-inprocess.py