import re from pathlib import Path ROOT = Path(__file__).resolve().parent.parent def get_latest_release(project): history_file = ROOT / 'docs' / 'history' / f'{project}.md' release_headers = 0 history_file_lines = [] with history_file.open(encoding='utf-8') as f: for line in f: history_file_lines.append(line.rstrip()) if line.startswith('## '): release_headers += 1 if release_headers == 3: # noqa: PLR2004 break release_lines = history_file_lines[history_file_lines.index('## Unreleased') + 1 : -1] while True: release_header = release_lines.pop(0) if release_header.startswith('## '): break return re.search(r'\[(.+)\]', release_header).group(1), '\n'.join(release_lines).strip()