INNER CODE UNIT · Python
removed
lissy93/portainer-templates · lib/changelog.py:93
removed = sorted(old.keys() - new.keys())
renamed = match_renames(old, new, added, removed)
updated = []
for title in sorted(new.keys() & old.keys()):
if new[title] != old[title]:
fields = sorted(k for k in new[title].keys() | old[title].keys()
if new[title].get(k) != old[title].get(k))
updated.append({'title': title, 'fields': fields})
return added, removed, renamed, updated
def renames_between(old_tag, previous, new_tag):
"""Every rename step from old_tag to new_tag, one tag at a time. A release spans
several tags, and a title renamed twice only matches up when each hop is paired."""
chain = {}
for tag in semver_tags():
if not version(old_tag) < version(tag) <= version(new_tag):
continue
current = templates_at(tag)