Files
endoflife-date-release-data/src/_remove_invalid_releases.py
Marc Wrobel c7faf9545f [release_table] Add remove_if_undefined parameter (#494)
remove_if_undefined allows to exclude unreleased release more easily.
2025-08-12 22:39:39 +02:00

24 lines
868 B
Python

import logging
from common import dates, releasedata
"""Remove empty releases or releases which are released in the future."""
TODAY = dates.today()
frontmatter, _ = releasedata.parse_argv(ignore_auto_config=True)
with releasedata.ProductData(frontmatter.name) as product_data:
releases = list(product_data.releases.values()) # a copy is needed to avoid modifying the dict while iterating
product_data.updated = True # mark the product data as updated even when there are no changes
for release in releases:
if release.is_empty():
product_data.remove_release(release.name(), "empty release")
continue
if release.was_released_after(TODAY):
product_data.remove_release(release.name(), "future release")
continue
logging.debug(f"Keeping release {release} in {product_data.name}")