docs: def validate_repo_url(url):
      """
      Validates and formats `url` to be valid URL pointing to a repo on bitbucket.org or github.com
      :param url: str, URL
      :return: str, valid URL if valid repo, emptry string otherwise
      """
      try:
          if "github.com" in url:
              return re.findall(r"https?://w?w?w?.?github.com/[\w\-]+/[\w.-]+", url)[0]
          elif "bitbucket.org" in url:
              return re.findall(r"https?://bitbucket.org/[\w.-]+/[\w.-]+", url)[0] + "/src/"
          elif "launchpad.net" in url:
              return re.findall(r"https?://launchpad.net/[\w.-]+", url)[0]
          elif "sourceforge.net" in url:
              mo = re.match(r"https?://sourceforge.net/projects/"
                            r"([\w.-]+)/", url, re.I)
              template = "https://sourceforge.net/p/{}/code/HEAD/tree/trunk/src/"
              return template.format(mo.groups()[0])
      except (IndexError, AttributeError):
          pass
      return ""