FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sun, 18 Jul 2010 01:06:50 +0900] rev 11611
i18n: use encoding.colwidth() for correct column width
Some encoding and language combinations (e.g.: UTF-8 and Japanese)
cause encoding characters into sequence of bytes more than column
width of them.
So, encoding.colwidth() should be applied instread of len() on i18n
strings.
In addition to it, formatting by '%*s'/'%-*s' also uses "number of
bytes" to calculate space padding size, and should be fixed, too.
Nicolas Dumazet <nicdumz.commits@gmail.com> [Sun, 18 Jul 2010 18:11:59 +0900] rev 11610
merge with stable
Nicolas Dumazet <nicdumz.commits@gmail.com> [Sun, 04 Jul 2010 18:07:30 +0900] rev 11609
log: slowpath: do not read the full changelog
When in the slowpath, we are examining _all_ changesets in revs.
We need to order reads so they happen increasingly for I/O performance.
Increasing windows were used to read changelog backwards in a windowed manner,
reading the changelog forward inside each window. But since no revision range
was specified, it was equivalent to reading the full changelog, even if a
single revision was passed to the commandline.
When --removed is used, we _need_ to scan all changesets, but if we're only
looking for file patterns, this is not necessary and we can stick to
the revspec that was given to us.
Nicolas Dumazet <nicdumz.commits@gmail.com> [Sat, 03 Jul 2010 18:11:15 +0900] rev 11608
log: remove increasing windows usage in fastpath
The purpose of increasing windows is to allow backwards iteration on the
filelog at a reasonable cost.
But is it needed?
- if follow is False, we have no reason to iterate backwards.
We basically just want to walk the complete filelog and yield all revisions
within the revision range. We can do this forward or
backwards, as it only reads the index.
- when follow is True, we need to examine the contents of the filelog, and to
do this efficiently we need to read the filelog forward.
And on the other hand, to track ancestors and copies, we need to process
revisions backwards. But is it necessary to use increasing windows
for this?
We can iterate over the complete filelog forward, stack the revisions, and
read the reversed(pile), it does the same thing with a more readable code.
Nicolas Dumazet <nicdumz.commits@gmail.com> [Sat, 03 Jul 2010 18:01:54 +0900] rev 11607
log: refactor: test for ranges inside filerevgen
Nicolas Dumazet <nicdumz.commits@gmail.com> [Sat, 03 Jul 2010 17:58:48 +0900] rev 11606
log: refactor: compute the value of last outside of filerevgen
Nicolas Dumazet <nicdumz.commits@gmail.com> [Fri, 16 Jul 2010 16:33:55 +0900] rev 11605
context: use os.lstat instead of os.stat to fetch file size
When file is a link, we want the size of the link itself, not the size
of the file it points to.
Matt Mackall <mpm@selenic.com> [Fri, 16 Jul 2010 13:26:39 -0500] rev 11604
check-code: add --blame switch
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Fri, 16 Jul 2010 18:35:15 +0200] rev 11603
changegroupsubset: remove unneeded cast to list
Martin Geisler <mg@lazybytes.net> [Fri, 16 Jul 2010 14:48:52 +0200] rev 11602
check-code: catch dict.has_key