stream-clone: add a v3 version of the protocol
This new version is less rigid regarding the extract number of files and number
of bytes to be actually transfered, it also lays the groundwork for other
improvements.
The format stays experimental, but this is an interesting base to build upon.
#require serve
$ hg init test
$ cd test
$ cat > .hg/hgrc <<EOF
> [extensions]
> # this is only necessary to check that the mapping from
> # interhg to websub works
> interhg =
>
> [websub]
> issues = s|Issue(\d+)|<a href="http://bts.example.org/issue\1">Issue\1</a>|
> tickets = s|ticket(\d+)|<a href="http://ticket.example.org/issue\1">Ticket\1</a>|i
>
> [interhg]
> # check that we maintain some interhg backwards compatibility...
> # yes, 'x' is a weird delimiter...
> markbugs = sxbugx<i class="\x">bug</i>x
> problems = sxPROBLEMx<i class="\x">problem</i>xi
> EOF
$ touch foo
$ hg add foo
$ hg commit -d '1 0' -m 'Issue123: fixed the bug! Ticket456 and problem789 too'
$ hg serve -n test -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log
$ cat hg.pid >> $DAEMON_PIDS
log
$ get-with-headers.py localhost:$HGPORT "rev/tip" | grep bts
<div class="description"><a href="http://bts.example.org/issue123">Issue123</a>: fixed the <i class="x">bug</i>! <a href="http://ticket.example.org/issue456">Ticket456</a> and <i class="x">problem</i>789 too</div>
errors
$ cat errors.log
$ cd ..