When operators > and < are overloaded, this has the consequence to have the > and < in the label.
This characters needs escaping because, as stated in label formatting, these are used as field delimiters.
This class
class Version < Array
def initialize s
str = s.gsub(/[\-_]/,".")
super(str.split('.').map { |e| e.to_i })
end
def < x
(self <=> x) < 0
end
def <= x
(self <=> x) <= 0
end
def > x
(self <=> x) > 0
end
def >= x
(self <=> x) >= 0
end
def == x
(self <=> x) == 0
end
end
When operators > and < are overloaded, this has the consequence to have the > and < in the label.
This characters needs escaping because, as stated in label formatting, these are used as field delimiters. This class
Produces the following dot:
Which produces the following message when converting using dot
Escaping each > and < in the label with a backslash solved the issue.