They create dependency loops:
digest_{i+1} = checksum(file with digest_i)
With the old way, exiting after
$ hk.py -c 'new_playlist --output_playlist mylist'
-c 'glob_curves_to_playlist ...*.curve'
-c 'save_playlist --output mylist' -p
would complain of unsaved playlists.
self._relative_curve_paths = self.relative_curve_paths
self.update_curve_paths()
self._relative_curve_paths = rcp
-
+ digest = self._digest
+ self._digest = None # don't save the digest (recursive file).
yaml_string = yaml.dump(self, allow_unicode=True)
+ self._digest = digest
self.update_curve_paths()
return ('# Hooke playlist version %s\n' % self.version) + yaml_string