Source code for dvc.core.hash

import hashlib
from pathlib import Path


[docs]class FileHasher(): """ Hash content of any given file """
[docs] def md5(self, file_path: Path) -> str: """ Extract content from a file and hash its output :param file_path: Pathlib Path :return: string """ hash_md5 = hashlib.md5() with open(file_path, "rb") as f: for chunk in iter(lambda: f.read(4096), b""): hash_md5.update(chunk) return hash_md5.hexdigest()