INNER CODE UNIT · Python
parse_existing_changelog
nova-video-player/aos-AVP · script/sync_changelog.py:51
def parse_existing_changelog(changelog_path: str) -> Set[str]:
"""Parse CHANGELOG.md and return set of existing version tags"""
existing_versions = set()
try:
with open(changelog_path, 'r', encoding='utf-8') as f:
content = f.read()
# Find all version tags in format: <a id="v6.3.28"></a>
pattern = r'<a id="(v[\d.]+)"></a>'
matches = re.findall(pattern, content)
existing_versions.update(matches)
except FileNotFoundError:
print(f"CHANGELOG.md not found at {changelog_path}", file=sys.stderr)
return existing_versions