code: def _valid_designspace(self, designspace):
          
          # TODO: (jany) really make a copy to avoid modifying the original object
          copy = designspace
          # Load only full UFO masters, sparse or "brace" layer sources are assumed
          # to point to existing layers within one of the full masters.
          for source in (s for s in copy.sources if not s.layerName):
              if not hasattr(source, "font") or source.font is None:
                  if source.path:
                      # FIXME: (jany) consider not changing the caller's objects
                      source.font = defcon.Font(source.path)
                  else:
                      dirname = os.path.dirname(designspace.path)
                      ufo_path = os.path.join(dirname, source.filename)
                      source.font = defcon.Font(ufo_path)
              if source.location is None:
                  source.location = {}
              for name in ("familyName", "styleName"):
                  if getattr(source, name) != getattr(source.font.info, name):
                      self.logger.warning(
                          dedent(
                              """\
                      The {name} is different between the UFO and the designspace source:
                          source filename: {filename}
                          source {name}: {source_name}
                          ufo {name}: {ufo_name}
  
                      The UFO name will be used.
                      """
                          ).format(
                              name=name,
                              filename=source.filename,
                              source_name=getattr(source, name),
                              ufo_name=getattr(source.font.info, name),
                          )
                      )
                      setattr(source, name, getattr(source.font.info, name))
          return copy
docs: Make sure that the user-provided designspace has loaded fonts and
          that names are the same as those from the UFOs.