hgweb: show commit phase if it's not public
In spartan theme phase is shown on its own table row, because there's no single
line of "tags". Everywhere else phase is prepended to the list of "tags" of a
changeset. Its element has a purple-ish color in gitweb and monoblue, and a
dotted line under it and no color in paper and coal (as these themes are frugal
with colors).
This patch intentionally doesn't touch graph, because it needs a rewrite. I'll
get to it pretty soon and in the process will add phase and everything that's
still coming (e.g. obsolescence and instabilities).
.. feature::
hgweb now displays phases of non-public changesets
# RelaxNG schema for "xml" log style
# Inspired by Subversion's XML log format.
start = log
node.type = xsd:string {minLength = "40" maxLength = "40"}
log = element log { logentry+ }
logentry = element logentry {
logentry.attlist,
branch*, tag*, hgparent*,
author, date,
msg, paths?, copies?, extra*
}
logentry.attlist =
attribute revision {xsd:nonNegativeInteger}
& attribute node {node.type}
branch = element branch { text }
tag = element tag { text }
hgparent = element parent {hgparent.attlist, text}
hgparent.attlist =
attribute revision {xsd:integer {minInclusive = "-1"} }
& attribute node {node.type}
author = element author { author.attlist, text }
author.attlist =
attribute email {text}
date = element date {xsd:dateTime}
msg = element msg {msg.attlist, text}
msg.attlist =
attribute xml:space {"preserve"}
paths = element paths { path* }
path = element path { path.attlist, text }
path.attlist =
# Action: (A)dd, (M)odify, (R)emove
attribute action {"A"|"M"|"R"}
copies = element copies { copy+ }
copy = element copy { copy.attlist, text }
copy.attlist =
attribute source {text}
extra = element extra {extra.attlist, text}
extra.attlist =
attribute key {text}