summaryrefslogtreecommitdiff
path: root/meta
diff options
context:
space:
mode:
authorRachel Powers <508861+Ryex@users.noreply.github.com>2023-05-13 20:44:26 -0700
committerRachel Powers <508861+Ryex@users.noreply.github.com>2023-06-16 21:15:38 -0700
commit95223b83cbb6c726e5422b8803befc771afe36fa (patch)
tree7c874a90dbbe150450400fe8226cbb7e18219642 /meta
parent19b046d235d7599ae4f75c3a7ed5715ecf51d02f (diff)
downloadProject-Tick-95223b83cbb6c726e5422b8803befc771afe36fa.tar.gz
Project-Tick-95223b83cbb6c726e5422b8803befc771afe36fa.zip
cleanup: types
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
Diffstat (limited to 'meta')
-rw-r--r--meta/common/__init__.py11
-rw-r--r--meta/model/__init__.py33
-rw-r--r--meta/model/java.py2
3 files changed, 25 insertions, 21 deletions
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()