The current implementation of get_comps is based on simple text parser which will generate invalid comps.xml if any of the XML files fetched from repositories are not formatted as expected. A fragment like (without new line): will confuse it.
The solution is to use a XML parsing library and work with XML nodes rather that raw text.
get_comps implementation using libxml2-python get_comps
Additionally the check for xsltproc can be moved from this function to somewhere else. (pungi.pu/doCreateRepo)
Added 'import libxml2' to revisor/cfg.py
Committed to branch master, changeset [changeset:c35cb7115e10b99261622e6a9f27d7acaec51dbb]
Meant that to be another changeset... but it doesn't show in Trac yet :/
[changeset:e1b3f35f11dfb6ed85181ed12b225673ffd54453]
Metadata Update from @atodorov: - Issue set to the milestone: 2.0.6 Release