diff options
| author | Rachel Powers <508861+Ryex@users.noreply.github.com> | 2023-05-13 16:20:50 -0700 |
|---|---|---|
| committer | Rachel Powers <508861+Ryex@users.noreply.github.com> | 2023-06-16 21:15:37 -0700 |
| commit | acc6a4cd95d06327d93ca44578a998f5dac89c17 (patch) | |
| tree | 527fc5cb7c912dd3399bc3f8be78fb0dcf46bd61 /meta/model/java.py | |
| parent | cbe8419d800e78274c6ce9635e326fa60789724f (diff) | |
| download | Project-Tick-acc6a4cd95d06327d93ca44578a998f5dac89c17.tar.gz Project-Tick-acc6a4cd95d06327d93ca44578a998f5dac89c17.zip | |
fix: ensure JDK options are included (some platform vendor combos don't offer jre)
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
Diffstat (limited to 'meta/model/java.py')
| -rw-r--r-- | meta/model/java.py | 41 |
1 files changed, 23 insertions, 18 deletions
diff --git a/meta/model/java.py b/meta/model/java.py index 7c5da18cdc..d234b6cf59 100644 --- a/meta/model/java.py +++ b/meta/model/java.py @@ -5,9 +5,8 @@ from pydantic import Field from datetime import datetime from enum import IntEnum, Enum from .enum import StrEnum -from typing import Optional, List, Dict, Any, Iterator, Iterable, NamedTuple -from collections import namedtuple -from urllib.parse import urljoin, urlencode, urlparse, urlunparse +from typing import Optional, Any, NamedTuple, Generator +from urllib.parse import urlencode, urlparse, urlunparse from functools import total_ordering # namedtuple to match the internal signature of urlunparse @@ -52,7 +51,7 @@ class JavaVersionMeta(MetaBase): build = self.build return (self.major, self.minor, self.security, build) - def __eq__(self, other: 'JavaVersionMeta'): + def __eq__(self, other: Any): return (self.to_tuple() == other.to_tuple()) def __lt__(self, other: 'JavaVersionMeta'): @@ -69,6 +68,10 @@ class JavaChecksumMeta(MetaBase): hash: str +class JavaPackageType(StrEnum): + Jre = "jre" + Jdk = "jdk" + class JavaRuntimeMeta(MetaBase): name: str vendor: str @@ -77,6 +80,7 @@ class JavaRuntimeMeta(MetaBase): checksum: Optional[JavaChecksumMeta] recommended: bool download_type: JavaRuntimeDownloadType = Field(alias="downloadType") + package_type: JavaPackageType = Field(alias="packageType") version: JavaVersionMeta @@ -85,10 +89,10 @@ class JavaRuntimeMap(MetaBase): os: [] for os in JavaRuntimeOS if os != JavaRuntimeOS.Unknown } - def __iter__(self) -> Iterator[JavaRuntimeOS]: - return iter(self.__root__) + def __iter__(self) -> Generator[tuple[str, list[JavaRuntimeMeta]], None, None]: + yield from ((str(os), runtime) for os, runtime in self.__root__.items()) - def __getitem__(self, item) -> list[JavaRuntimeMeta]: + def __getitem__(self, item:JavaRuntimeOS) -> list[JavaRuntimeMeta]: return self.__root__[item] def __len__(self): @@ -299,10 +303,11 @@ class AdoptiumRelease(MetaBase): class AdoptiumReleases(MetaBase): __root__: list[AdoptiumRelease] - def __iter__(self) -> Iterator[AdoptiumRelease]: - return iter(self.__root__) + def __iter__(self) -> Generator[tuple[str, AdoptiumRelease], None, None]: + yield from ((str(i), val) for i, val in enumerate(self.__root__)) + - def __getitem__(self, item) -> AdoptiumRelease: + def __getitem__(self, item: int) -> AdoptiumRelease: return self.__root__[item] def append(self, rls: AdoptiumRelease): @@ -458,8 +463,8 @@ class AzulApiPackagesQuery(APIQuery): distro_version: Optional[str] = None java_package_features: list[str] = [] release_status: Optional[AzulReleaseStatus] = None - availability_types: list[AzulAvailabilityType] = None - certifications: list[AzulCertifications] = None + availability_types: list[AzulAvailabilityType] = [] + certifications: list[AzulCertifications] = [] include_fields: list[str] = [] page: int = 0 page_size: int = 100 @@ -528,10 +533,10 @@ class ZuluPackageList(MetaBase): class ZuluPackages(MetaBase): __root__: list[ZuluPackageList] - def __iter__(self) -> Iterator[ZuluPackageList]: - return iter(self.__root__) + def __iter__(self) -> Generator[tuple[str, ZuluPackageList], None, None]: + yield from ((str(i), val) for i, val in enumerate(self.__root__)) - def __getitem__(self, item) -> ZuluPackageList: + def __getitem__(self, item: int) -> ZuluPackageList: return self.__root__[item] def append(self, pkg: ZuluPackageList): @@ -541,10 +546,10 @@ class ZuluPackages(MetaBase): class ZuluPackagesDetail(MetaBase): __root__: list[ZuluPackageDetail] - def __iter__(self) -> Iterator[ZuluPackageDetail]: - return iter(self.__root__) + def __iter__(self) -> Generator[tuple[str, ZuluPackageDetail], None, None]: + yield from ((str(i), val) for i, val in enumerate(self.__root__)) - def __getitem__(self, item) -> ZuluPackageDetail: + def __getitem__(self, item: int) -> ZuluPackageDetail: return self.__root__[item] def append(self, pkg: ZuluPackageDetail): |
