make incoming work via ssh (issue139); move chunk code into separate module.
Incoming ssh needs to detect the end of the changegroup, otherwise it would
block trying to read from the ssh pipe. This is done by parsing the
changegroup chunks.
bundlerepo.getchunk() already is identical to
localrepo.addchangegroup.getchunk(), which is followed by getgroup which
looks much like what you can re-use in bundlerepository.__init__() and in
write_bundle(). bundlerevlog.__init__.genchunk() looks very similar, too,
as do some while loops in localrepo.py.
Applied patch from Benoit Boissinot to move duplicate/related code
to mercurial/changegroup.py and use this to fix incoming ssh.
# This Makefile is only used by developers.
PYTHON=python
all:
$(PYTHON) setup.py build_ext -i
install:
@echo "Read the file README for install instructions."
clean:
-$(PYTHON) setup.py clean --all # ignore errors of this command
find . -name '*.py[co]' -exec rm -f '{}' ';'
$(MAKE) -C doc clean
dist: tests doc
TAR_OPTIONS="--owner=root --group=root --mode=u+w,go-w,a+rX-s" $(PYTHON) setup.py sdist --force-manifest
tests:
cd tests && ./run-tests
test-%:
cd tests && ./run-tests $@
doc:
$(MAKE) -C doc
.PHONY: all clean dist tests doc