def format_upstream_string(self): """Format string containing upstream maintainers and bugtrackers. Used by emerge to display upstream information. @rtype: String @return: a string containing upstream maintainers and bugtrackers """ maintainers = [] for upstream in self.upstream(): for maintainer in upstream.maintainers: if maintainer.email is None or not maintainer.email.strip(): if maintainer.name and maintainer.name.strip(): maintainers.append(maintainer.name) else: maintainers.append(maintainer.email) for bugtracker in upstream.bugtrackers: if bugtracker.startswith("mailto:"): bugtracker = bugtracker[7:] maintainers.append(bugtracker) maintainers = list(unique_everseen(maintainers)) maint_str = " ".join(maintainers) return maint_str
def format_maintainer_string(self): """Format string containing maintainers and herds (emails if possible). Used by emerge to display maintainer information. Entries are sorted according to the rules stated on the bug wranglers page. @rtype: String @return: a string containing maintainers and herds """ maintainers = [] for maintainer in self.maintainers(): if maintainer.email is None or not maintainer.email.strip(): if maintainer.name and maintainer.name.strip(): maintainers.append(maintainer.name) else: maintainers.append(maintainer.email) for herd, email in self.herds(include_email=True): if herd == "no-herd": continue if email is None or not email.strip(): if herd and herd.strip(): maintainers.append(herd) else: maintainers.append(email) maintainers = list(unique_everseen(maintainers)) maint_str = "" if maintainers: maint_str = maintainers[0] maintainers = maintainers[1:] if maintainers: maint_str += " " + ",".join(maintainers) return maint_str