Commits

Oben Sonne committed 09611d4

Test suite

Comments (0)

Files changed (11)

 Find your way in repositories with multiple heads, branches and bookmarks.
 Compass shows where you are, where you could be and what happens on commit.
 
-So far only tested with Mercurial 1.3.1.
+Requires Mercurial >= 1.3
 
-You can run `test.sh` to create a somewhat freaky repository. In this
-repository update to different revisions and run `hg compass` to see what
-this extension has to say.
+You can run `tests/extra/build-repo.sh` to create a somewhat freaky repository.
+In this repository update to different revisions and run `hg compass` to see
+what this extension has to say.
 
 Things to do:
 

tests/build-repo.sh

-#!/bin/sh
-
-# This script creates a repository with multiple heads, branches and bookmarks.
-# It's purpose is to create a quite freaky graph, it does not make any sense
-# otherwise.
-
-# -----------------------------------------------------------------------------
-# helper functions
-# -----------------------------------------------------------------------------
-
-edit() {
-	date >> $1
-}
-
-edit_commit() {
-	echo "edit $1"
-	touch $1
-	date >> $1
-	hg ci -Am "Edit $1 in `hg branch` ($2)"
-}
-
-branch_commit() {
-	echo "branching $1"
-	OLD=`hg branch`
-	hg branch $1
-	hg ci -m "Branch from $OLD to $1"
-}
-
-close_branch() {
-	BRANCH=`hg branch`
-	echo "closing branch $BRANCH"
-	hg ci --close-branch -m "Closing branch $BRANCH"
-}
-
-merge_commit() {
-	echo "merging $1"
-	hg merge $1
-	hg ci -m "Merge in revision $1"
-}
-
-update() {
-	echo "update to $1"
-	hg up -C -r $1
-}
-
-# -----------------------------------------------------------------------------
-# init repo
-# -----------------------------------------------------------------------------
-
-rm -rf repo
-
-mkdir repo
-cd repo
-hg init
-
-# -----------------------------------------------------------------------------
-# make history
-# -----------------------------------------------------------------------------
-
-edit_commit f.df "proceed default branch"
-
-branch_commit dev-1.0
-
-edit_commit f.dev-1.0 "proceed dev-1.0"
-
-edit_commit f.dev-1.0 "proceed dev-1.0"
-
-branch_commit dev-1.1 # branch dev-1.0 -> dev-1.1
-
-SPLIT=`hg id -n`
-
-edit_commit f.dev-1.1
-
-update $SPLIT
-
-hg bookmark feature-1.1a
-
-edit_commit f.dev-1.1 "add 2nd head to dev-1.1"
-
-update $SPLIT
-
-edit_commit f.dev-1.1 "add 3rd head to dev-1.1"
-
-update dev-1.0
-
-edit_commit f.dev-1.0 "proceed dev-1.0"
-
-SPLIT=`hg id -n`
-
-edit_commit f.dev-1.0 "proceed dev-1.0"
-
-update $SPLIT
-
-edit_commit f.dev-1.0  "add 2nd head to dev-1.0"
-
-update $SPLIT
-
-edit_commit f.dev-1.0  "add 3rd head to dev-1.0"
-
-merge_commit dev-1.1 # merge 3rd head of dev-1.1 into 3rd head of dev-1.0
-
-edit_commit f.dev-1.0 "proceed merged head"
-
-update $SPLIT
-
-branch_commit dev-2.0 # branch dev-1.0 -> dev-2.0
-
-edit_commit f.dev-2.0 "proceed 1st head of dev-2.0"
-
-close_branch
-
-edit_commit f.dev-2.0 "reopen closed branch dev-2.0"
-
-update $SPLIT
-
-branch_commit dev-1.2 # branch dev-1.0 -> dev-1.2
-
-edit_commit f.dev-1.2 "proceed 1st head of dev-1.2"
-
-close_branch
-
-update $SPLIT
-
-branch_commit feature-foo # branch dev-1.0 -> feature-foo
-
-edit_commit f.feature-foo "proceed 1st head of feature-foo"
-
-close_branch
-
-update dev-1.0
-
-merge_commit feature-foo # merge feature-foo into dev-1.0
-
-# done, now let's "compass" this hell of a repo ..
-
-# hg compass
-# while (you-are-not-bored) ; do
-#     hg up ...
-#     hg compass
-# done
-

tests/extra/build-repo.sh

