mirror of
https://github.com/miurahr/aqtinstall.git
synced 2025-12-18 13:14:37 +03:00
Utilize dataclasses (#313)
* Utilize dataclasses Signed-off-by: Hiroshi Miura <miurahr@linux.com> * PEP8 Signed-off-by: Hiroshi Miura <miurahr@linux.com>
This commit is contained in:
@@ -22,6 +22,7 @@
|
||||
|
||||
import posixpath
|
||||
import xml.etree.ElementTree as ElementTree
|
||||
from dataclasses import dataclass, field
|
||||
from logging import getLogger
|
||||
from typing import Optional, Tuple
|
||||
|
||||
@@ -30,43 +31,25 @@ from aqt.helper import Settings, getUrl
|
||||
from aqt.metadata import SimpleSpec, Version
|
||||
|
||||
|
||||
@dataclass
|
||||
class TargetConfig:
|
||||
def __init__(self, version, target, arch, os_name):
|
||||
self.version = str(version)
|
||||
self.target = target
|
||||
self.arch = arch
|
||||
self.os_name = os_name
|
||||
version: str
|
||||
target: str
|
||||
arch: str
|
||||
os_name: str
|
||||
|
||||
def __str__(self):
|
||||
print(
|
||||
f"TargetConfig(version={self.version}, target={self.target}, "
|
||||
f"arch={self.arch}, os_name={self.os_name}"
|
||||
)
|
||||
|
||||
def __repr__(self):
|
||||
print(f"({self.version}, {self.target}, {self.arch}, {self.os_name})")
|
||||
def __post_init__(self):
|
||||
self.version = str(self.version)
|
||||
|
||||
|
||||
@dataclass
|
||||
class QtPackage:
|
||||
"""
|
||||
Hold package information.
|
||||
"""
|
||||
|
||||
def __init__(
|
||||
self,
|
||||
name: str,
|
||||
archive_url: str,
|
||||
archive: str,
|
||||
package_desc: str,
|
||||
hashurl: str,
|
||||
version: Optional[Version] = None,
|
||||
):
|
||||
self.name = name
|
||||
self.url = archive_url
|
||||
self.archive = archive
|
||||
self.desc = package_desc
|
||||
self.hashurl = hashurl
|
||||
self.version = version
|
||||
name: str
|
||||
archive_url: str
|
||||
archive: str
|
||||
package_desc: str
|
||||
hashurl: str
|
||||
version: Optional[Version] = field(default=None)
|
||||
|
||||
def __repr__(self):
|
||||
v_info = f", version={self.version}" if self.version else ""
|
||||
@@ -81,16 +64,12 @@ class QtPackage:
|
||||
)
|
||||
|
||||
|
||||
@dataclass
|
||||
class ListInfo:
|
||||
"""
|
||||
Hold list information
|
||||
"""
|
||||
|
||||
def __init__(self, name, display_name, desc, virtual):
|
||||
self.name = name
|
||||
self.display_name = display_name
|
||||
self.desc = desc
|
||||
self.virtual = virtual
|
||||
name: str
|
||||
display_name: str
|
||||
desc: str
|
||||
virtual: str
|
||||
|
||||
|
||||
class PackagesList:
|
||||
|
||||
@@ -839,7 +839,7 @@ def installer(qt_archive, base_dir, command, queue, keep=False, response_timeout
|
||||
It is called through multiprocessing.Pool()
|
||||
"""
|
||||
name = qt_archive.name
|
||||
url = qt_archive.url
|
||||
url = qt_archive.archive_url
|
||||
hashurl = qt_archive.hashurl
|
||||
archive = qt_archive.archive
|
||||
start_time = time.perf_counter()
|
||||
|
||||
@@ -38,6 +38,7 @@ install_requires =
|
||||
py7zr>=0.15.1
|
||||
texttable
|
||||
bs4
|
||||
dataclasses;python_version<"3.7"
|
||||
setup_requires =
|
||||
setuptools-scm[toml]>=6.0.1
|
||||
setuptools>=45.0
|
||||
|
||||
@@ -42,7 +42,7 @@ def test_parse_update_xml(monkeypatch, os_name, version, target, datafile):
|
||||
assert qt_archives_all_modules.archives is not None
|
||||
|
||||
# Extract all urls
|
||||
url_list = [item.url for item in qt_archives.archives]
|
||||
url_list = [item.archive_url for item in qt_archives.archives]
|
||||
url_all_modules_list = [item.url for item in qt_archives_all_modules.archives]
|
||||
|
||||
# Check the difference list contains only extra modules urls for target specified
|
||||
|
||||
@@ -35,8 +35,10 @@ def test_parse_update_xml(monkeypatch, os_name, version, target, datafile):
|
||||
assert qt_archives_all_modules.archives is not None
|
||||
|
||||
# Extract all urls
|
||||
url_list = [item.url for item in qt_archives.archives]
|
||||
url_all_modules_list = [item.url for item in qt_archives_all_modules.archives]
|
||||
url_list = [item.archive_url for item in qt_archives.archives]
|
||||
url_all_modules_list = [
|
||||
item.archive_url for item in qt_archives_all_modules.archives
|
||||
]
|
||||
|
||||
# Check the difference list contains only extra modules urls for target specified
|
||||
list_diff = [item for item in url_all_modules_list if item not in url_list]
|
||||
|
||||
Reference in New Issue
Block a user