Sun, 10 Apr 2016 21:32:01 +0000 py3: use absolute_import in test-hgweb-no-request-uri.t
timeless <timeless@mozdev.org> [Sun, 10 Apr 2016 21:32:01 +0000] rev 28858
py3: use absolute_import in test-hgweb-no-request-uri.t
Sun, 10 Apr 2016 21:31:58 +0000 py3: use absolute_import in test-hgweb-no-path-info.t
timeless <timeless@mozdev.org> [Sun, 10 Apr 2016 21:31:58 +0000] rev 28857
py3: use absolute_import in test-hgweb-no-path-info.t
Mon, 11 Apr 2016 00:18:27 +0100 chg: use fsetcloexec instead of closing lockfd manually
Jun Wu <quark@fb.com> [Mon, 11 Apr 2016 00:18:27 +0100] rev 28856
chg: use fsetcloexec instead of closing lockfd manually Since we have the fsetcloexec utility function, use it instead of closing lockfd manually.
Mon, 11 Apr 2016 00:17:17 +0100 chg: extract the logic of setting FD_CLOEXEC to a utility function
Jun Wu <quark@fb.com> [Mon, 11 Apr 2016 00:17:17 +0100] rev 28855
chg: extract the logic of setting FD_CLOEXEC to a utility function Setting FD_CLOEXEC is useful for other fds such like lockfd and sockdirfd, move the logic from hgc_open to util.
Sun, 10 Apr 2016 03:14:32 +0100 chg: add fchdirx as a utility function
Jun Wu <quark@fb.com> [Sun, 10 Apr 2016 03:14:32 +0100] rev 28854
chg: add fchdirx as a utility function As part of the series to support long socket paths, we need to use fchdir and check its result in several places. Make it a utility function.
Sun, 10 Apr 2016 22:58:11 +0100 chg: check lockfd at freecmdserveropts
Jun Wu <quark@fb.com> [Sun, 10 Apr 2016 22:58:11 +0100] rev 28853
chg: check lockfd at freecmdserveropts We check for sockdirfd at freecmdserveropts but not lockfd, which is a bit strange to people new to the code. Add a comment and an assert to make it clear that lockfd should be closed earlier.
Sun, 10 Apr 2016 23:56:00 +0100 chg: add sockdirfd to cmdserveropts
Jun Wu <quark@fb.com> [Sun, 10 Apr 2016 23:56:00 +0100] rev 28852
chg: add sockdirfd to cmdserveropts As part of the series to support long socket paths, we need to add the fd of the directory to the cmdserveropts structure so we can use basenames instead of full paths for sockname, redirectsockname, and lockfile.
Sun, 10 Apr 2016 21:56:05 +0100 chg: fix spelling in the error message about error waiting for cmdserver
Jun Wu <quark@fb.com> [Sun, 10 Apr 2016 21:56:05 +0100] rev 28851
chg: fix spelling in the error message about error waiting for cmdserver This is a trivial spelling and grammar fix.
Sun, 10 Apr 2016 11:02:58 -0700 sslutil: document and slightly refactor validation logic
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 10 Apr 2016 11:02:58 -0700] rev 28850
sslutil: document and slightly refactor validation logic This main purpose of this patch is to make it clearer that fingerprint pinning takes precedence over CA verification. This will make subsequent refactoring to the validation code easier to read.
Sun, 10 Apr 2016 11:00:41 -0700 sslutil: require a server hostname when wrapping sockets (API)
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 10 Apr 2016 11:00:41 -0700] rev 28849
sslutil: require a server hostname when wrapping sockets (API) All callers appear to be passing the hostname. So this shouldn't break anything. By specifying the hostname, more validation options from the ssl module are available to us. Although this patch stops short of using them.
Sun, 10 Apr 2016 10:59:45 -0700 sslutil: move and document verify_mode assignment
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 10 Apr 2016 10:59:45 -0700] rev 28848
sslutil: move and document verify_mode assignment Consolidating all the SSLContext options setting makes the code a bit easier to read.
Sun, 10 Apr 2016 10:54:53 -0700 tests: use --insecure instead of web.cacerts=!
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 10 Apr 2016 10:54:53 -0700] rev 28847
tests: use --insecure instead of web.cacerts=! --insecure is the proper and documented way to do this. The end result is the same: dispatch will set web.cacerts to ! when --insecure is passed. This patch is necessary to refactor handling of web.cacerts in upcoming patches.
Sun, 10 Apr 2016 10:58:47 -0700 help: remove references to "Python 2.6 or later"
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 10 Apr 2016 10:58:47 -0700] rev 28846
help: remove references to "Python 2.6 or later" We require Python 2.6. So there is no value to these docs.
Mon, 04 Apr 2016 02:05:10 -0700 commands: make --rev and --index compatible in debugobsolete
Kostia Balytskyi <ikostia@fb.com> [Mon, 04 Apr 2016 02:05:10 -0700] rev 28845
commands: make --rev and --index compatible in debugobsolete
Sun, 03 Apr 2016 19:38:57 +0900 tests: enable import checker for tests/**.py files
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Apr 2016 19:38:57 +0900] rev 28844
tests: enable import checker for tests/**.py files Several known-bad files are excluded as they couldn't be trivially fixed. In principle, we should fix them first, however, it would have more risk to keep Py3k porting going without the test coverage. Still contrib/**.py aren't covered, which needs another round.
Tue, 05 Apr 2016 23:38:00 +0900 tests: stop direct symbol import of mercurial modules in test-status-inprocess
Yuya Nishihara <yuya@tcha.org> [Tue, 05 Apr 2016 23:38:00 +0900] rev 28843
tests: stop direct symbol import of mercurial modules in test-status-inprocess
Tue, 05 Apr 2016 23:35:45 +0900 tests: alias ui as uimod in test-revlog-ancestry/test-ui-verbosity
Yuya Nishihara <yuya@tcha.org> [Tue, 05 Apr 2016 23:35:45 +0900] rev 28842
tests: alias ui as uimod in test-revlog-ancestry/test-ui-verbosity
Tue, 05 Apr 2016 23:23:43 +0900 tests: move stdlib imports before mercurial modules in test-parseindex2
Yuya Nishihara <yuya@tcha.org> [Tue, 05 Apr 2016 23:23:43 +0900] rev 28841
tests: move stdlib imports before mercurial modules in test-parseindex2
Tue, 05 Apr 2016 23:22:38 +0900 tests: stop direct symbol import of pprint.pprint in tests-minirst
Yuya Nishihara <yuya@tcha.org> [Tue, 05 Apr 2016 23:22:38 +0900] rev 28840
tests: stop direct symbol import of pprint.pprint in tests-minirst
Tue, 05 Apr 2016 23:30:18 +0900 tests: import mercurial modules by name in test-propertycache
Yuya Nishihara <yuya@tcha.org> [Tue, 05 Apr 2016 23:30:18 +0900] rev 28839
tests: import mercurial modules by name in test-propertycache This is our convention, and silences import-checker.py that would say imports weren't lexically sorted.
Tue, 05 Apr 2016 23:33:55 +0900 tests: remove unused import of mercurial.repoview from test-propertycache
Yuya Nishihara <yuya@tcha.org> [Tue, 05 Apr 2016 23:33:55 +0900] rev 28838
tests: remove unused import of mercurial.repoview from test-propertycache I don't see any reason to import it, but if there is a reason, please disregard this and the next patch.
Sun, 03 Apr 2016 11:23:31 +0900 templater: drop deprecated handling of KeyError from changeset_templater
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Apr 2016 11:23:31 +0900] rev 28837
templater: drop deprecated handling of KeyError from changeset_templater It's been superseded by 09cde75e0613 and the previous patch. templater.mapfile is no longer used and removed.
Wed, 06 Apr 2016 20:34:34 +0000 test-commandserver: handle cStringIO.StringIO/io.StringIO divergence
timeless <timeless@mozdev.org> [Wed, 06 Apr 2016 20:34:34 +0000] rev 28836
test-commandserver: handle cStringIO.StringIO/io.StringIO divergence
Wed, 06 Apr 2016 20:31:31 +0000 pycompat: add util.stringio to handle py3 divergence
timeless <timeless@mozdev.org> [Wed, 06 Apr 2016 20:31:31 +0000] rev 28835
pycompat: add util.stringio to handle py3 divergence util.stringio = cStringIO.StringIO / io.StringIO
Wed, 06 Apr 2016 22:35:52 +0000 pycompat: alias xrange to range in py3
timeless <timeless@mozdev.org> [Wed, 06 Apr 2016 22:35:52 +0000] rev 28834
pycompat: alias xrange to range in py3
Fri, 08 Apr 2016 14:03:05 +0000 pycompat: fix demand import handling of Queue
timeless <timeless@mozdev.org> [Fri, 08 Apr 2016 14:03:05 +0000] rev 28833
pycompat: fix demand import handling of Queue When demandimport is enabled, simply importing a non existent module does not trigger ImportError, a property access is necessary.
Tue, 29 Mar 2016 17:43:23 +0000 util: use __code__ (available since py2.6)
timeless <timeless@mozdev.org> [Tue, 29 Mar 2016 17:43:23 +0000] rev 28832
util: use __code__ (available since py2.6)
Sun, 03 Apr 2016 11:20:50 +0900 templater: give better error message for invalid engine type
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Apr 2016 11:20:50 +0900] rev 28831
templater: give better error message for invalid engine type Before, KeyError was caught at changeset_templater._show(), which said "no key named '%s'" as it was intended to catch the KeyError of unknown map key. Instead, we should catch KeyError explicitly for better error indication. For those who don't know what the template engine is (read "everyone"), it is hidden extension feature that allows switching template syntax in map file. See d8c5a7f25a40 for details.
Thu, 07 Apr 2016 14:10:49 -0700 transaction: allow running file generators after finalizers
Durham Goode <durham@fb.com> [Thu, 07 Apr 2016 14:10:49 -0700] rev 28830
transaction: allow running file generators after finalizers Previously, transaction.close would run the file generators before running the finalizers (see the list below for what is in each). Since file generators contain the bookmarks and the dirstate, this meant we made the dirstate and bookmarks visible to external readers before we actually wrote the commits into the changelog, which could result in missing bookmarks and missing working copy parents (especially on servers with high commit throughput, since pulls might fail to see certain bookmarks in this situation). By moving the changelog writing to be before the bookmark/dirstate writing, we ensure the commits are present before they are referenced. This implementation allows certain file generators to be after the finalizers. We didn't want to move all of the generators, since it's important that things like phases actually run before the finalizers (otherwise you could expose commits as public when they really shouldn't be). For reference, file generators currently consist of: bookmarks, dirstate, and phases. Finalizers currently consist of: changelog, revbranchcache, and fncache.
Thu, 07 Apr 2016 11:11:55 +0000 run-tests: move install.err into test area
timeless <timeless@mozdev.org> [Thu, 07 Apr 2016 11:11:55 +0000] rev 28829
run-tests: move install.err into test area Without this, sometimes installerrs generated errors about no such file. It also did not work well when you had multiple tests runners running around. It also did not make sense to pollute the repository test directory with the log file.
Fri, 08 Apr 2016 18:35:49 +0000 help: report source of aliases
timeless <timeless@mozdev.org> [Fri, 08 Apr 2016 18:35:49 +0000] rev 28828
help: report source of aliases
Fri, 08 Apr 2016 16:05:52 +0000 compact: add color labels to -Tcompact
timeless <timeless@mozdev.org> [Fri, 08 Apr 2016 16:05:52 +0000] rev 28827
compact: add color labels to -Tcompact
Fri, 08 Apr 2016 22:15:06 +0200 util: fix doc for datestr()
Adrian Buehlmann <adrian@cadifra.com> [Fri, 08 Apr 2016 22:15:06 +0200] rev 28826
util: fix doc for datestr() timezone parameter was removed with c3182eeb70ea
Fri, 08 Apr 2016 14:11:03 +0200 date: reallow negative timestamp, fix for Windows buggy gmtime() (issue2513)
Florent Gallaire <fgallaire@gmail.com> [Fri, 08 Apr 2016 14:11:03 +0200] rev 28825
date: reallow negative timestamp, fix for Windows buggy gmtime() (issue2513) DVCS are very useful to store various texts (as legislation) written before Unix epoch. Fri, 13 Dec 1901 is a nice gain over Thu, 01 Jan 1970. Revert dd24f3e7ca9e and e1002cf9fe54, fix c208dcd0f709. Add tests.
Wed, 06 Apr 2016 19:08:04 +0000 tests: use /usr/bin/env python for test-status-inprocess.py
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
Wed, 06 Apr 2016 22:26:47 -0400 run-tests: fix broken regular expression
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.
Tue, 05 Apr 2016 12:19:45 -0700 test: don't rely on __del__ in test-devel-warnings.t
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.
Tue, 05 Apr 2016 20:01:23 +0100 dispatch: split out warning message generation to separate function
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).
Wed, 06 Apr 2016 20:08:18 +0000 check-code: reject import Queue, suggest util.queue class for py3 compat
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
Wed, 06 Apr 2016 20:07:51 +0000 scmutil: use util.queue/util.empty 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
Wed, 06 Apr 2016 20:00:49 +0000 pycompat: add empty and queue to handle py3 divergence
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
Mon, 04 Apr 2016 15:39:13 +0200 convert: kill dead code
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.
Mon, 04 Apr 2016 15:38:48 +0200 convert: don't ignore errors from git diff-tree
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
Wed, 06 Apr 2016 18:19:36 +0000 crecord: check for untracked arguments
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
Wed, 06 Apr 2016 18:08:38 +0000 localrepo: drop force check from 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
Wed, 06 Apr 2016 17:52:17 +0000 localrepo: refactor commit argument check as checkcommitpatterns
timeless <timeless@mozdev.org> [Wed, 06 Apr 2016 17:52:17 +0000] rev 28813
localrepo: refactor commit argument check as checkcommitpatterns
Tue, 05 Apr 2016 04:26:20 +0000 run-tests: handle empty tests
timeless <timeless@mozdev.org> [Tue, 05 Apr 2016 04:26:20 +0000] rev 28812
run-tests: handle empty tests
Tue, 12 Jan 2016 09:30:57 +0000 docchecker: try to reject single quotes
timeless <timeless@mozdev.org> [Tue, 12 Jan 2016 09:30:57 +0000] rev 28811
docchecker: try to reject single quotes
Thu, 03 Mar 2016 03:32:44 +0000 docchecker: report context line at most once
timeless <timeless@mozdev.org> [Thu, 03 Mar 2016 03:32:44 +0000] rev 28810
docchecker: report context line at most once
Wed, 06 Jan 2016 20:45:50 +0000 tests: splitting test-gendoc.t into per file tests
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
Tue, 05 Apr 2016 23:21:17 +0900 test-hgweb-auth: stop direct symbol import of mercurial.error.Abort
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
Tue, 05 Apr 2016 23:20:04 +0900 test-hgweb-auth: alias ui as uimod
Yuya Nishihara <yuya@tcha.org> [Tue, 05 Apr 2016 23:20:04 +0900] rev 28807
test-hgweb-auth: alias ui as uimod
Tue, 05 Apr 2016 23:18:52 +0900 test-hg-parseurl: stop direct symbol import of mercurial.hg.parseurl
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
Tue, 05 Apr 2016 23:17:43 +0900 test-filelog: alias ui as uimod
Yuya Nishihara <yuya@tcha.org> [Tue, 05 Apr 2016 23:17:43 +0900] rev 28805
test-filelog: alias ui as uimod
Tue, 05 Apr 2016 23:17:05 +0900 test-duplicateoptions: 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
Tue, 05 Apr 2016 23:16:16 +0900 test-filecache: 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
Tue, 05 Apr 2016 23:15:49 +0900 test-filecache: sort import lines
Yuya Nishihara <yuya@tcha.org> [Tue, 05 Apr 2016 23:15:49 +0900] rev 28802
test-filecache: sort import lines
Tue, 05 Apr 2016 23:13:52 +0900 test-ctxmanager: stop direct symbol import of mercurial.util
Yuya Nishihara <yuya@tcha.org> [Tue, 05 Apr 2016 23:13:52 +0900] rev 28801
test-ctxmanager: stop direct symbol import of mercurial.util
Tue, 05 Apr 2016 23:10:13 +0900 test-batching: stop direct symbol import of mercurial modules
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.
Wed, 06 Jan 2016 17:18:18 +0000 children: use double quotes for arguments
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.
Tue, 12 Jan 2016 09:30:39 +0000 largefiles: use double quotes for arguments
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.
Tue, 12 Jan 2016 09:30:24 +0000 graft: use double quotes for arguments
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.
Mon, 04 Apr 2016 06:27:12 +0000 hghave: add cvsnt
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 """
Fri, 01 Apr 2016 15:12:50 -0700 commands: allow debugobsolete to delete arbitrary obsmarkers
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.
Fri, 01 Apr 2016 15:20:31 -0700 commands: disallow 'hg debugobsolete --index --rev <smth>'
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.
Tue, 05 Apr 2016 18:10:33 +0100 mercurial: add editorconfig
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.
Tue, 05 Apr 2016 10:43:43 -0400 parsers: fix istat macro to work with single line if statement
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
Tue, 05 Apr 2016 14:44:18 +0300 pypy: fix setdiscovery test
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.
Tue, 05 Apr 2016 17:43:02 +0100 chg: wrap line at 80 chars
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.
Tue, 05 Apr 2016 15:16:01 +0100 chg: replace abortmsg showing errno with abortmsgerrno
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.
Tue, 05 Apr 2016 17:25:39 +0100 chg: add util function abortmsgerrno to print error with errno
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.
Tue, 05 Apr 2016 14:48:09 +0100 chg: use color in debug/error messages conditionally
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.
Mon, 04 Apr 2016 17:45:54 -0700 revset: force ascending order for baseset initialized from a 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.
Mon, 04 Apr 2016 17:45:15 -0700 revset: stabilize repr of baseset initialized with a set
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.
Mon, 04 Apr 2016 17:27:37 +0100 dispatch: factor out command failure handling into a function
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.
Tue, 05 Apr 2016 10:59:46 +0300 pypy: fix overeager pattern matching on mpatchError
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.
Thu, 31 Mar 2016 02:05:28 +0000 mpatch: unify mpatchError (issue5182)
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.
Wed, 30 Mar 2016 22:01:47 +0000 check-code: reject sed ... \\n
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.
Sat, 02 Apr 2016 15:56:47 -0700 hideablerevs: expand docstring to warn about possible traps
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.
Sun, 03 Apr 2016 19:47:29 +0900 hghave: replace relative import of docutils.core
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Apr 2016 19:47:29 +0900] rev 28779
hghave: replace relative import of docutils.core
Sun, 03 Apr 2016 20:12:59 +0900 tests: make tinyproxy.py not import sys.argv by name
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
Sun, 03 Apr 2016 20:13:42 +0900 tests: alias ui as uimod in test-walkrepo
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Apr 2016 20:13:42 +0900] rev 28777
tests: alias ui as uimod in test-walkrepo
Sun, 03 Apr 2016 19:56:59 +0900 tests: alias ui as uimod in test-ui-config
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Apr 2016 19:56:59 +0900] rev 28776
tests: alias ui as uimod in test-ui-config
Sun, 03 Apr 2016 19:52:13 +0900 tests: alias ui as uimod in test-context
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Apr 2016 19:52:13 +0900] rev 28775
tests: alias ui as uimod in test-context
Sun, 03 Apr 2016 19:48:47 +0900 tests: alias ui as uimod in test-ancestor
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Apr 2016 19:48:47 +0900] rev 28774
tests: alias ui as uimod in test-ancestor
Sun, 03 Apr 2016 20:11:41 +0900 tests: sort import lines in tinyproxy.py
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Apr 2016 20:11:41 +0900] rev 28773
tests: sort import lines in tinyproxy.py
Sun, 03 Apr 2016 19:41:00 +0900 tests: sort import lines in failfilemerge.py
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Apr 2016 19:41:00 +0900] rev 28772
tests: sort import lines in failfilemerge.py
Sun, 03 Apr 2016 19:40:05 +0900 tests: sort import lines in dumbhttp.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?
Mon, 04 Apr 2016 01:59:57 +0100 chgserver: change random state after fork
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.
Mon, 04 Apr 2016 02:36:05 +0100 chg: make connect debug message less repetitive
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.
Mon, 04 Apr 2016 03:17:59 +0100 chgserver: use relative path at socket.bind
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.
Mon, 04 Apr 2016 01:10:51 +0100 chgserver: move args copying logic to the correct place
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.
Mon, 04 Apr 2016 05:20:40 +0300 py3: use print_function in test-status-inprocess.py
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
Mon, 04 Apr 2016 05:19:35 +0300 py3: use absolute_import 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
Mon, 04 Apr 2016 05:10:11 +0300 py3: use print_function in test-revlog-ancestry.py
Robert Stanca <robert.stanca7@gmail.com> [Mon, 04 Apr 2016 05:10:11 +0300] rev 28764
py3: use print_function in test-revlog-ancestry.py
Mon, 04 Apr 2016 05:09:24 +0300 py3: use absolute_import in test-revlog-ancestry.py
Robert Stanca <robert.stanca7@gmail.com> [Mon, 04 Apr 2016 05:09:24 +0300] rev 28763
py3: use absolute_import in test-revlog-ancestry.py
(0) -10000 -3000 -1000 -300 -100 -96 +96 +100 +300 +1000 +3000 +10000 tip