mirror of
https://github.com/sotam0316/docker-py-revanced.git
synced 2026-04-25 03:48:37 +09:00
✨ Dump app obj
This commit is contained in:
+6
-2
@@ -5,7 +5,7 @@ import hashlib
|
|||||||
import pathlib
|
import pathlib
|
||||||
from concurrent.futures import ThreadPoolExecutor
|
from concurrent.futures import ThreadPoolExecutor
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
from typing import Self
|
from typing import Any, Self
|
||||||
|
|
||||||
from loguru import logger
|
from loguru import logger
|
||||||
from pytz import timezone
|
from pytz import timezone
|
||||||
@@ -90,6 +90,10 @@ class APP(object):
|
|||||||
attrs = vars(self)
|
attrs = vars(self)
|
||||||
return ", ".join([f"{key}: {value}" for key, value in attrs.items()])
|
return ", ".join([f"{key}: {value}" for key, value in attrs.items()])
|
||||||
|
|
||||||
|
def for_dump(self: Self) -> dict[str, Any]:
|
||||||
|
"""Convert the instance of this class to json."""
|
||||||
|
return self.__dict__
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def download(url: str, config: RevancedConfig, assets_filter: str, file_name: str = "") -> tuple[str, str]:
|
def download(url: str, config: RevancedConfig, assets_filter: str, file_name: str = "") -> tuple[str, str]:
|
||||||
"""The `download` function downloads a file from a given URL & filters the assets based on a given filter.
|
"""The `download` function downloads a file from a given URL & filters the assets based on a given filter.
|
||||||
@@ -113,7 +117,7 @@ class APP(object):
|
|||||||
|
|
||||||
Returns
|
Returns
|
||||||
-------
|
-------
|
||||||
a string, which is the file name of the downloaded file.
|
tuple of strings, which is the tag,file name of the downloaded file.
|
||||||
"""
|
"""
|
||||||
from src.downloader.download import Downloader
|
from src.downloader.download import Downloader
|
||||||
|
|
||||||
|
|||||||
+7
-3
@@ -9,13 +9,16 @@ import time
|
|||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
from json import JSONDecodeError
|
from json import JSONDecodeError
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from typing import Any
|
from typing import TYPE_CHECKING, Any
|
||||||
|
|
||||||
import requests
|
import requests
|
||||||
from loguru import logger
|
from loguru import logger
|
||||||
from pytz import timezone
|
from pytz import timezone
|
||||||
from requests import Response, Session
|
from requests import Response, Session
|
||||||
|
|
||||||
|
if TYPE_CHECKING:
|
||||||
|
from src.app import APP
|
||||||
|
|
||||||
from src.downloader.sources import APK_MIRROR_APK_CHECK
|
from src.downloader.sources import APK_MIRROR_APK_CHECK
|
||||||
from src.downloader.utils import status_code_200
|
from src.downloader.utils import status_code_200
|
||||||
from src.exceptions import ScrapingError
|
from src.exceptions import ScrapingError
|
||||||
@@ -227,7 +230,7 @@ def datetime_to_ms_epoch(dt: datetime) -> int:
|
|||||||
return int(round(microseconds / float(1000)))
|
return int(round(microseconds / float(1000)))
|
||||||
|
|
||||||
|
|
||||||
def save_patch_info(app: Any) -> None:
|
def save_patch_info(app: "APP") -> None:
|
||||||
"""Save version info a patching resources used to a file."""
|
"""Save version info a patching resources used to a file."""
|
||||||
try:
|
try:
|
||||||
with Path(updates_file).open() as file:
|
with Path(updates_file).open() as file:
|
||||||
@@ -237,12 +240,13 @@ def save_patch_info(app: Any) -> None:
|
|||||||
old_version = {} # or any default value you want to assign
|
old_version = {} # or any default value you want to assign
|
||||||
|
|
||||||
old_version[app.app_name] = {
|
old_version[app.app_name] = {
|
||||||
"version": app.app_version,
|
"app_version": app.app_version,
|
||||||
"integrations_version": app.resource["integrations"]["version"],
|
"integrations_version": app.resource["integrations"]["version"],
|
||||||
"patches_version": app.resource["patches"]["version"],
|
"patches_version": app.resource["patches"]["version"],
|
||||||
"cli_version": app.resource["cli"]["version"],
|
"cli_version": app.resource["cli"]["version"],
|
||||||
"patches_json_version": app.resource["patches_json"]["version"],
|
"patches_json_version": app.resource["patches_json"]["version"],
|
||||||
"ms_epoch_since_patched": datetime_to_ms_epoch(datetime.now(timezone(time_zone))),
|
"ms_epoch_since_patched": datetime_to_ms_epoch(datetime.now(timezone(time_zone))),
|
||||||
"date_patched": datetime.now(timezone(time_zone)),
|
"date_patched": datetime.now(timezone(time_zone)),
|
||||||
|
"app_dump": app.for_dump(),
|
||||||
}
|
}
|
||||||
Path(updates_file).write_text(json.dumps(old_version, indent=4, default=str) + "\n")
|
Path(updates_file).write_text(json.dumps(old_version, indent=4, default=str) + "\n")
|
||||||
|
|||||||
Reference in New Issue
Block a user