extract_file

Contents

extract_file#

eoio.utils.read_utils.extract_file(path: str, read_params: dict | None = None) → Tuple[str, dict | None, bool][source]#

Extracts data from file indicated by path

If path_extracted already exists, its contents are checked against the archive’s own member list (see _extraction_is_complete()) before it’s trusted – a directory that merely exists isn’t proof a previous extraction actually finished: an interrupted extraction (killed process, OOM, disk full, …) leaves exactly that (a real, existing, but incomplete directory), which a bare os.path.exists check can’t tell apart from a genuinely complete one. An incomplete extraction is removed and re-extracted from scratch rather than trusted, so a partial local copy doesn’t get silently, permanently treated as complete.

Parameters:
  • path – path to data

  • read_params – dictionary of parameters for reading data

Returns:

Tuple of extracted path, updated read_params, and extraction flag.