Matthieu Moy <[EMAIL PROTECTED]> writes:

> Stephen Leake <[EMAIL PROTECTED]> writes:
>
>> Here's a summary of what the current back-ends do, and what it would
>> take to make this change:
>>
>> baz-dvc-diff => baz-changes
>> baz-dvc-delta => not implemented
>>     that's easy; just have baz-dvc-delta call baz-changes
>
> That won't work directly, since baz-changes (aka tla-changes, they're
> just aliases) has only one "against" argument. You can't compare two
> past revisions with it.
>
> Perhaps you meant "baz-dvc-delta call baz-delta", then that's OK.

Ok

>> tla-dvc-diff => tla-changes-rec
>> tla-dvc-diff => tla-delta
>>     _very_ different code! not possible to merge
>
> But remember that our goal is not to improve the tla and baz
> back-ends, but just to maintain them operational. There are far better
> alternatives to tla and baz today, and I don't want to encourrage
> people to use them today.

Ok.

So having dvc-diff call dvc-delta which calls tla-delta is an
acceptable solution?

>> We need to merge code in the bzr and xmtn back-ends, and decide what
>> to do about tla. I suggest we just have dvc-delta (and thus
>> dvc-diff)

My proposal is that dvc-diff does _not_ call dvc-apply, it just calls
dvc-delta. So the back-ends only need to implement dvc-delta.

> Here, I don't understand what you mean. My understanding of the first
> part of your message was that dvc-delta calls the back-end
> XXX-dvc-delta, not dvc-diff. 

Correct.

> We have two options here: have dvc-diff call dvc-delta anyway, and
> let the back-ends implement only dvc-delta, 

Right; that's what I'm trying to do.

> or have dvc-diff call the back-end's XXX-dvc-diff, which itself is a
> wrapper around XXX-dvc-delta.

That's what we have now, except there is no guidance to the backends
on what they _should_ do, and they do different things.

> Both cases are manageable: tla-delta can check whether the base
> revision is the base revision for the working tree, and call tla-diff
> if so. Then, dvc-diff cat call dvc-delta, which can call tla-delta
> which in turn can call tla-diff.

Ah! That's a better solution for tla. And I guess other backends could
do something similar, if they want to.

This relates to the issue of what commands are available in the diff
buffer, and how the files are displayed; if one revision is the
current working tree, then those files should be directly displayed,
and commit commands should be available. This could also be done by
checking the revision id.

-- 
-- Stephe


_______________________________________________
Dvc-dev mailing list
[email protected]
https://mail.gna.org/listinfo/dvc-dev

Reply via email to