+#!/bin/sh
+
+# This script creates a repository with multiple heads, branches and bookmarks.
+# It's purpose is to create a quite freaky graph, it does not make any sense
+# otherwise.
+
+# -----------------------------------------------------------------------------
+# helper functions
+# -----------------------------------------------------------------------------
+
+edit() {
+	date >> $1
+}
+
+edit_commit() {
+	echo "edit $1"
+	touch $1
+	date >> $1
+	hg ci -Am "Edit $1 in `hg branch` ($2)"
+}
+
+branch_commit() {
+	echo "branching $1"
+	OLD=`hg branch`
+	hg branch $1
+	hg ci -m "Branch from $OLD to $1"
+}
+
+close_branch() {
+	BRANCH=`hg branch`
+	echo "closing branch $BRANCH"
+	hg ci --close-branch -m "Closing branch $BRANCH"
+}
+
+merge_commit() {
+	echo "merging $1"
+	hg merge $1
+	hg ci -m "Merge in revision $1"
+}
+
+update() {
+	echo "update to $1"
+	hg up -C -r $1
+}
+
+# -----------------------------------------------------------------------------
+# init repo
+# -----------------------------------------------------------------------------
+
+rm -rf repo
+
+mkdir repo
+cd repo
+hg init
+
+# -----------------------------------------------------------------------------
+# make history
+# -----------------------------------------------------------------------------
+
+edit_commit f.df "proceed default branch"
+
+branch_commit dev-1.0
+
+edit_commit f.dev-1.0 "proceed dev-1.0"
+
+edit_commit f.dev-1.0 "proceed dev-1.0"
+
+branch_commit dev-1.1 # branch dev-1.0 -> dev-1.1
+
+SPLIT=`hg id -n`
+
+edit_commit f.dev-1.1
+
+update $SPLIT
+
+hg bookmark feature-1.1a
+
+edit_commit f.dev-1.1 "add 2nd head to dev-1.1"
+
+update $SPLIT
+
+edit_commit f.dev-1.1 "add 3rd head to dev-1.1"
+
+update dev-1.0
+
+edit_commit f.dev-1.0 "proceed dev-1.0"
+
+SPLIT=`hg id -n`
+
+edit_commit f.dev-1.0 "proceed dev-1.0"
+
+update $SPLIT
+
+edit_commit f.dev-1.0  "add 2nd head to dev-1.0"
+
+update $SPLIT
+
+edit_commit f.dev-1.0  "add 3rd head to dev-1.0"
+
+merge_commit dev-1.1 # merge 3rd head of dev-1.1 into 3rd head of dev-1.0
+
+edit_commit f.dev-1.0 "proceed merged head"
+
+update $SPLIT
+
+branch_commit dev-2.0 # branch dev-1.0 -> dev-2.0
+
+edit_commit f.dev-2.0 "proceed 1st head of dev-2.0"
+
+close_branch
+
+edit_commit f.dev-2.0 "reopen closed branch dev-2.0"
+
+update $SPLIT
+
+branch_commit dev-1.2 # branch dev-1.0 -> dev-1.2
+
+edit_commit f.dev-1.2 "proceed 1st head of dev-1.2"
+
+close_branch
+
+update $SPLIT
+
+branch_commit feature-foo # branch dev-1.0 -> feature-foo
+
+edit_commit f.feature-foo "proceed 1st head of feature-foo"
+
+close_branch
+
+update dev-1.0
+
+merge_commit feature-foo # merge feature-foo into dev-1.0
+
+# done, now let's "compass" this hell of a repo ..
+
+# hg compass
+# while (you-are-not-bored) ; do
+#     hg up ...
+#     hg compass
+# done
+

tests/extra/run-tests.sh

+#!/bin/sh
+
+rm *.act *.diff
+
+./build-repo.sh
+
+TESTS="test-compass.sh"
+
+EXIT=0
+
+for TF in $TESTS ; do
+	
+	NAME=`echo $TF | sed -r "s/\.(sh)|(py)$//"`
+	
+	echo -n "Running $NAME .. "
+	
+	./$TF > $NAME.act
+	
+	DIFF="`diff -Nur $NAME.exp $NAME.act`"
+	
+	if [ -n "$DIFF" ] ; then
+		echo "failed, see $NAME.diff"
+		echo "$DIFF" > $NAME.diff
+		EXIT=1
+	else
+		echo "success" 
+	fi
+	
+done
+
+exit $EXIT

tests/extra/test-compass.exp

