From 3a4c0c3fb8aae2f8a9d52661043bc762db20c0ce Mon Sep 17 00:00:00 2001 From: Nikhil Badyal Date: Tue, 23 Aug 2022 16:33:14 +0530 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20Added=20parallel=20download?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.py | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/main.py b/main.py index 4bee164..d6900c3 100644 --- a/main.py +++ b/main.py @@ -2,6 +2,7 @@ import re import subprocess import sys from atexit import register +from concurrent.futures import ThreadPoolExecutor from pathlib import Path from queue import PriorityQueue from shutil import rmtree @@ -145,8 +146,8 @@ class Downloader(object): @classmethod def repository( cls, + owner: str, name: str, - owner: str = "revanced", ) -> None: logger.debug(f"Trying to download {name} from github") resp = session.get(f"{github}/{owner}/{name}/releases/latest") @@ -329,10 +330,15 @@ def pre_requisite(): def download_revanced(downloader: Type[Downloader]) -> None: - downloader.repository("revanced-cli") - downloader.repository("revanced-integrations") - downloader.repository("revanced-patches") - downloader.repository("VancedMicroG", "TeamVanced") + assets = ( + ("revanced", "revanced-cli"), + ("revanced", "revanced-integrations"), + ("revanced", "revanced-patches"), + ("TeamVanced", "VancedMicroG"), + ) + with ThreadPoolExecutor() as executor: + executor.map(lambda repo: downloader.repository(*repo), assets) + logger.info("Downloaded revanced microG ,cli, integrations and patches.") def download_from_apkmirror(