mirror of
https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
synced 2025-08-04 11:12:35 +00:00
load extensions' git metadata in parallel to loading the main program to save a ton of time during startup
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
import json
|
||||
import os.path
|
||||
import sys
|
||||
import threading
|
||||
import time
|
||||
from datetime import datetime
|
||||
import traceback
|
||||
@@ -484,11 +485,18 @@ def refresh_available_extensions_from_data(hide_tags, sort_column, filter_text="
|
||||
return code, list(tags)
|
||||
|
||||
|
||||
def preload_extensions_git_metadata():
|
||||
for extension in extensions.extensions:
|
||||
extension.read_info_from_repo()
|
||||
|
||||
|
||||
def create_ui():
|
||||
import modules.ui
|
||||
|
||||
config_states.list_config_states()
|
||||
|
||||
threading.Thread(target=preload_extensions_git_metadata).start()
|
||||
|
||||
with gr.Blocks(analytics_enabled=False) as ui:
|
||||
with gr.Tabs(elem_id="tabs_extensions"):
|
||||
with gr.TabItem("Installed", id="installed"):
|
||||
@@ -508,7 +516,8 @@ def create_ui():
|
||||
</span>
|
||||
"""
|
||||
info = gr.HTML(html)
|
||||
extensions_table = gr.HTML(lambda: extension_table())
|
||||
extensions_table = gr.HTML('Loading...')
|
||||
ui.load(fn=extension_table, inputs=[], outputs=[extensions_table])
|
||||
|
||||
apply.click(
|
||||
fn=apply_and_restart,
|
||||
@@ -595,7 +604,8 @@ def create_ui():
|
||||
config_save_button = gr.Button(value="Save Current Config")
|
||||
|
||||
config_states_info = gr.HTML("")
|
||||
config_states_table = gr.HTML(lambda: update_config_states_table("Current"))
|
||||
config_states_table = gr.HTML("Loading...")
|
||||
ui.load(fn=update_config_states_table, inputs=[config_states_list], outputs=[config_states_table])
|
||||
|
||||
config_save_button.click(fn=save_config_state, inputs=[config_save_name], outputs=[config_states_list, config_states_info])
|
||||
|
||||
@@ -608,4 +618,5 @@ def create_ui():
|
||||
outputs=[config_states_table],
|
||||
)
|
||||
|
||||
|
||||
return ui
|
||||
|
Reference in New Issue
Block a user