+#=============================================================================#
+#                      You are at an inactive branch head                     #
+#=============================================================================#
+Rev      0 default                                          @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                                    Heads                                    #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                               tip @above @b-tip [age]
+Rev     20 dev-1.2                           @above @closed @b-tip [age]
+Rev     17 dev-2.0                                   @above @b-tip [age]
+Rev     10 dev-1.0                                    @above @anon [age]
+Rev      9 dev-1.0                                    @above @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                           @above [age]
+Rev      5 dev-1.1                                    @above @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default*                           1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
+#-----------------------------------------------------------------------------#
+#                     Next commit will create a new head!                     #
+#-----------------------------------------------------------------------------#
+#=============================================================================#
+#                    You are lost in the middle of nowhere                    #
+#=============================================================================#
+Rev      1 dev-1.0                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                                    Heads                                    #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                               tip @above @b-tip [age]
+Rev     20 dev-1.2                           @above @closed @b-tip [age]
+Rev     17 dev-2.0                                   @above @b-tip [age]
+Rev     10 dev-1.0                                    @above @anon [age]
+Rev      9 dev-1.0                                    @above @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                           @above [age]
+Rev      5 dev-1.1                                    @above @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0*                           3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
+#-----------------------------------------------------------------------------#
+#                     Next commit will create a new head!                     #
+#-----------------------------------------------------------------------------#
+#=============================================================================#
+#                    You are lost in the middle of nowhere                    #
+#=============================================================================#
+Rev      2 dev-1.0                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                                    Heads                                    #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                               tip @above @b-tip [age]
+Rev     20 dev-1.2                           @above @closed @b-tip [age]
+Rev     17 dev-2.0                                   @above @b-tip [age]
+Rev     10 dev-1.0                                    @above @anon [age]
+Rev      9 dev-1.0                                    @above @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                           @above [age]
+Rev      5 dev-1.1                                    @above @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0*                           3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
+#-----------------------------------------------------------------------------#
+#                     Next commit will create a new head!                     #
+#-----------------------------------------------------------------------------#
+#=============================================================================#
+#                    You are lost in the middle of nowhere                    #
+#=============================================================================#
+Rev      3 dev-1.0                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                                    Heads                                    #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                               tip @above @b-tip [age]
+Rev     20 dev-1.2                           @above @closed @b-tip [age]
+Rev     17 dev-2.0                                   @above @b-tip [age]
+Rev     10 dev-1.0                                    @above @anon [age]
+Rev      9 dev-1.0                                    @above @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                           @above [age]
+Rev      5 dev-1.1                                    @above @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0*                           3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
+#-----------------------------------------------------------------------------#
+#                     Next commit will create a new head!                     #
+#-----------------------------------------------------------------------------#
+#=============================================================================#
+#                    You are lost in the middle of nowhere                    #
+#=============================================================================#
+Rev      4 dev-1.1                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                                    Heads                                    #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                               tip @above @b-tip [age]
+Rev     20 dev-1.2                                  @closed @b-tip [age]
+Rev     17 dev-2.0                                          @b-tip [age]
+Rev     10 dev-1.0                                           @anon [age]
+Rev      9 dev-1.0                                           @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                           @above [age]
+Rev      5 dev-1.1                                    @above @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1*                           3 heads (2 active, 1 inactive, 1 bookmarked)
+#-----------------------------------------------------------------------------#
+#                     Next commit will create a new head!                     #
+#-----------------------------------------------------------------------------#
+#=============================================================================#
+#                              You are at a head                              #
+#=============================================================================#
+Rev      5 dev-1.1                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                                 Other heads                                 #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                                      tip @b-tip [age]
+Rev     20 dev-1.2                                  @closed @b-tip [age]
+Rev     17 dev-2.0                                          @b-tip [age]
+Rev     10 dev-1.0                                           @anon [age]
+Rev      9 dev-1.0                                           @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                                  [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1*                           3 heads (2 active, 1 inactive, 1 bookmarked)
+#=============================================================================#
+#                              You are at a head                              #
+#=============================================================================#
+Rev      6 dev-1.1 (feature-1.1a)                                  [age]
+#-----------------------------------------------------------------------------#
+#                                 Other heads                                 #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                                      tip @b-tip [age]
+Rev     20 dev-1.2                                  @closed @b-tip [age]
+Rev     17 dev-2.0                                          @b-tip [age]
+Rev     10 dev-1.0                                           @anon [age]
+Rev      9 dev-1.0                                           @anon [age]
+Rev      5 dev-1.1                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1*                           3 heads (2 active, 1 inactive, 1 bookmarked)
+#=============================================================================#
+#                      You are at an inactive branch head                     #
+#=============================================================================#
+Rev      7 dev-1.1                                          @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                                    Heads                                    #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                               tip @above @b-tip [age]
+Rev     20 dev-1.2                                  @closed @b-tip [age]
+Rev     17 dev-2.0                                          @b-tip [age]
+Rev     10 dev-1.0                                           @anon [age]
+Rev      9 dev-1.0                                           @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                                  [age]
+Rev      5 dev-1.1                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1*                           3 heads (2 active, 1 inactive, 1 bookmarked)
+#-----------------------------------------------------------------------------#
+#                     Next commit will create a new head!                     #
+#-----------------------------------------------------------------------------#
+#=============================================================================#
+#                    You are lost in the middle of nowhere                    #
+#=============================================================================#
+Rev      8 dev-1.0                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                                    Heads                                    #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                               tip @above @b-tip [age]
+Rev     20 dev-1.2                           @above @closed @b-tip [age]
+Rev     17 dev-2.0                                   @above @b-tip [age]
+Rev     10 dev-1.0                                    @above @anon [age]
+Rev      9 dev-1.0                                    @above @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                                  [age]
+Rev      5 dev-1.1                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0*                           3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
+#-----------------------------------------------------------------------------#
+#                     Next commit will create a new head!                     #
+#-----------------------------------------------------------------------------#
+#=============================================================================#
+#                              You are at a head                              #
+#=============================================================================#
+Rev      9 dev-1.0                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                                 Other heads                                 #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                                      tip @b-tip [age]
+Rev     20 dev-1.2                                  @closed @b-tip [age]
+Rev     17 dev-2.0                                          @b-tip [age]
+Rev     10 dev-1.0                                           @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                                  [age]
+Rev      5 dev-1.1                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0*                           3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
+#=============================================================================#
+#                              You are at a head                              #
+#=============================================================================#
+Rev     10 dev-1.0                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                                 Other heads                                 #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                                      tip @b-tip [age]
+Rev     20 dev-1.2                                  @closed @b-tip [age]
+Rev     17 dev-2.0                                          @b-tip [age]
+Rev      9 dev-1.0                                           @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                                  [age]
+Rev      5 dev-1.1                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0*                           3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
+#=============================================================================#
+#                    You are lost in the middle of nowhere                    #
+#=============================================================================#
+Rev     11 dev-1.0                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                                    Heads                                    #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                               tip @above @b-tip [age]
+Rev     20 dev-1.2                                  @closed @b-tip [age]
+Rev     17 dev-2.0                                          @b-tip [age]
+Rev     10 dev-1.0                                           @anon [age]
+Rev      9 dev-1.0                                           @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                                  [age]
+Rev      5 dev-1.1                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0*                           3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
+#-----------------------------------------------------------------------------#
+#                     Next commit will create a new head!                     #
+#-----------------------------------------------------------------------------#
+#=============================================================================#
+#                    You are lost in the middle of nowhere                    #
+#=============================================================================#
+Rev     12 dev-1.0                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                                    Heads                                    #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                               tip @above @b-tip [age]
+Rev     20 dev-1.2                                  @closed @b-tip [age]
+Rev     17 dev-2.0                                          @b-tip [age]
+Rev     10 dev-1.0                                           @anon [age]
+Rev      9 dev-1.0                                           @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                                  [age]
+Rev      5 dev-1.1                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0*                           3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
+#-----------------------------------------------------------------------------#
+#                     Next commit will create a new head!                     #
+#-----------------------------------------------------------------------------#
+#=============================================================================#
+#                    You are lost in the middle of nowhere                    #
+#=============================================================================#
+Rev     13 dev-1.0                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                                    Heads                                    #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                               tip @above @b-tip [age]
+Rev     20 dev-1.2                                  @closed @b-tip [age]
+Rev     17 dev-2.0                                          @b-tip [age]
+Rev     10 dev-1.0                                           @anon [age]
+Rev      9 dev-1.0                                           @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                                  [age]
+Rev      5 dev-1.1                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0*                           3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
+#-----------------------------------------------------------------------------#
+#                     Next commit will create a new head!                     #
+#-----------------------------------------------------------------------------#
+#=============================================================================#
+#                    You are lost in the middle of nowhere                    #
+#=============================================================================#
+Rev     14 dev-2.0                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                                    Heads                                    #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                                      tip @b-tip [age]
+Rev     20 dev-1.2                                  @closed @b-tip [age]
+Rev     17 dev-2.0                                   @above @b-tip [age]
+Rev     10 dev-1.0                                           @anon [age]
+Rev      9 dev-1.0                                           @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                                  [age]
+Rev      5 dev-1.1                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0*                           1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
+#-----------------------------------------------------------------------------#
+#                     Next commit will create a new head!                     #
+#-----------------------------------------------------------------------------#
+#=============================================================================#
+#                    You are lost in the middle of nowhere                    #
+#=============================================================================#
+Rev     15 dev-2.0                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                                    Heads                                    #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                                      tip @b-tip [age]
+Rev     20 dev-1.2                                  @closed @b-tip [age]
+Rev     17 dev-2.0                                   @above @b-tip [age]
+Rev     10 dev-1.0                                           @anon [age]
+Rev      9 dev-1.0                                           @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                                  [age]
+Rev      5 dev-1.1                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0*                           1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
+#-----------------------------------------------------------------------------#
+#                     Next commit will create a new head!                     #
+#-----------------------------------------------------------------------------#
+#=============================================================================#
+#                    You are lost in the middle of nowhere                    #
+#=============================================================================#
+Rev     16 dev-2.0                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                                    Heads                                    #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                                      tip @b-tip [age]
+Rev     20 dev-1.2                                  @closed @b-tip [age]
+Rev     17 dev-2.0                                   @above @b-tip [age]
+Rev     10 dev-1.0                                           @anon [age]
+Rev      9 dev-1.0                                           @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                                  [age]
+Rev      5 dev-1.1                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0*                           1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
+#-----------------------------------------------------------------------------#
+#                     Next commit will create a new head!                     #
+#-----------------------------------------------------------------------------#
+#=============================================================================#
+#                              You are at a head                              #
+#=============================================================================#
+Rev     17 dev-2.0                                          @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                                 Other heads                                 #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                                      tip @b-tip [age]
+Rev     20 dev-1.2                                  @closed @b-tip [age]
+Rev     10 dev-1.0                                           @anon [age]
+Rev      9 dev-1.0                                           @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                                  [age]
+Rev      5 dev-1.1                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0*                           1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
+#=============================================================================#
+#           You are lost in the middle of nowhere in a closed branch          #
+#=============================================================================#
+Rev     18 dev-1.2                                   @closed @anon [age]
+#-----------------------------------------------------------------------------#
+#                                    Heads                                    #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                                      tip @b-tip [age]
+Rev     20 dev-1.2                           @above @closed @b-tip [age]
+Rev     17 dev-2.0                                          @b-tip [age]
+Rev     10 dev-1.0                                           @anon [age]
+Rev      9 dev-1.0                                           @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                                  [age]
+Rev      5 dev-1.1                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2* (closed)                  1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
+#-----------------------------------------------------------------------------#
+#                     Next commit will create a new head!                     #
+#-----------------------------------------------------------------------------#
+#=============================================================================#
+#           You are lost in the middle of nowhere in a closed branch          #
+#=============================================================================#
+Rev     19 dev-1.2                                   @closed @anon [age]
+#-----------------------------------------------------------------------------#
+#                                    Heads                                    #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                                      tip @b-tip [age]
+Rev     20 dev-1.2                           @above @closed @b-tip [age]
+Rev     17 dev-2.0                                          @b-tip [age]
+Rev     10 dev-1.0                                           @anon [age]
+Rev      9 dev-1.0                                           @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                                  [age]
+Rev      5 dev-1.1                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2* (closed)                  1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
+#-----------------------------------------------------------------------------#
+#                     Next commit will create a new head!                     #
+#-----------------------------------------------------------------------------#
+#=============================================================================#
+#                     You are at a head in a closed branch                    #
+#=============================================================================#
+Rev     20 dev-1.2                                  @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                                 Other heads                                 #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                                      tip @b-tip [age]
+Rev     17 dev-2.0                                          @b-tip [age]
+Rev     10 dev-1.0                                           @anon [age]
+Rev      9 dev-1.0                                           @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                                  [age]
+Rev      5 dev-1.1                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2* (closed)                  1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
+#=============================================================================#
+#           You are lost in the middle of nowhere in a closed branch          #
+#=============================================================================#
+Rev     21 feature-foo                               @closed @anon [age]
+#-----------------------------------------------------------------------------#
+#                                    Heads                                    #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                               tip @above @b-tip [age]
+Rev     20 dev-1.2                                  @closed @b-tip [age]
+Rev     17 dev-2.0                                          @b-tip [age]
+Rev     10 dev-1.0                                           @anon [age]
+Rev      9 dev-1.0                                           @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                                  [age]
+Rev      5 dev-1.1                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo* (closed)              1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
+#-----------------------------------------------------------------------------#
+#                     Next commit will create a new head!                     #
+#-----------------------------------------------------------------------------#
+#=============================================================================#
+#           You are lost in the middle of nowhere in a closed branch          #
+#=============================================================================#
+Rev     22 feature-foo                               @closed @anon [age]
+#-----------------------------------------------------------------------------#
+#                                    Heads                                    #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                               tip @above @b-tip [age]
+Rev     20 dev-1.2                                  @closed @b-tip [age]
+Rev     17 dev-2.0                                          @b-tip [age]
+Rev     10 dev-1.0                                           @anon [age]
+Rev      9 dev-1.0                                           @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                                  [age]
+Rev      5 dev-1.1                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo* (closed)              1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
+#-----------------------------------------------------------------------------#
+#                     Next commit will create a new head!                     #
+#-----------------------------------------------------------------------------#
+#=============================================================================#
+#            You are at an inactive branch head in a closed branch            #
+#=============================================================================#
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                                    Heads                                    #
+#-----------------------------------------------------------------------------#
+Rev     24 dev-1.0                               tip @above @b-tip [age]
+Rev     20 dev-1.2                                  @closed @b-tip [age]
+Rev     17 dev-2.0                                          @b-tip [age]
+Rev     10 dev-1.0                                           @anon [age]
+Rev      9 dev-1.0                                           @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                                  [age]
+Rev      5 dev-1.1                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo* (closed)              1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
+#-----------------------------------------------------------------------------#
+#                     Next commit will create a new head!                     #
+#-----------------------------------------------------------------------------#
+#=============================================================================#
+#                              You are at a head                              #
+#=============================================================================#
+Rev     24 dev-1.0                                      tip @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                                 Other heads                                 #
+#-----------------------------------------------------------------------------#
+Rev     20 dev-1.2                                  @closed @b-tip [age]
+Rev     17 dev-2.0                                          @b-tip [age]
+Rev     10 dev-1.0                                           @anon [age]
+Rev      9 dev-1.0                                           @anon [age]
+Rev      6 dev-1.1 (feature-1.1a)                                  [age]
+Rev      5 dev-1.1                                           @anon [age]
+#-----------------------------------------------------------------------------#
+#                            Inactive branch heads                            #
+#-----------------------------------------------------------------------------#
+Rev      0 default                                          @b-tip [age]
+Rev      7 dev-1.1                                          @b-tip [age]
+Rev     23 feature-foo                              @closed @b-tip [age]
+#-----------------------------------------------------------------------------#
+#                               Branch overview                               #
+#-----------------------------------------------------------------------------#
+default                            1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
+feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
+dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
+dev-1.0*                           3 heads (3 active, 0 inactive, 0 bookmarked)
+dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)

