🐛 fix(_er): statndard error type

still unstable[under production]
This commit is contained in:
Eshan Roy
2024-11-30 13:06:40 +05:30
parent 52572becd1
commit 0fe8549a8e

View File

@@ -3,6 +3,8 @@ import locale
import datetime import datetime
import requests import requests
import subprocess import subprocess
from queue import Queue
from threading import Thread
import gi import gi
from gi.repository import GLib from gi.repository import GLib
gi.require_version("Gtk", "4.0") gi.require_version("Gtk", "4.0")
@@ -83,7 +85,35 @@ def permissions(dst):
except Exception as e: except Exception as e:
logger.error("Found Error on permissions(). Exception: %s", e) logger.error("Found Error on permissions(). Exception: %s", e)
def refresh_cache(self): def get_response(session,linux_kernel,response_queue,response_content):
response = requests.get("%s/packages/l/%s" % (archlinux_mirror_archive_url, linux_kernel), headers=headers,allow_redirects=True,timeout=60,stream=True)
if response.status_code == 200:
if logger.getEffectiveLevel() == 10:
logger.debug("Response Code For %s/packages/l/%s = 200 | OK" % (archlinux_mirror_archive_url,linux_kernel))
if response.text is not None:
response_content[linux_kernel] = response.text
response_queue.put(response_content)
else:
logger.error("Request Failed!")
logger.error(response.text)
response_queue.put(None)
def refreshCache(self):
cached_kernel_list.clear()
if os.path.exists(cache_file):
os.remove(cache_file)
getOfficialKernels(self)
writeCache()
def getOfficialKernels(self):
try:
if not os.path.exists(cache_file) or self.refreshCache is True:
session = requests.session()
response_queue = Queue()
response_content = {}
for linux_kernel in supported_kernel_dict:
logger.info("Fetching Data: %s/packages/l/%s"%(archlinux_mirror_archive_url, linux_kernel))
Thread(target=get_response,args=(session,linux_kernel,response_queue,response_content), daemon=True).start()
# Get Kernel Update # Get Kernel Update
def getLatestKernelUpdate(self): def getLatestKernelUpdate(self):
@@ -122,7 +152,7 @@ def getLatestKernelUpdate(self):
logger.info("Linux Kernel Last Update: %s" % datetime.datetime.strptime(response.json()["results"][0]["last_update"], "%Y-%m-%dT%H:%M:%S.%f%z").date()) logger.info("Linux Kernel Last Update: %s" % datetime.datetime.strptime(response.json()["results"][0]["last_update"], "%Y-%m-%dT%H:%M:%S.%f%z").date())
if (datetime.datetime.strptime(response.json()["results"][0]["last_update"], "%Y-%m-%dT%H:%M:%S.%f%z").date() >= datetime.datetime.strptime(cache_timestamp, "%Y-%m-%d %H-%M-%S").date()): if (datetime.datetime.strptime(response.json()["results"][0]["last_update"], "%Y-%m-%dT%H:%M:%S.%f%z").date() >= datetime.datetime.strptime(cache_timestamp, "%Y-%m-%d %H-%M-%S").date()):
logger.info("Linux Package Has Been Updated!") logger.info("Linux Package Has Been Updated!")
refresh_cache(self) refreshCache(self)
return True return True
else: else:
logger.info("Linux Kernel Could Not Be Updated!") logger.info("Linux Kernel Could Not Be Updated!")