Spaces:
Runtime error
Runtime error
import subprocess | |
import os | |
import pathlib | |
import builtins | |
def get_commit_hash(): | |
try: | |
file_path = pathlib.Path(__file__).parent | |
return subprocess.check_output( | |
[os.environ.get("GIT", "git"), "rev-parse", "HEAD"], | |
cwd=file_path, shell=False, stderr=subprocess.DEVNULL, encoding='utf8').strip()[0:8] | |
except Exception: | |
return "<none>" | |
REPOSITORY_NAME = "stable-diffusion-webui-depthmap-script" | |
SCRIPT_NAME = "DepthMap" | |
SCRIPT_VERSION = "v0.4.8" | |
SCRIPT_FULL_NAME = f"{SCRIPT_NAME} {SCRIPT_VERSION} ({get_commit_hash()})" | |
# # Returns SHA256 hash of a file | |
# import hashlib | |
# def sha256sum(filename): | |
# with open(filename, 'rb', buffering=0) as f: | |
# return hashlib.file_digest(f, 'sha256').hexdigest() | |
def ensure_file_downloaded(filename, url, sha256_hash_prefix=None): | |
import torch | |
# Do not check the hash every time - it is somewhat time-consumin | |
if os.path.exists(filename): | |
return | |
if type(url) is not list: | |
url = [url] | |
for cur_url in url: | |
try: | |
print("Downloading", cur_url, "to", filename) | |
torch.hub.download_url_to_file(cur_url, filename, sha256_hash_prefix) | |
if os.path.exists(filename): | |
return # The correct model was downloaded, no need to try more | |
except: | |
pass | |
raise RuntimeError(f'Download failed. ' | |
f'Try again later or manually download the file {filename} to location {url}.') | |