Join GitHub today
GitHub is home to over 36 million developers working together to host and review code, manage projects, and build software together.Sign up
Make fetch/pull/push results more intuitive #684
I agree that we should treat empty repository properly (e.g. not throw an error when it's not needed) but I'm not sure it makes sense to completely remove the error structure. But maybe there's nothing else to do than printing with these errors?
Also your patch seems to change the semantics of the return of few of the operations, do you mind giving a summary of the changes? Did you try to avoid having
I guess the significant changes are in
Just to be clear, this would look something like:
val pull : db -> ?depth:int -> remote -> [ `Merge of Info.f | `Set ] -> ([`No_head | `Success], pull_error) result Lwt.t val push : db -> ?depth:int -> remote -> ([`No_head | `Success], [ `Msg of string | `Detached_head]) result Lwt.t