Sun, 27 Dec 2015 19:28:34 +0900 encoding: add option to escape non-ascii characters in JSON
Yuya Nishihara <yuya@tcha.org> [Sun, 27 Dec 2015 19:28:34 +0900] rev 28068
encoding: add option to escape non-ascii characters in JSON This is necessary for hgweb to embed JSON data in HTML. JSON data must be able to be embedded in non-UTF-8 HTML page so long as the page encoding is compatible with ASCII. According to RFC 7159, non-BMP character is represented as UTF-16 surrogate pair. This function first splits an input string into an array of UTF-16 code points. https://tools.ietf.org/html/rfc7159.html#section-7
Sat, 30 Jan 2016 19:48:35 +0900 encoding: initialize jsonmap when module is loaded
Yuya Nishihara <yuya@tcha.org> [Sat, 30 Jan 2016 19:48:35 +0900] rev 28067
encoding: initialize jsonmap when module is loaded This makes jsonescape() a thread-safe function, which is necessary for hgweb. The initialization stuff isn't that slow: $ python -m timeit -n1000 -s 'from mercurial import encoding as x' 'reload(x)' original: 1000 loops, best of 3: 158 usec per loop this patch: 1000 loops, best of 3: 214 usec per loop compared to loading the commands module: $ python -m timeit -n1000 -s 'from mercurial import commands as x' 'reload(x)' 1000 loops, best of 3: 1.11 msec per loop
Sat, 30 Jan 2016 19:41:34 +0900 encoding: change jsonmap to a list indexed by code point
Yuya Nishihara <yuya@tcha.org> [Sat, 30 Jan 2016 19:41:34 +0900] rev 28066
encoding: change jsonmap to a list indexed by code point This is slightly faster and convenient to implement a paranoid escaping. $ python -m timeit \ -s 'from mercurial import encoding; data = str(bytearray(xrange(128)))' \ 'encoding.jsonescape(data)' original: 100000 loops, best of 3: 15.1 usec per loop this patch: 100000 loops, best of 3: 13.7 usec per loop
Tue, 02 Feb 2016 15:24:11 +0000 update: change default destination to tipmost descendant (issue4673) (BC)
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 02 Feb 2016 15:24:11 +0000] rev 28065
update: change default destination to tipmost descendant (issue4673) (BC) Bare 'hg update' now brings you to the tipmost descendant (on the same branch). Leaving the user on the same topological branch. The previous behavior, updating to the tipmost changeset on the same branch could lead to jump from a topological branch to another. This was confusing and impractical. As the only conceivable reason for the old behavior have been address by the recently introduce message about other heads, we can "safely" change this behavior All test changes have been reviewed and seen a valid consequences.
Wed, 03 Feb 2016 15:21:11 +0000 test: drop useless --update flag in issue1502 tests
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 03 Feb 2016 15:21:11 +0000] rev 28064
test: drop useless --update flag in issue1502 tests The --update is unrelated to the test and has no effect as it fails anyway. Dropping it reduces the noise in the coming change in default destination for update.
Thu, 11 Feb 2016 13:50:38 +0000 treemanifest: don't use cp -T, not supported on OS X
Martijn Pieters <mjpieters@fb.com> [Thu, 11 Feb 2016 13:50:38 +0000] rev 28063
treemanifest: don't use cp -T, not supported on OS X The OS X cp implementation has no -T switch. Copy directory contents using a glob instead.
Sun, 03 Jan 2016 12:45:32 +0900 chg: use in-tree hg executable to start server for testing
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Jan 2016 12:45:32 +0900] rev 28062
chg: use in-tree hg executable to start server for testing
Sun, 03 Jan 2016 12:41:28 +0900 hgignore: ignore chg binary
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Jan 2016 12:41:28 +0900] rev 28061
hgignore: ignore chg binary
Sun, 03 Jan 2016 12:39:27 +0900 chg: import frontend sources
Yuya Nishihara <yuya@tcha.org> [Sun, 03 Jan 2016 12:39:27 +0900] rev 28060
chg: import frontend sources These files are copied from https://bitbucket.org/yuja/chg/ -r f897faa79687
Wed, 10 Feb 2016 21:01:52 +0100 debugrevlog: fix dumping manifest fails on empty first revision (issue5062)
liscju <piotr.listkiewicz@gmail.com> [Wed, 10 Feb 2016 21:01:52 +0100] rev 28059
debugrevlog: fix dumping manifest fails on empty first revision (issue5062)
(0) -10000 -3000 -1000 -300 -100 -10 +10 +100 +300 +1000 +3000 +10000 tip