From cae0d83e6ea11a67ad0b383b5132a72beceb1e9a Mon Sep 17 00:00:00 2001 From: Toke Stuart Jepsen Date: Fri, 21 May 2021 08:31:17 +0100 Subject: [PATCH] More failsafes prevent errored runs. - Ensure `file_path_base` item are in list before removing. - Ensure there is `data` to process. --- pype/plugins/global/load/delete_old_versions.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/pype/plugins/global/load/delete_old_versions.py b/pype/plugins/global/load/delete_old_versions.py index b5044b6bac4..5485d7973f2 100644 --- a/pype/plugins/global/load/delete_old_versions.py +++ b/pype/plugins/global/load/delete_old_versions.py @@ -126,7 +126,8 @@ def delete_only_repre_files(self, dir_paths, file_paths, delete=True): os.remove(file_path) self.log.debug("Removed file: {}".format(file_path)) - remainders.remove(file_path_base) + if file_path_base in remainders: + remainders.remove(file_path_base) continue seq_path_base = os.path.split(seq_path)[1] @@ -419,6 +420,9 @@ def load(self, contexts, name=None, namespace=None, options=None): data = self.get_data(context, versions_to_keep) + if not data: + continue + size += self.main(data, remove_publish_folder) print("Progressing {}/{}".format(count + 1, len(contexts))) @@ -446,9 +450,6 @@ class CalculateOldVersions(DeleteOldVersions): def main(self, data, remove_publish_folder): size = 0 - if not data: - return size - if remove_publish_folder: size = self.delete_whole_dir_paths( data["dir_paths"].values(), delete=False