docs: def checksum(path, hashfunc='md5'):
      """
      Return checksum given by path. Wildcards can be used in check sum. Function is strongly
      dependent on checksumdir package by 'cakepietoast'.
  
      :param path:
      :param hashfunc:
      :return:
      """
      import checksumdir
      hash_func = checksumdir.HASH_FUNCS.get(hashfunc)
      if not hash_func:
          raise NotImplementedError('{} not implemented.'.format(hashfunc))
  
      if os.path.isdir(path):
          return checksumdir.dirhash(path, hashfunc=hashfunc)
  
      hashvalues = []
      path_list = glob.glob(path)
      logger.debug("path_list " + str(path_list))
      for path in path_list:
          if os.path.isfile(path):
              hashvalues.append(checksumdir._filehash(path, hashfunc=hash_func))
      logger.debug(str(hashvalues))
      hash = checksumdir._reduce_hash(hashvalues, hashfunc=hash_func)
      return hash