diff options
| author | Rachel Powers <508861+Ryex@users.noreply.github.com> | 2023-05-13 20:44:26 -0700 |
|---|---|---|
| committer | Rachel Powers <508861+Ryex@users.noreply.github.com> | 2023-06-16 21:15:38 -0700 |
| commit | 95223b83cbb6c726e5422b8803befc771afe36fa (patch) | |
| tree | 7c874a90dbbe150450400fe8226cbb7e18219642 | |
| parent | 19b046d235d7599ae4f75c3a7ed5715ecf51d02f (diff) | |
| download | Project-Tick-95223b83cbb6c726e5422b8803befc771afe36fa.tar.gz Project-Tick-95223b83cbb6c726e5422b8803befc771afe36fa.zip | |
cleanup: types
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
| -rw-r--r-- | generateJava.py | 56 | ||||
| -rw-r--r-- | meta/common/__init__.py | 11 | ||||
| -rw-r--r-- | meta/model/__init__.py | 33 | ||||
| -rw-r--r-- | meta/model/java.py | 2 |
4 files changed, 48 insertions, 54 deletions
diff --git a/generateJava.py b/generateJava.py index b32b786847..b5f0934a10 100644 --- a/generateJava.py +++ b/generateJava.py @@ -46,17 +46,6 @@ STATIC_DIR = static_path() ensure_component_dir(JAVA_COMPONENT) -MOJANG_JAVA_OS_NAMES = [ - "gamecore", - "linux", - "linux-i386", - "mac-os", - "mac-os-arm64", - "windows-arm64", - "windows-x64", - "windows-x86", -] - MOJANG_OS_ARCHITECTURES = [ "x64", "x86", @@ -110,22 +99,23 @@ def translate_os(os: str): def mojang_os_to_java_os(mojang_os: MojangJavaOsName) -> JavaRuntimeOS: - if mojang_os == MojangJavaOsName.Linux: - return JavaRuntimeOS.LinuxX64 - elif mojang_os == MojangJavaOsName.Linuxi386: - return JavaRuntimeOS.LinuxX86 - elif mojang_os == MojangJavaOsName.MacOs: - return JavaRuntimeOS.MacOsX64 - elif mojang_os == MojangJavaOsName.MacOSArm64: - return JavaRuntimeOS.MacOsArm64 - elif mojang_os == MojangJavaOsName.WindowsArm64: - return JavaRuntimeOS.WindowsArm64 - elif mojang_os == MojangJavaOsName.WindowsX64: - return JavaRuntimeOS.WindowsX64 - elif mojang_os == MojangJavaOsName.WindowsX86: - return JavaRuntimeOS.WindowsX86 - else: - return JavaRuntimeOS.Unknown + match mojang_os: + case MojangJavaOsName.Linux: + return JavaRuntimeOS.LinuxX64 + case MojangJavaOsName.Linuxi386: + return JavaRuntimeOS.LinuxX86 + case MojangJavaOsName.MacOs: + return JavaRuntimeOS.MacOsX64 + case MojangJavaOsName.MacOSArm64: + return JavaRuntimeOS.MacOsArm64 + case MojangJavaOsName.WindowsArm64: + return JavaRuntimeOS.WindowsArm64 + case MojangJavaOsName.WindowsX64: + return JavaRuntimeOS.WindowsX64 + case MojangJavaOsName.WindowsX86: + return JavaRuntimeOS.WindowsX86 + case _: + return JavaRuntimeOS.Unknown def mojang_runtime_to_java_runtime( @@ -260,12 +250,12 @@ def vendor_priority(vendor: str) -> int: def pkg_type_priority(pkg_type: JavaPackageType) -> int: - if pkg_type == JavaPackageType.Jre: - return 2 - elif pkg_type == JavaPackageType.Jdk: - return 1 - else: - return -1 + match pkg_type: + case JavaPackageType.Jre: + return 2 + case JavaPackageType.Jdk: + return 1 + return -1 def ensure_one_recommended(runtimes: list[JavaRuntimeMeta]) -> Optional[JavaRuntimeMeta]: diff --git a/meta/common/__init__.py b/meta/common/__init__.py index f799cea500..8f6a829f17 100644 --- a/meta/common/__init__.py +++ b/meta/common/__init__.py @@ -1,10 +1,11 @@ import os import datetime from urllib.parse import urlparse +from typing import Any, Optional import requests -from cachecontrol import CacheControl -from cachecontrol.caches import FileCache +from cachecontrol import CacheControl # type: ignore +from cachecontrol.caches import FileCache # type: ignore def serialize_datetime(dt: datetime.datetime): @@ -56,7 +57,7 @@ def replace_old_launchermeta_url(url: str): return url -def get_all_bases(cls, bases=None): +def get_all_bases(cls: type, bases: Optional[list[type]] = None): bases = bases or [] bases.append(cls) for c in cls.__bases__: @@ -64,10 +65,10 @@ def get_all_bases(cls, bases=None): return tuple(bases) -def merge_dict(base: dict, overlay: dict): +def merge_dict(base: dict[Any, Any], overlay: dict[Any, Any]): for k, v in base.items(): if isinstance(v, dict): - merge_dict(v, overlay.setdefault(k, {})) + merge_dict(v, overlay.setdefault(k, {})) # type: ignore else: if k not in overlay: overlay[k] = v diff --git a/meta/model/__init__.py b/meta/model/__init__.py index 0428b7f1fb..efb6adf6d5 100644 --- a/meta/model/__init__.py +++ b/meta/model/__init__.py @@ -3,7 +3,7 @@ from datetime import datetime from typing import Optional, List, Dict, Any, Iterator import pydantic -from pydantic import Field, validator +from pydantic import Field, validator # type: ignore from ..common import ( serialize_datetime, @@ -85,13 +85,16 @@ class GradleSpecifier: def is_log4j(self): return self.group == "org.apache.logging.log4j" - def __eq__(self, other): - return str(self) == str(other) + def __eq__(self, other: Any): + if isinstance(other, GradleSpecifier): + return str(self) == str(other) + else: + return False - def __lt__(self, other): + def __lt__(self, other: 'GradleSpecifier'): return str(self) < str(other) - def __gt__(self, other): + def __gt__(self, other: 'GradleSpecifier'): return str(self) > str(other) def __hash__(self): @@ -120,7 +123,7 @@ class GradleSpecifier: return cls(group, artifact, version, classifier, extension) @classmethod - def validate(cls, v): + def validate(cls, v: 'str | GradleSpecifier'): if isinstance(v, cls): return v if isinstance(v, str): @@ -149,7 +152,7 @@ class MetaBase(pydantic.BaseModel): with open(file_path, "w") as f: f.write(self.json()) - def merge(self, other): + def merge(self, other: 'MetaBase'): """ Merge other object with self. - Concatenates lists @@ -173,14 +176,14 @@ class MetaBase(pydantic.BaseModel): elif isinstance(ours, set): ours |= theirs elif isinstance(ours, dict): - result = merge_dict(ours, copy.deepcopy(theirs)) + result = merge_dict(ours, copy.deepcopy(theirs)) # type: ignore setattr(self, key, result) elif MetaBase in get_all_bases(field.type_): ours.merge(theirs) else: setattr(self, key, theirs) - def __hash__(self): + def __hash__(self): #type: ignore return hash(self.json()) class Config: @@ -191,7 +194,7 @@ class MetaBase(pydantic.BaseModel): class Versioned(MetaBase): @validator("format_version") - def format_version_must_be_supported(cls, v): + def format_version_must_be_supported(cls, v: int): assert v <= META_FORMAT_VERSION return v @@ -206,7 +209,7 @@ class MojangArtifactBase(MetaBase): class MojangAssets(MojangArtifactBase): @validator("url") - def validate_url(cls, v): + def validate_url(cls, v: str): return replace_old_launchermeta_url(v) id: str @@ -242,7 +245,7 @@ class MojangLibraryDownloads(MetaBase): class OSRule(MetaBase): @validator("name") - def name_must_be_os(cls, v): + def name_must_be_os(cls, v: str): assert v in [ "osx", "linux", @@ -260,7 +263,7 @@ class OSRule(MetaBase): class MojangRule(MetaBase): @validator("action") - def action_must_be_allow_disallow(cls, v): + def action_must_be_allow_disallow(cls, v: str): assert v in ["allow", "disallow"] return v @@ -271,10 +274,10 @@ class MojangRule(MetaBase): class MojangRules(MetaBase): __root__: List[MojangRule] - def __iter__(self) -> Iterator[MojangRule]: + def __iter__(self) -> Iterator[MojangRule]: #type: ignore return iter(self.__root__) - def __getitem__(self, item) -> MojangRule: + def __getitem__(self, item: int) -> MojangRule: return self.__root__[item] diff --git a/meta/model/java.py b/meta/model/java.py index ac224fe16c..6a335df454 100644 --- a/meta/model/java.py +++ b/meta/model/java.py @@ -118,7 +118,7 @@ class APIQuery(MetaBase): if isinstance(value, Enum): set_parts[key] = value.value elif isinstance(value, list): - if len(value) > 0: + if len(value) > 0: #type: ignore set_parts[key] = value elif isinstance(value, datetime): set_parts[key] = value.isoformat() |
