  
  def _faceswap_logrecord(*args, **kwargs):
      """ Add a flag to :class:`logging.LogRecord` to not strip formatting from particular
      records. """
      record = _old_factory(*args, **kwargs)
      record.strip_spaces = True
      return record
  
  
  logging.setLogRecordFactory(_faceswap_logrecord)
 
</s> remove _old_factory = logging.getLogRecordFactory()
 </s> add _OLD_FACTORY = logging.getLogRecordFactory() </s> remove         if "\n" in record.message or "\r" in record.message:
 </s> add         if record.levelno < 30 and ("\n" in record.message or "\r" in record.message): </s> remove         if any(char in package for char in (" ", "<", ">", "*", "|")):
            package = "\"{}\"".format(package)
 </s> add         cuda_cudnn = None
    record = _OLD_FACTORY(*args, **kwargs)
  
  def _faceswap_logrecord(*args, **kwargs):
      """ Add a flag to :class:`logging.LogRecord` to not strip formatting from particular
      records. """
    record = _OLD_FACTORY(*args, **kwargs)
      record.strip_spaces = True
      return record
  
  
  logging.setLogRecordFactory(_faceswap_logrecord)
keep keep keep keep replace keep keep keep keep keep
 Update to TF2.3 (#1100)

* Minimum requirements to tf2.3.
  - Handle upgrades for Windows users with tf2.2 installed by Pip
  - Handle windows upgrade from pip tf2.2
  - Explicitly install Cuda for Conda installs

* Update tensorflow errors api reference
* Suppress AutoGraph warning messages
* Update GUI Stats to work with tf2.3
* Fix live graph for tf2.3
* DSSIMObjective - autoGraph bugfix
* Update Travis test 
lib/logger.py