monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Monotone-devel] Updated Issue 160 - monotone-viz doesn't handle 'suspen


From: code
Subject: [Monotone-devel] Updated Issue 160 - monotone-viz doesn't handle 'suspend' (contrib)
Date: Mon, 18 Apr 2011 19:08:07 +0200 (CEST)

Hello,

The following issue has been updated:

160 - monotone-viz doesn't handle 'suspend'
Project: tools and contributions
Status: New
Reported by: Richard Levitte
URL: https://code.monotone.ca/p/contrib/issues/160/
Labels:
 Type:Enhancement
 Priority:High
 OpSys:All
 Component:Logic
 Component:UI
 Other:Usability

Comments (last first):

# By Thomas Moschny, Apr 18, 2011:

Shouldn't something like this work:

mtn au select 'l:DATE/e:DATE/(ancestors(h:*)|h:*)'

- it does for the little test case.

(Interestingly, if one commutes the expression like this:

mtn au select '(ancestors(h:*)|h:*)/l:DATE/e:DATE'

mtn complains about an unmatched paren, and that seems like a bug in monotone.)

# By Richard Levitte, Apr 18, 2011:

The fault is really in how it's called...  I've had a look at what mtn-viz does 
when it tries to figure things out.  It seems that it selects revisions like 
this:

l6:selectN:b:BRANCH/l:DATE/e:DATE

That one will return anything that is in said branch within those dates, and 
doesn't care about the suspend cert (it wouldn't matter much, if it did, we 
would simply not see the suspended revisions, but would still see the revisions 
in that same branch that aren't suspended).

It's quite possible that monotone-viz should do it a bit more work, I'm 
imagining something corresponding to the following:

for b in `mtn automate branches`; do
    for r in `mtn automate heads $b; do
        mtn select "ancestors($r)/l:DATE/e:DATE"
    done
done

... except it seems that composite selectors don't quite work that way for now 
(perhaps it's a bug in monotone?).

# By Richard Levitte, Apr  7, 2011:

Ah-hah!  You're quite right, in the most normal case...  I guess I've stumbled 
on a special case, which can be reproduced like this:

cd /tmp
mtn -d foo.mtn db init
mtn -d foo.mtn setup foo -b foo
cd foo
echo a > a; mtn add a; mtn ci -m a a
echo b >> a; mtn ci -m a a
mtn suspend w:
cd ..
mtn -d foo.mtn setup foo2 -b foo
cd foo2
echo c > c; mtn add c; mtn ci -m c c
echo d >> c; mtn ci -m c c
mtn-viz

Presto, you get to see both lines of development (both in branch foo), even 
though one of them is suspended.

My personal setup is that I basically had to redo a series of commits as a 
branch of another project instead of a standalone branch, then suspended the 
standalone branch...  needless to say, it's a little irritating to still see it 
in mtn-viz

# By Francis Russell, Apr  7, 2011:

Are you sure you've got that the right way round? Running monotone-viz, I can't 
enable viewing of any suspended branches since they don't appear. This is far 
more annoying since after I've merged and suspended a branch, I can't view its 
history in monotone-viz.

# By Richard Levitte, Apr  7, 2011:

*bump (for email)*

# By Richard Levitte, Apr  6, 2011:

Since monotone-viz was last hacked at, monotone got the 'suspend' feature.
Unfortunately, monotone-viz doesn't handle it at all, as far as I can see, and 
will happily show branches where the head revision is suspended.  I'd very much 
like to see a change where lines of development with head being suspended 
aren't shown.
The selection dialog could have a checkbox where one could choose if one would 
like to see the suspended lines of development or not...



--
Issue: https://code.monotone.ca/p/contrib/issues/160/



reply via email to

[Prev in Thread] Current Thread [Next in Thread]