Just a quick thought; maybe it would be good to do a separate iteration over versions to set the property `fullname` to the default value if it isn't already set.
Then, when we compute previous, we can do version[sorted_versions[-2]]['fullname']. Otherwise it would sometimes produce a wrong name.
Originally posted by @mbuechse in #823 (comment)