~bzr-pqm/bzr/bzr.dev

Viewing all changes in revision 2004.1.30.

  • Committer: v.ladeuil+lp at free
  • Date: 2006-10-17 13:58:01 UTC
  • mto: (2145.1.1 keepalive)
  • mto: This revision was merged to the branch mainline in revision 2146.
  • Revision ID: v.ladeuil+lp@free.fr-20061017135801-3fb63746e0ea8fcf
Fix #62276 and #62029 by providing a more robust http range handling.

* bzrlib/transport/http/_urllib.py:
(HttpTransport_urllib.__init__): Forget about _accept_ranges, the
base class handles that.
(HttpTransport_urllib._get): Takes _range_hint into account.

* bzrlib/transport/http/_pycurl.py:
(PyCurlTransport): Doc fix. Hey ! Urllib had shrunk the gap here !
(PyCurlTransport._get_ranged): Takes _range_hint into account.

* bzrlib/transport/http/__init__.py:
(HttpTransportBase.__init__): Add _range_hint attribute. Give it
to the clones too.
(HttpTransportBase.readv): If we don't get the data we need, try
simpler requests.
(HttpTransportBase.attempted_range_header): Build the range header
taking into account what we had learned from the server
capabilites in previous requests.
(HttpTransportBase.range_header): Small doc fix.

* bzrlib/tests/test_http.py:
(TestPost._test_post_body_is_received): Oops, miss that one during
the merge. UnsupportedProtocol should be prefixed by 'errors.'.
(TestRangeRequestServer.setUp): Use build_tree_contents, not
build_tree or we don't end up with the content we need.

expand all expand all

Show diffs side-by-side

added added

removed removed

Lines of Context: