[darcs-users] some special amend-records
Ganesh Sittampalam
ganesh at earth.li
Fri Apr 19 22:09:26 UTC 2013
Hi Sebastian,
On 19/04/2013 11:07, Sebastian Fischer wrote:
> The new wiki page proposes a new flag for darcs record that allows to
> automatically split recorded patches into unrelated sets of changes
> and grouping them using empty patches. I think this reduces the need
> to retroactively splitting patches (it would still be impossible - but
> hopefully necessary less frequently - to modify implicit
> dependencies.)
>
> What do you think of the new proposal? On the wiki page I make some
> assumtions (search for the word "presumably"). Are they accurate?
I've removed most of the presumablys to confirm I agree with your
reasoning. I left the one about the usability of darcs changes which is
just a matter of opinion about the UI that I'm not sure about either way.
As I understand the proposal, you plan to split textually independent
changes into separate named patches and then use explicit dependencies
to group those named patches together into the same unit that would
previously have been a single patch.
I think it would be technically feasible as described. The downside
would be that there would be no record at all of any logical
dependencies - so in the example of a new member being added to an
interface along with implementations of that new member, people could
end up with one but not the other.
That lack of dependencies is always a problem with darcs - for example
if in the normal mode of recording, the user first records the addition
of a new function and then in a new patch a use of that function,
there'll be no record of the dependency unless they remember to use
--ask-deps.
Other VCSes over-approximate dependencies instead of under-approximating
them like darcs does. Your proposal is to have an option to go for the
minimal possible dependencies - it's not something I'd want to use
myself, but I can't see any objections to having it available for those
that do want.
There may be an argument for saying that the option should instead be a
separate utility. I think that would be a pain to maintain and the cost
of having this in darcs itself seems low to me, but it would be good if
other people could chime in on this [if anyone else is still actually
following the thread :-)]
BTW one thing you might want to also add is a way to *remove*
dependencies during an amend-record (perhaps the functionality belongs
with amend-unrecord). Otherwise it'll be a pain to correct the
dependencies of the empty patches as needed.
Cheers,
Ganesh
More information about the darcs-users
mailing list