tests/extra/test-compass.sh

+#!/bin/sh
+
+TEST_REPO=repo
+
+TIP_REV=`hg -R $TEST_REPO tip --template={rev}`
+
+for rev in `seq 0 $TIP_REV` ; do
+	hg -R $TEST_REPO up -C $rev > /dev/null 2>&1
+	hg -R $TEST_REPO compass | sed -r "s/\[[_a-zA-Z0-9 ]+\]/[age]/" # fix age
+done

tests/run-tests.sh

-#!/bin/sh
-
-rm *.act *.diff
-
-./build-repo.sh
-
-TESTS="test-compass.sh"
-
-EXIT=0
-
-for TF in $TESTS ; do
-	
-	NAME=`echo $TF | sed -r "s/\.(sh)|(py)$//"`
-	
-	echo -n "Running $NAME .. "
-	
-	./$TF > $NAME.act
-	
-	DIFF="`diff -Nur $NAME.exp $NAME.act`"
-	
-	if [ -n "$DIFF" ] ; then
-		echo "failed, see $NAME.diff"
-		echo "$DIFF" > $NAME.diff
-		EXIT=1
-	else
-		echo "success" 
-	fi
-	
-done
-
-exit $EXIT

tests/test-compass

+#!/bin/sh
+
+cat >> $HGRCPATH <<EOF
+[extensions]
+hgext.bookmarks=
+hgext.compass=
+EOF
+
+# -----------------------------------------------------------------------------
+# helper functions to setup the test repo
+# -----------------------------------------------------------------------------
+
+edit() {
+	echo "edit $1"
+	echo "edit" >> $1
+}
+
+edit_commit() {
+	edit  $1
+	hg ci -Am "Edit $1 in `hg branch` ($2)" -d "0 0" -u "test"
+}
+
+branch_commit() {
+	echo "branching $1"
+	OLD=`hg branch`
+	hg branch $1
+	hg ci -m "Branch from $OLD to $1" -d "0 0" -u "test"
+}
+
+close_branch() {
+	BRANCH=`hg branch`
+	echo "closing branch $BRANCH"
+	hg ci --close-branch -m "Closing branch $BRANCH" -d "0 0" -u "test"
+}
+
+merge_commit() {
+	echo "merging $1"
+	hg merge $1
+	hg ci -m "Merge in revision $1" -d "0 0" -u "test"
+}
+
+update() {
+	echo "update to $1"
+	hg up -C -r $1
+}
+
+# -----------------------------------------------------------------------------
+# init repo
+# -----------------------------------------------------------------------------
+
+hg init
+
+# -----------------------------------------------------------------------------
+# make history
+# -----------------------------------------------------------------------------
+
+edit_commit f.df "proceed default branch"
+
+branch_commit dev-1.0
+
+edit_commit f.dev-1.0 "proceed dev-1.0"
+
+edit_commit f.dev-1.0 "proceed dev-1.0"
+
+branch_commit dev-1.1 # branch dev-1.0 -> dev-1.1
+
+SPLIT=`hg id -n`
+
+edit_commit f.dev-1.1
+
+update $SPLIT
+
+hg bookmark feature-1.1a
+
+edit_commit f.dev-1.1 "add 2nd head to dev-1.1"
+
+update $SPLIT
+
+edit_commit f.dev-1.1 "add 3rd head to dev-1.1"
+
+update dev-1.0
+
+edit_commit f.dev-1.0 "proceed dev-1.0"
+
+SPLIT=`hg id -n`
+
+edit_commit f.dev-1.0 "proceed dev-1.0"
+
+update $SPLIT
+
+edit_commit f.dev-1.0  "add 2nd head to dev-1.0"
+
+update $SPLIT
+
+edit_commit f.dev-1.0  "add 3rd head to dev-1.0"
+
+merge_commit dev-1.1 # merge 3rd head of dev-1.1 into 3rd head of dev-1.0
+
+edit_commit f.dev-1.0 "proceed merged head"
+
+update $SPLIT
+
+branch_commit dev-2.0 # branch dev-1.0 -> dev-2.0
+
+edit_commit f.dev-2.0 "proceed 1st head of dev-2.0"
+
+close_branch
+
+edit_commit f.dev-2.0 "reopen closed branch dev-2.0"
+
+update $SPLIT
+
+branch_commit dev-1.2 # branch dev-1.0 -> dev-1.2
+
+edit_commit f.dev-1.2 "proceed 1st head of dev-1.2"
+
+close_branch
+
+update $SPLIT
+
+branch_commit feature-foo # branch dev-1.0 -> feature-foo
+
+edit_commit f.feature-foo "proceed 1st head of feature-foo"
+
+close_branch
+
+update dev-1.0
+
+merge_commit feature-foo # merge feature-foo into dev-1.0
+
+# -----------------------------------------------------------------------------
+# test compass output
+# -----------------------------------------------------------------------------
+
+TIP_REV=`hg tip --template={rev}`
+
+for rev in `seq 0 $TIP_REV` ; do
+	echo "-- Updating to $rev"
+	hg up -C $rev
+	echo "-- hg compass"
+	hg compass
+	echo "-- hg compass -v"
+	hg compass -v
+	echo "-- hg compass -i"
+	hg compass -i
+	echo "-- hg compass -b"
+	hg compass -b
+	echo "-- hg compass -c"
+	hg compass -c
+	echo "-- hg compass -ibc"
+	hg compass -ibc
+done | sed -r "s/\[[_a-zA-Z0-9 ]+\]/[age]/" # fix age
+
+# -----------------------------------------------------------------------------
+# test help output
+# -----------------------------------------------------------------------------
+
+echo "-- hg help compass"
+hg help compass

