def execute(self): if not super().execute(): return False archive_file = TodoFile.TodoFile(config().archive()) archive = TodoList.TodoList(archive_file.read()) last_change = ChangeSet() try: last_change.get_backup(self.todolist) last_change.apply(self.todolist, archive) archive_file.write(archive.print_todos()) last_change.delete() self.out("Successfully reverted: " + last_change.label) except (ValueError, KeyError): self.error('No backup was found for the current state of ' + config().todotxt()) last_change.close()