code: def make_tmp_name(name):
      
      path, base = os.path.split(name)
      tmp_base = ".tmp-%s-%s" % (base, uuid4().hex)
      tmp_name = os.path.join(path, tmp_base)
  
      try:
          yield tmp_name
      finally:
          safe_remove(tmp_name)
docs: Generates a tmp name for a file or dir.
  
      This is a tempname that sits in the same dir as `name`. If it exists on
      disk at context exit time, it is deleted.