Set and store prerelease during category data generation (#3961)

* Set and store prerelease during category data generation

* log out the version
This commit is contained in:
Joakim Sørensen
2024-08-13 09:04:09 +02:00
committed by GitHub
parent 16c29a6e74
commit cf25082897
4 changed files with 17 additions and 4 deletions

View File

@ -82,7 +82,7 @@ def dicts_are_equal(a: dict, b: dict, ignore: set[str]) -> bool:
def repository_has_missing_keys(
repository: HacsRepository,
stage: Literal["update"] | Literal["store"],
stage: Literal["update", "store"],
) -> bool:
"""Check if repository has missing keys."""
retval = False
@ -220,18 +220,22 @@ class AdjustedHacs(HacsBase):
release_count = len(releases)
repository.data.etag_releases = response.etag
repository.data.prerelease = None
if release_count != 0:
for release in releases:
if release.draft:
repository.logger.warning(
"%s Found draft", repository.string)
"%s Found draft %s", repository.string, release.tag_name)
elif release.prerelease:
repository.logger.info(
"%s Found prerelease", repository.string)
"%s Found prerelease %s", repository.string, release.tag_name)
repository.data.prerelease = release.tag_name
else:
repository.logger.info(
"%s Found release %s", repository.string, release.tag_name)
repository.data.releases = True
repository.releases.objects = releases
repository.data.published_tags = [
@ -267,6 +271,12 @@ class AdjustedHacs(HacsBase):
repository.data.last_version = next_version
repository.data.etag_repository = None
if (
repository.data.prerelease
and repository.data.prerelease == repository.data.last_version
):
repository.data.prerelease = None
except GitHubNotModifiedException:
repository.data.releases = True
repository.logger.info(
@ -490,7 +500,7 @@ async def generate_category_data(category: str, repository_name: str = None):
or len(updated_data) == 0
or not isinstance(updated_data, dict)
):
print_error_and_exit(f"Updated data is empty", category)
print_error_and_exit("Updated data is empty", category)
did_raise = True
try:

View File

@ -160,6 +160,7 @@ async def test_generate_category_data_with_prior_content(
"full_name": category_test_data["repository"],
"last_updated": "2011-01-26T19:06:43Z",
"last_version": category_test_data["version_base"],
"prerelease": "0.0.0",
"stargazers_count": 0,
"topics": ["api", "atom", "electron", "octocat"],
**category_data.get(category_test_data["category"], {}),

View File

@ -12,6 +12,7 @@
"name": "Proxy manifest"
},
"manifest_name": "Proxy manifest",
"prerelease": "3.0.0",
"stargazers_count": 80,
"topics": [
"api",

View File

@ -13,6 +13,7 @@
"name": "Proxy manifest"
},
"manifest_name": "Proxy manifest",
"prerelease": "3.0.0",
"stargazers_count": 80,
"topics": [
"api",