      def get_missing_frames(self):
          """ yield each frame in alignments that does
              not have a matching file """
          self.output_message = "Missing frames that are in alignments file"
          frames = [item["frame_fullname"] for item in self.items]
          for frame in tqdm(self.alignments.data.keys(), desc=self.output_message):
              if frame not in frames:
                  logger.debug("Returning: '%s'", frame)
                  yield frame
  
 
</s> remove         exclude_filetypes = ["yaml", "yml", "p", "json", "txt"]
 </s> add         exclude_filetypes = set(["yaml", "yml", "p", "json", "txt"]) </s> remove             if not self.alignments.hashes_to_frame.get(f_hash, None):
 </s> add             if f_hash not in hashes_to_frame: </s> remove                          for frame, idx in self.alignments.hashes_to_frame[f_hash].items()]
 </s> add                          for frame, idx in hashes_to_frame[f_hash].items()]
        frames = set([item["frame_fullname"] for item in self.items])
      def get_missing_frames(self):
          """ yield each frame in alignments that does
              not have a matching file """
          self.output_message = "Missing frames that are in alignments file"
        frames = set([item["frame_fullname"] for item in self.items])
          for frame in tqdm(self.alignments.data.keys(), desc=self.output_message):
              if frame not in frames:
                  logger.debug("Returning: '%s'", frame)
                  yield frame
  
keep keep keep keep replace keep keep keep keep keep
 Multiple Tools->Alignmet speed ups (#785) 
tools/lib_alignments/jobs.py