code: def _log_unversioned(
      data: List["DataIndex"],
  ) -> Tuple[List["DataIndex"], int]:
      ret: List["DataIndex"] = []
      unversioned: List[str] = []
      for fs_index in data:
          remote = fs_index.storage_map[()].remote
          if (
              not isinstance(remote, FileStorage)
              or not remote.fs.version_aware
          ):
              ret.append(fs_index)
              continue
  
          fs = remote.fs
          index = DataIndex()
          index.storage_map = fs_index.storage_map
          for key, entry in fs_index.iteritems():
              if (
                  entry.meta
                  and not entry.meta.isdir
                  and entry.meta.version_id is None
              ):
                  unversioned.append(
                      fs.unstrip_protocol(fs.join(remote.path, *key))
                  )
              else:
                  index[key] = entry
          fs_index.close()
          ret.append(index)
  
      if unversioned:
          logger.warning(
              (
                  "Some files are missing cloud version information and will not be "
                  "fetched from the remote:\n%s"
              ),
              "\n".join(unversioned),
          )
      return ret, len(unversioned)
  
file_path: dvc/dvc/repo/fetch.py
imports: from typing import TYPE_CHECKING, List, Tuple
  from dvc.exceptions import DownloadError
  from dvc.log import logger
  from dvc.ui import ui
  from dvc_data.index import DataIndex, FileStorage
  from .None import locked
label_desc: Use image node_id 4 for calling a global function with example usage: _log_unversioned(data) and returns: ret,  len