← Back to team overview

dulwich-users team mailing list archive

Re: [PATCH 0/4] RFC/implemenmtation of shallow clone support.

 

On Wed, 2010-08-18 at 09:46 -0700, David Borowitz wrote:
> Stupid git send-email, where'd my body go?

> This implements shallow clone support on the server. The reason it's
> marked as an RFC is that I don't like the way I have to pass two extra
> arguments (shallow and client_shallow) down through a bunch of levels
> of callbacks. It shouldn't break existing code, since they're optional
> arguments, but it's clear that this approach isn't going to scale
> forever. Since any API changes, like wrapping some of these arguments
> up into object state or a data object, would break existing code, I
> thought I'd ask for suggestions.
Hmm, I agree that is a tough one. The graph walker object would be the
right place for this sort of thing, except we construct it inside of
this function at the moment. 

I think the new parameter names (client_shallow, shallow) are perhaps a
bit confusing - "client" only makes sense in the context of a server. 

Another option would be to allow haves and wants to be tuples that
include the shallow revisions.

Cheers,

Jelmer

> On Wed, Aug 18, 2010 at 09:41, <dborowitz@xxxxxxxxxx> wrote:
>         cae6290 Add eof() and unread_pkt_line() methods to Protocol.
>         4b46bf0 MissingObjectFinder: minor cleanup: 80 chars, others.
>         f0bee0e server: Correct short-circuiting operation for no-op
>         fetches.
>         c346233 Add shallow clone support to the server.
>         
>          NEWS                                 |    9 +++
>          dulwich/object_store.py              |   42 +++++++++--
>          dulwich/protocol.py                  |   40 ++++++++++-
>          dulwich/repo.py                      |   21 ++++--
>          dulwich/server.py                    |  112
>         +++++++++++++++++++++++++++---
>          dulwich/tests/compat/server_utils.py |   73
>         ++++++++++++++++++++
>          dulwich/tests/compat/test_web.py     |    7 ++-
>          dulwich/tests/test_protocol.py       |   34 +++++++++-
>          dulwich/tests/test_server.py         |  125
>         ++++++++++++++++++++++++++++++++++
>          9 files changed, 434 insertions(+), 29 deletions(-)
> 
> 

Attachment: signature.asc
Description: This is a digitally signed message part


Follow ups

References