tests/test-compass.exp

-#=============================================================================#
-#                      You are at an inactive branch head                     #
-#=============================================================================#
-Rev      0 default                                          @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                                    Heads                                    #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                               tip @above @b-tip [age]
-Rev     20 dev-1.2                           @above @closed @b-tip [age]
-Rev     17 dev-2.0                                   @above @b-tip [age]
-Rev     10 dev-1.0                                    @above @anon [age]
-Rev      9 dev-1.0                                    @above @anon [age]
-Rev      6 dev-1.1 (feature-1.1a)                           @above [age]
-Rev      5 dev-1.1                                    @above @anon [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default*                           1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
-#-----------------------------------------------------------------------------#
-#                     Next commit will create a new head!                     #
-#-----------------------------------------------------------------------------#
-#=============================================================================#
-#                    You are lost in the middle of nowhere                    #
-#=============================================================================#
-Rev      1 dev-1.0                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                                    Heads                                    #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                               tip @above @b-tip [age]
-Rev     20 dev-1.2                           @above @closed @b-tip [age]
-Rev     17 dev-2.0                                   @above @b-tip [age]
-Rev     10 dev-1.0                                    @above @anon [age]
-Rev      9 dev-1.0                                    @above @anon [age]
-Rev      6 dev-1.1 (feature-1.1a)                           @above [age]
-Rev      5 dev-1.1                                    @above @anon [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default                            1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0*                           3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
-#-----------------------------------------------------------------------------#
-#                     Next commit will create a new head!                     #
-#-----------------------------------------------------------------------------#
-#=============================================================================#
-#                    You are lost in the middle of nowhere                    #
-#=============================================================================#
-Rev      2 dev-1.0                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                                    Heads                                    #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                               tip @above @b-tip [age]
-Rev     20 dev-1.2                           @above @closed @b-tip [age]
-Rev     17 dev-2.0                                   @above @b-tip [age]
-Rev     10 dev-1.0                                    @above @anon [age]
-Rev      9 dev-1.0                                    @above @anon [age]
-Rev      6 dev-1.1 (feature-1.1a)                           @above [age]
-Rev      5 dev-1.1                                    @above @anon [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default                            1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0*                           3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
-#-----------------------------------------------------------------------------#
-#                     Next commit will create a new head!                     #
-#-----------------------------------------------------------------------------#
-#=============================================================================#
-#                    You are lost in the middle of nowhere                    #
-#=============================================================================#
-Rev      3 dev-1.0                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                                    Heads                                    #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                               tip @above @b-tip [age]
-Rev     20 dev-1.2                           @above @closed @b-tip [age]
-Rev     17 dev-2.0                                   @above @b-tip [age]
-Rev     10 dev-1.0                                    @above @anon [age]
-Rev      9 dev-1.0                                    @above @anon [age]
-Rev      6 dev-1.1 (feature-1.1a)                           @above [age]
-Rev      5 dev-1.1                                    @above @anon [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default                            1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0*                           3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
-#-----------------------------------------------------------------------------#
-#                     Next commit will create a new head!                     #
-#-----------------------------------------------------------------------------#
-#=============================================================================#
-#                    You are lost in the middle of nowhere                    #
-#=============================================================================#
-Rev      4 dev-1.1                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                                    Heads                                    #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                               tip @above @b-tip [age]
-Rev     20 dev-1.2                                  @closed @b-tip [age]
-Rev     17 dev-2.0                                          @b-tip [age]
-Rev     10 dev-1.0                                           @anon [age]
-Rev      9 dev-1.0                                           @anon [age]
-Rev      6 dev-1.1 (feature-1.1a)                           @above [age]
-Rev      5 dev-1.1                                    @above @anon [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default                            1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1*                           3 heads (2 active, 1 inactive, 1 bookmarked)
-#-----------------------------------------------------------------------------#
-#                     Next commit will create a new head!                     #
-#-----------------------------------------------------------------------------#
-#=============================================================================#
-#                              You are at a head                              #
-#=============================================================================#
-Rev      5 dev-1.1                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                                 Other heads                                 #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                                      tip @b-tip [age]
-Rev     20 dev-1.2                                  @closed @b-tip [age]
-Rev     17 dev-2.0                                          @b-tip [age]
-Rev     10 dev-1.0                                           @anon [age]
-Rev      9 dev-1.0                                           @anon [age]
-Rev      6 dev-1.1 (feature-1.1a)                                  [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default                            1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1*                           3 heads (2 active, 1 inactive, 1 bookmarked)
-#=============================================================================#
-#                              You are at a head                              #
-#=============================================================================#
-Rev      6 dev-1.1 (feature-1.1a)                                  [age]
-#-----------------------------------------------------------------------------#
-#                                 Other heads                                 #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                                      tip @b-tip [age]
-Rev     20 dev-1.2                                  @closed @b-tip [age]
-Rev     17 dev-2.0                                          @b-tip [age]
-Rev     10 dev-1.0                                           @anon [age]
-Rev      9 dev-1.0                                           @anon [age]
-Rev      5 dev-1.1                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default                            1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1*                           3 heads (2 active, 1 inactive, 1 bookmarked)
-#=============================================================================#
-#                      You are at an inactive branch head                     #
-#=============================================================================#
-Rev      7 dev-1.1                                          @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                                    Heads                                    #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                               tip @above @b-tip [age]
-Rev     20 dev-1.2                                  @closed @b-tip [age]
-Rev     17 dev-2.0                                          @b-tip [age]
-Rev     10 dev-1.0                                           @anon [age]
-Rev      9 dev-1.0                                           @anon [age]
-Rev      6 dev-1.1 (feature-1.1a)                                  [age]
-Rev      5 dev-1.1                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default                            1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1*                           3 heads (2 active, 1 inactive, 1 bookmarked)
-#-----------------------------------------------------------------------------#
-#                     Next commit will create a new head!                     #
-#-----------------------------------------------------------------------------#
-#=============================================================================#
-#                    You are lost in the middle of nowhere                    #
-#=============================================================================#
-Rev      8 dev-1.0                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                                    Heads                                    #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                               tip @above @b-tip [age]
-Rev     20 dev-1.2                           @above @closed @b-tip [age]
-Rev     17 dev-2.0                                   @above @b-tip [age]
-Rev     10 dev-1.0                                    @above @anon [age]
-Rev      9 dev-1.0                                    @above @anon [age]
-Rev      6 dev-1.1 (feature-1.1a)                                  [age]
-Rev      5 dev-1.1                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default                            1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0*                           3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
-#-----------------------------------------------------------------------------#
-#                     Next commit will create a new head!                     #
-#-----------------------------------------------------------------------------#
-#=============================================================================#
-#                              You are at a head                              #
-#=============================================================================#
-Rev      9 dev-1.0                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                                 Other heads                                 #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                                      tip @b-tip [age]
-Rev     20 dev-1.2                                  @closed @b-tip [age]
-Rev     17 dev-2.0                                          @b-tip [age]
-Rev     10 dev-1.0                                           @anon [age]
-Rev      6 dev-1.1 (feature-1.1a)                                  [age]
-Rev      5 dev-1.1                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default                            1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0*                           3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
-#=============================================================================#
-#                              You are at a head                              #
-#=============================================================================#
-Rev     10 dev-1.0                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                                 Other heads                                 #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                                      tip @b-tip [age]
-Rev     20 dev-1.2                                  @closed @b-tip [age]
-Rev     17 dev-2.0                                          @b-tip [age]
-Rev      9 dev-1.0                                           @anon [age]
-Rev      6 dev-1.1 (feature-1.1a)                                  [age]
-Rev      5 dev-1.1                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default                            1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0*                           3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
-#=============================================================================#
-#                    You are lost in the middle of nowhere                    #
-#=============================================================================#
-Rev     11 dev-1.0                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                                    Heads                                    #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                               tip @above @b-tip [age]
-Rev     20 dev-1.2                                  @closed @b-tip [age]
-Rev     17 dev-2.0                                          @b-tip [age]
-Rev     10 dev-1.0                                           @anon [age]
-Rev      9 dev-1.0                                           @anon [age]
-Rev      6 dev-1.1 (feature-1.1a)                                  [age]
-Rev      5 dev-1.1                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default                            1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0*                           3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
-#-----------------------------------------------------------------------------#
-#                     Next commit will create a new head!                     #
-#-----------------------------------------------------------------------------#
-#=============================================================================#
-#                    You are lost in the middle of nowhere                    #
-#=============================================================================#
-Rev     12 dev-1.0                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                                    Heads                                    #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                               tip @above @b-tip [age]
-Rev     20 dev-1.2                                  @closed @b-tip [age]
-Rev     17 dev-2.0                                          @b-tip [age]
-Rev     10 dev-1.0                                           @anon [age]
-Rev      9 dev-1.0                                           @anon [age]
-Rev      6 dev-1.1 (feature-1.1a)                                  [age]
-Rev      5 dev-1.1                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default                            1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0*                           3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
-#-----------------------------------------------------------------------------#
-#                     Next commit will create a new head!                     #
-#-----------------------------------------------------------------------------#
-#=============================================================================#
-#                    You are lost in the middle of nowhere                    #
-#=============================================================================#
-Rev     13 dev-1.0                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                                    Heads                                    #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                               tip @above @b-tip [age]
-Rev     20 dev-1.2                                  @closed @b-tip [age]
-Rev     17 dev-2.0                                          @b-tip [age]
-Rev     10 dev-1.0                                           @anon [age]
-Rev      9 dev-1.0                                           @anon [age]
-Rev      6 dev-1.1 (feature-1.1a)                                  [age]
-Rev      5 dev-1.1                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default                            1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0*                           3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
-#-----------------------------------------------------------------------------#
-#                     Next commit will create a new head!                     #
-#-----------------------------------------------------------------------------#
-#=============================================================================#
-#                    You are lost in the middle of nowhere                    #
-#=============================================================================#
-Rev     14 dev-2.0                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                                    Heads                                    #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                                      tip @b-tip [age]
-Rev     20 dev-1.2                                  @closed @b-tip [age]
-Rev     17 dev-2.0                                   @above @b-tip [age]
-Rev     10 dev-1.0                                           @anon [age]
-Rev      9 dev-1.0                                           @anon [age]
-Rev      6 dev-1.1 (feature-1.1a)                                  [age]
-Rev      5 dev-1.1                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default                            1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0*                           1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
-#-----------------------------------------------------------------------------#
-#                     Next commit will create a new head!                     #
-#-----------------------------------------------------------------------------#
-#=============================================================================#
-#                    You are lost in the middle of nowhere                    #
-#=============================================================================#
-Rev     15 dev-2.0                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                                    Heads                                    #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                                      tip @b-tip [age]
-Rev     20 dev-1.2                                  @closed @b-tip [age]
-Rev     17 dev-2.0                                   @above @b-tip [age]
-Rev     10 dev-1.0                                           @anon [age]
-Rev      9 dev-1.0                                           @anon [age]
-Rev      6 dev-1.1 (feature-1.1a)                                  [age]
-Rev      5 dev-1.1                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default                            1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0*                           1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
-#-----------------------------------------------------------------------------#
-#                     Next commit will create a new head!                     #
-#-----------------------------------------------------------------------------#
-#=============================================================================#
-#                    You are lost in the middle of nowhere                    #
-#=============================================================================#
-Rev     16 dev-2.0                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                                    Heads                                    #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                                      tip @b-tip [age]
-Rev     20 dev-1.2                                  @closed @b-tip [age]
-Rev     17 dev-2.0                                   @above @b-tip [age]
-Rev     10 dev-1.0                                           @anon [age]
-Rev      9 dev-1.0                                           @anon [age]
-Rev      6 dev-1.1 (feature-1.1a)                                  [age]
-Rev      5 dev-1.1                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default                            1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0*                           1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
-#-----------------------------------------------------------------------------#
-#                     Next commit will create a new head!                     #
-#-----------------------------------------------------------------------------#
-#=============================================================================#
-#                              You are at a head                              #
-#=============================================================================#
-Rev     17 dev-2.0                                          @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                                 Other heads                                 #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                                      tip @b-tip [age]
-Rev     20 dev-1.2                                  @closed @b-tip [age]
-Rev     10 dev-1.0                                           @anon [age]
-Rev      9 dev-1.0                                           @anon [age]
-Rev      6 dev-1.1 (feature-1.1a)                                  [age]
-Rev      5 dev-1.1                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default                            1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0*                           1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
-#=============================================================================#
-#           You are lost in the middle of nowhere in a closed branch          #
-#=============================================================================#
-Rev     18 dev-1.2                                   @closed @anon [age]
-#-----------------------------------------------------------------------------#
-#                                    Heads                                    #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                                      tip @b-tip [age]
-Rev     20 dev-1.2                           @above @closed @b-tip [age]
-Rev     17 dev-2.0                                          @b-tip [age]
-Rev     10 dev-1.0                                           @anon [age]
-Rev      9 dev-1.0                                           @anon [age]
-Rev      6 dev-1.1 (feature-1.1a)                                  [age]
-Rev      5 dev-1.1                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default                            1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2* (closed)                  1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
-#-----------------------------------------------------------------------------#
-#                     Next commit will create a new head!                     #
-#-----------------------------------------------------------------------------#
-#=============================================================================#
-#           You are lost in the middle of nowhere in a closed branch          #
-#=============================================================================#
-Rev     19 dev-1.2                                   @closed @anon [age]
-#-----------------------------------------------------------------------------#
-#                                    Heads                                    #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                                      tip @b-tip [age]
-Rev     20 dev-1.2                           @above @closed @b-tip [age]
-Rev     17 dev-2.0                                          @b-tip [age]
-Rev     10 dev-1.0                                           @anon [age]
-Rev      9 dev-1.0                                           @anon [age]
-Rev      6 dev-1.1 (feature-1.1a)                                  [age]
-Rev      5 dev-1.1                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default                            1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2* (closed)                  1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
-#-----------------------------------------------------------------------------#
-#                     Next commit will create a new head!                     #
-#-----------------------------------------------------------------------------#
-#=============================================================================#
-#                     You are at a head in a closed branch                    #
-#=============================================================================#
-Rev     20 dev-1.2                                  @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                                 Other heads                                 #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                                      tip @b-tip [age]
-Rev     17 dev-2.0                                          @b-tip [age]
-Rev     10 dev-1.0                                           @anon [age]
-Rev      9 dev-1.0                                           @anon [age]
-Rev      6 dev-1.1 (feature-1.1a)                                  [age]
-Rev      5 dev-1.1                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default                            1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo (closed)               1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2* (closed)                  1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)
-#=============================================================================#
-#           You are lost in the middle of nowhere in a closed branch          #
-#=============================================================================#
-Rev     21 feature-foo                               @closed @anon [age]
-#-----------------------------------------------------------------------------#
-#                                    Heads                                    #
-#-----------------------------------------------------------------------------#
-Rev     24 dev-1.0                               tip @above @b-tip [age]
-Rev     20 dev-1.2                                  @closed @b-tip [age]
-Rev     17 dev-2.0                                          @b-tip [age]
-Rev     10 dev-1.0                                           @anon [age]
-Rev      9 dev-1.0                                           @anon [age]
-Rev      6 dev-1.1 (feature-1.1a)                                  [age]
-Rev      5 dev-1.1                                           @anon [age]
-#-----------------------------------------------------------------------------#
-#                            Inactive branch heads                            #
-#-----------------------------------------------------------------------------#
-Rev      0 default                                          @b-tip [age]
-Rev      7 dev-1.1                                          @b-tip [age]
-Rev     23 feature-foo                              @closed @b-tip [age]
-#-----------------------------------------------------------------------------#
-#                               Branch overview                               #
-#-----------------------------------------------------------------------------#
-default                            1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-2.0                            1 heads (1 active, 0 inactive, 0 bookmarked)
-feature-foo* (closed)              1 heads (0 active, 1 inactive, 0 bookmarked)
-dev-1.2 (closed)                   1 heads (1 active, 0 inactive, 0 bookmarked)
-dev-1.0                            3 heads (3 active, 0 inactive, 0 bookmarked)
-dev-1.1                            3 heads (2 active, 1 inactive, 1 bookmarked)