[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Monotone-devel] monotone log order
From: |
Nathaniel Smith |
Subject: |
Re: [Monotone-devel] monotone log order |
Date: |
Sat, 18 Feb 2006 16:14:56 -0800 |
User-agent: |
Mutt/1.5.11 |
On Sat, Feb 18, 2006 at 01:55:32AM -0500, Yury Polyanskiy wrote:
> I just found an interesting case when monotone log order is somewhat
> puzzling.
[snip]
> A->B->...->R->S
> | ^
> \---> A1 -----/
[snip]
> Is it ok that _INITIAL_ revision A got between much newer (in dates and
> DAG) R and Q?
Yeah, this is a very long-standing bug, that (for instance) always
causes me problems when writing release notes (because things that
_were_ included in the last release show up as happening _after_ the
last release when I run 'log').
The problem is 'log' currently does a breadth-first traversal of
history.
The proper solution is to greedily explore each sub-branch, but
backtrack upon encountering any version whose parents have not all
been printed. This way you get a topological sort, i.e., A cannot be
printed until all of its descendents have been printed, and you also
group together linear branches, which makes things more readable.
Could you file a bug in the tracker about this, so at least it's more
visible?
What would also be really helpful would be if you could work out a
test case for it -- testsuite/README has basic information on how to
write them. Failing test cases are even more helpful than bug tracker
entries :-).
(And, of course, beyond that a fix would not be turned down either
;-). But the above would be really valuable even without that.)
-- Nathaniel
--
.i dei jitfa fanmo xatra