def extract(filename, path=None, progress=False): if not path: path = tmpfile.mkdtemp(prefix="ifs") ifs = IFS(filename) ifs.extract(progress=progress, path=path) # Get file list return glob.glob(os.path.join(path, "*")), path
def create_ifs(foldername, output_filename, silent=False): if silent: old_stderr = sys.stderr sys.stderr = io.StringIO() IFS(foldername).repack(progress=False, path=output_filename) if silent: sys.stderr = old_stderr return output_filename
def extract_ifs(filename, path=None, silent=False): if not path: path = mkdtemp(prefix="ifs") # "progress" flag doesn't work properly. # It will still show the tqdm progress bar, just without # listing what files are being extracted. # To get around this, temporarily redirect stderr. # os.devnull doesn't work for this case, so use StringIO. if silent: old_stderr = sys.stderr sys.stderr = io.StringIO() IFS(filename).extract(progress=False, path=path) if silent: sys.stderr = old_stderr # Get file list return glob.glob(os.path.join(path, "*")), path
def create(foldername, output_filename, progress=False): ifs = IFS(foldername) ifs.repack(progress=progress, path=output_filename, use_cache=True) return output_filename