phabricator: rework phabread to reduce memory usage and round-trips
This patch reworked phabread a bit so it fetches the lightweight
"Differential Revision" metadata for a stack first. Then read other data.
This allows the code to:
a) send 1 request to get all `hg:meta` data instead of N requests
b) patches are read in desired order, no need to buffer the output
"b)" reduces the memory usage from O(N^2) to O(N) since we no longer keep
old patch contents in memory.
The above `N` means the number of patches in the stack.
#!/bin/sh
HGENCODING=UTF-8
export HGENCODING
echo ".. -*- coding: utf-8 -*-" > gendoc.txt
echo "" >> gendoc.txt
LANGUAGE=$1 python "$TESTDIR/../doc/gendoc.py" >> gendoc.txt 2> /dev/null || exit
echo "checking for parse errors"
python "$TESTDIR/../doc/docchecker" gendoc.txt
python "$TESTDIR/../doc/runrst" html gendoc.txt /dev/null