              state[key]["color"] = color
  
          return state
  
      def save_alignments(self, *args):
          """ Save alignments """
          if not self.state["edit"]["updated"]:
              return
          self.alignments.save()
          self.state["edit"]["updated"] = False
 
</s> remove     def reload_alignments(self, *args):
 </s> add     def reload_alignments(self, *args):  # pylint: disable=unused-argument </s> remove     def delete_alignment(self, *args):
 </s> add     def delete_alignment(self, *args):  # pylint: disable=unused-argument </s> remove             return False
        return bool(len(self.data.get(frame, list())) > 1)
 </s> add             retval = False
        else:
            retval = bool(len(self.data.get(frame, list())) > 1)
        logger.trace(retval)
        return retval </s> remove             if not is_macos:
 </s> add             if not IS_MACOS:
    def save_alignments(self, *args):  # pylint: disable=unused-argument
              state[key]["color"] = color
  
          return state
  
    def save_alignments(self, *args):  # pylint: disable=unused-argument
          """ Save alignments """
          if not self.state["edit"]["updated"]:
              return
          self.alignments.save()
          self.state["edit"]["updated"] = False
keep keep keep keep replace keep keep keep keep keep
 Logging (#541)

* Convert prints to logger. Further logging improvements. Tidy  up

* Fix system verbosity. Allow SystemExit

* Fix reload extract bug

* Child Traceback handling

* Safer shutdown procedure

* Add shutdown event to queue manager

* landmarks_as_xy > property. GUI notes + linting. Aligner bugfix

* fix FaceFilter. Enable nFilter when no Filter is supplied

* Fix blurry face filter

* Continue on IO error. Better error handling

* Explicitly print stack trace tocrash log

* Windows Multiprocessing bugfix

* Add git info and conda version to crash log

* Windows/Anaconda mp bugfix

* Logging fixes for training 
tools/lib_alignments/jobs_manual.py