(
        self, release_file: Dict[str, str]
    )
return (release_path, download_urls)
Populate download URLs for a certain file, possible combinations are:

        - download_mirror is not set:
          return "url" attribute from release_file
        - download_mirror is set, no_fallback is false:
          prepend "download_mirror + path" before "url"
        - download_mirror is set, no_fallback is true:
          return only "download_mirror + path"

        Theoritically we are able to support multiple download mirrors by prepending
        more urls in the list.
Populate download URLs for a certain file, possible combinations are:
Populate download URLs for a certain file possible combinations are :
def populate_download_urls(
        self, release_file: Dict[str, str]
    ) -> Tuple[str, List[str]]:
        """
        Populate download URLs for a certain file, possible combinations are:

        - download_mirror is not set:
          return "url" attribute from release_file
        - download_mirror is set, no_fallback is false:
          prepend "download_mirror + path" before "url"
        - download_mirror is set, no_fallback is true:
          return only "download_mirror + path"

        Theoritically we are able to support multiple download mirrors by prepending
        more urls in the list.

        """
        release_url = release_file["url"]
        release_path = urlparse(release_url).path

        if self.download_mirror and not self.download_mirror_no_fallback:
            download_urls = [
                self.download_mirror + release_path,
                release_url,
            ]
        elif self.download_mirror and self.download_mirror_no_fallback:
            download_urls = [
                self.download_mirror + release_path,
            ]
        else:
            download_urls = [release_url]

        return (release_path, download_urls)
def populate_download_urls ( self , release_file : Dict [ str , str ] ) -> Tuple [ str , List [ str ] ] : release_url = release_file [ "url" ] release_path = urlparse ( release_url ) . path if self . download_mirror and not self . download_mirror_no_fallback : download_urls = [ self . download_mirror + release_path , release_url , ] elif self . download_mirror and self . download_mirror_no_fallback : download_urls = [ self . download_mirror + release_path , ] else : download_urls = [ release_url ] return ( release_path , download_urls )