aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--javascript/edit-order.js2
-rw-r--r--modules/api/api.py4
-rw-r--r--modules/processing.py2
-rw-r--r--modules/sd_models.py11
-rw-r--r--modules/shared.py1
-rw-r--r--modules/ui_extensions.py17
6 files changed, 26 insertions, 11 deletions
diff --git a/javascript/edit-order.js b/javascript/edit-order.js
index ad983d33..e6e73937 100644
--- a/javascript/edit-order.js
+++ b/javascript/edit-order.js
@@ -6,7 +6,7 @@ function keyupEditOrder(event) {
let target = event.originalTarget || event.composedPath()[0];
if (!target.matches("*:is([id*='_toprow'] [id*='_prompt'], .prompt) textarea")) return;
if (!event.altKey) return;
- event.preventDefault()
+ event.preventDefault();
let isLeft = event.key == "ArrowLeft";
let isRight = event.key == "ArrowRight";
diff --git a/modules/api/api.py b/modules/api/api.py
index 224bbfc6..5793bb44 100644
--- a/modules/api/api.py
+++ b/modules/api/api.py
@@ -22,7 +22,7 @@ from modules.textual_inversion.textual_inversion import create_embedding, train_
from modules.textual_inversion.preprocess import preprocess
from modules.hypernetworks.hypernetwork import create_hypernetwork, train_hypernetwork
from PIL import PngImagePlugin,Image
-from modules.sd_models import checkpoints_list, unload_model_weights, reload_model_weights, checkpoint_alisases
+from modules.sd_models import checkpoints_list, unload_model_weights, reload_model_weights, checkpoint_aliases
from modules.sd_vae import vae_dict
from modules.sd_models_config import find_checkpoint_config_near_filename
from modules.realesrgan_model import get_realesrgan_models
@@ -519,7 +519,7 @@ class Api:
def set_config(self, req: Dict[str, Any]):
checkpoint_name = req.get("sd_model_checkpoint", None)
- if checkpoint_name is not None and checkpoint_name not in checkpoint_alisases:
+ if checkpoint_name is not None and checkpoint_name not in checkpoint_aliases:
raise RuntimeError(f"model {checkpoint_name!r} not found")
for k, v in req.items():
diff --git a/modules/processing.py b/modules/processing.py
index 21d1492c..cd568a20 100644
--- a/modules/processing.py
+++ b/modules/processing.py
@@ -606,7 +606,7 @@ def process_images(p: StableDiffusionProcessing) -> Processed:
try:
# if no checkpoint override or the override checkpoint can't be found, remove override entry and load opts checkpoint
- if sd_models.checkpoint_alisases.get(p.override_settings.get('sd_model_checkpoint')) is None:
+ if sd_models.checkpoint_aliases.get(p.override_settings.get('sd_model_checkpoint')) is None:
p.override_settings.pop('sd_model_checkpoint', None)
sd_models.reload_model_weights()
diff --git a/modules/sd_models.py b/modules/sd_models.py
index 653c4cc0..060e0007 100644
--- a/modules/sd_models.py
+++ b/modules/sd_models.py
@@ -23,7 +23,8 @@ model_dir = "Stable-diffusion"
model_path = os.path.abspath(os.path.join(paths.models_path, model_dir))
checkpoints_list = {}
-checkpoint_alisases = {}
+checkpoint_aliases = {}
+checkpoint_alisases = checkpoint_aliases # for compatibility with old name
checkpoints_loaded = collections.OrderedDict()
@@ -66,7 +67,7 @@ class CheckpointInfo:
def register(self):
checkpoints_list[self.title] = self
for id in self.ids:
- checkpoint_alisases[id] = self
+ checkpoint_aliases[id] = self
def calculate_shorthash(self):
self.sha256 = hashes.sha256(self.filename, f"checkpoint/{self.name}")
@@ -112,7 +113,7 @@ def checkpoint_tiles():
def list_models():
checkpoints_list.clear()
- checkpoint_alisases.clear()
+ checkpoint_aliases.clear()
cmd_ckpt = shared.cmd_opts.ckpt
if shared.cmd_opts.no_download_sd_model or cmd_ckpt != shared.sd_model_file or os.path.exists(cmd_ckpt):
@@ -136,7 +137,7 @@ def list_models():
def get_closet_checkpoint_match(search_string):
- checkpoint_info = checkpoint_alisases.get(search_string, None)
+ checkpoint_info = checkpoint_aliases.get(search_string, None)
if checkpoint_info is not None:
return checkpoint_info
@@ -166,7 +167,7 @@ def select_checkpoint():
"""Raises `FileNotFoundError` if no checkpoints are found."""
model_checkpoint = shared.opts.sd_model_checkpoint
- checkpoint_info = checkpoint_alisases.get(model_checkpoint, None)
+ checkpoint_info = checkpoint_aliases.get(model_checkpoint, None)
if checkpoint_info is not None:
return checkpoint_info
diff --git a/modules/shared.py b/modules/shared.py
index 48478a68..b7518de6 100644
--- a/modules/shared.py
+++ b/modules/shared.py
@@ -391,6 +391,7 @@ options_templates.update(options_section(('system', "System"), {
"print_hypernet_extra": OptionInfo(False, "Print extra hypernetwork information to console."),
"list_hidden_files": OptionInfo(True, "Load models/files in hidden directories").info("directory is hidden if its name starts with \".\""),
"disable_mmap_load_safetensors": OptionInfo(False, "Disable memmapping for loading .safetensors files.").info("fixes very slow loading speed in some cases"),
+ "github_proxy": OptionInfo("None", "Github proxy", ui_components.DropdownEditable, lambda: {"choices": ["None", "ghproxy.com", "hub.yzuu.cf", "hub.njuu.cf", "hub.nuaa.cf"]}).info("for custom inputs will just replace github.com with the input"),
}))
options_templates.update(options_section(('training', "Training"), {
diff --git a/modules/ui_extensions.py b/modules/ui_extensions.py
index dff522ef..a208012d 100644
--- a/modules/ui_extensions.py
+++ b/modules/ui_extensions.py
@@ -325,6 +325,17 @@ def normalize_git_url(url):
return url
+def github_proxy(url):
+ proxy = shared.opts.github_proxy
+
+ if proxy == 'None':
+ return url
+ if proxy == 'ghproxy.com':
+ return "https://ghproxy.com/" + url
+
+ return url.replace('github.com', proxy)
+
+
def install_extension_from_url(dirname, url, branch_name=None):
check_access()
@@ -335,6 +346,8 @@ def install_extension_from_url(dirname, url, branch_name=None):
assert url, 'No URL specified'
+ url = github_proxy(url)
+
if dirname is None or dirname == "":
*parts, last_part = url.split('/')
last_part = normalize_git_url(last_part)
@@ -354,12 +367,12 @@ def install_extension_from_url(dirname, url, branch_name=None):
shutil.rmtree(tmpdir, True)
if not branch_name:
# if no branch is specified, use the default branch
- with git.Repo.clone_from(url, tmpdir, filter=['blob:none']) as repo:
+ with git.Repo.clone_from(url, tmpdir, filter=['blob:none'], verbose=False) as repo:
repo.remote().fetch()
for submodule in repo.submodules:
submodule.update()
else:
- with git.Repo.clone_from(url, tmpdir, filter=['blob:none'], branch=branch_name) as repo:
+ with git.Repo.clone_from(url, tmpdir, filter=['blob:none'], branch=branch_name, verbose=False) as repo:
repo.remote().fetch()
for submodule in repo.submodules:
submodule.update()