#!/usr/bin/env python3 """ Generates a more user-readable changelog from changelog.yaml. """ import textwrap import yaml with open("changelog.yaml", "r") as f: data = yaml.safe_load(f) print("Changelog") print("---------") print() print("") print() for version in data.keys(): date = data[version]["date"] changes = data[version]["changes"] print(f"**{version} ({date})**") print() if "description" in data[version]: description = data[version]["description"].strip() for line in textwrap.wrap(description, 80): print(line) print() for c in changes: lines = textwrap.wrap(c, 78) initial = True for line in lines: if initial: print("* " + line) initial = False else: print(" " + line) print()