rename infotext.py again, this time to infotext_utils.py; I didn't realize infotext would be used for variable names in multiple places, which makes it awkward to import the module; also fix the bug I caused by this rename that breaks tests

This commit is contained in:
AUTOMATIC1111 2024-01-01 17:25:30 +03:00
parent 1ffdedc11d
commit 5d7d1823af
15 changed files with 25 additions and 25 deletions

View File

@ -1,7 +1,7 @@
import math import math
import gradio as gr import gradio as gr
from modules import scripts, shared, ui_components, ui_settings, infotext from modules import scripts, shared, ui_components, ui_settings, infotext_utils
from modules.ui_components import FormColumn from modules.ui_components import FormColumn
@ -25,7 +25,7 @@ class ExtraOptionsSection(scripts.Script):
extra_options = shared.opts.extra_options_img2img if is_img2img else shared.opts.extra_options_txt2img extra_options = shared.opts.extra_options_img2img if is_img2img else shared.opts.extra_options_txt2img
elem_id_tabname = "extra_options_" + ("img2img" if is_img2img else "txt2img") elem_id_tabname = "extra_options_" + ("img2img" if is_img2img else "txt2img")
mapping = {k: v for v, k in infotext.infotext_to_setting_name_mapping} mapping = {k: v for v, k in infotext_utils.infotext_to_setting_name_mapping}
with gr.Blocks() as interface: with gr.Blocks() as interface:
with gr.Accordion("Options", open=False, elem_id=elem_id_tabname) if shared.opts.extra_options_accordion and extra_options else gr.Group(elem_id=elem_id_tabname): with gr.Accordion("Options", open=False, elem_id=elem_id_tabname) if shared.opts.extra_options_accordion and extra_options else gr.Group(elem_id=elem_id_tabname):

View File

@ -17,7 +17,7 @@ from fastapi.encoders import jsonable_encoder
from secrets import compare_digest from secrets import compare_digest
import modules.shared as shared import modules.shared as shared
from modules import sd_samplers, deepbooru, sd_hijack, images, scripts, ui, postprocessing, errors, restart, shared_items, script_callbacks, infotext, sd_models from modules import sd_samplers, deepbooru, sd_hijack, images, scripts, ui, postprocessing, errors, restart, shared_items, script_callbacks, infotext_utils, sd_models
from modules.api import models from modules.api import models
from modules.shared import opts from modules.shared import opts
from modules.processing import StableDiffusionProcessingTxt2Img, StableDiffusionProcessingImg2Img, process_images from modules.processing import StableDiffusionProcessingTxt2Img, StableDiffusionProcessingImg2Img, process_images
@ -369,9 +369,9 @@ class Api:
if not request.infotext: if not request.infotext:
return {} return {}
possible_fields = infotext.paste_fields[tabname]["fields"] possible_fields = infotext_utils.paste_fields[tabname]["fields"]
set_fields = request.model_dump(exclude_unset=True) if hasattr(request, "request") else request.dict(exclude_unset=True) # pydantic v1/v2 have differenrt names for this set_fields = request.model_dump(exclude_unset=True) if hasattr(request, "request") else request.dict(exclude_unset=True) # pydantic v1/v2 have differenrt names for this
params = infotext.parse_generation_parameters(request.infotext) params = infotext_utils.parse_generation_parameters(request.infotext)
def get_field_value(field, params): def get_field_value(field, params):
value = field.function(params) if field.function else params.get(field.label) value = field.function(params) if field.function else params.get(field.label)
@ -408,7 +408,7 @@ class Api:
if request.override_settings is None: if request.override_settings is None:
request.override_settings = {} request.override_settings = {}
overriden_settings = infotext.get_override_settings(params) overriden_settings = infotext_utils.get_override_settings(params)
for _, setting_name, value in overriden_settings: for _, setting_name, value in overriden_settings:
if setting_name not in request.override_settings: if setting_name not in request.override_settings:
request.override_settings[setting_name] = value request.override_settings[setting_name] = value
@ -584,7 +584,7 @@ class Api:
if geninfo is None: if geninfo is None:
geninfo = "" geninfo = ""
params = infotext.parse_generation_parameters(geninfo) params = infotext_utils.parse_generation_parameters(geninfo)
script_callbacks.infotext_pasted_callback(geninfo, params) script_callbacks.infotext_pasted_callback(geninfo, params)
return models.PNGInfoResponse(info=geninfo, items=items, parameters=params) return models.PNGInfoResponse(info=geninfo, items=items, parameters=params)

View File

@ -7,7 +7,7 @@ from PIL import Image, ImageOps, ImageFilter, ImageEnhance, UnidentifiedImageErr
import gradio as gr import gradio as gr
from modules import images as imgutil from modules import images as imgutil
from modules.infotext import create_override_settings_dict, parse_generation_parameters from modules.infotext_utils import create_override_settings_dict, parse_generation_parameters
from modules.processing import Processed, StableDiffusionProcessingImg2Img, process_images from modules.processing import Processed, StableDiffusionProcessingImg2Img, process_images
from modules.shared import opts, state from modules.shared import opts, state
from modules.sd_models import get_closet_checkpoint_match from modules.sd_models import get_closet_checkpoint_match

View File

@ -2,7 +2,7 @@ import os
from PIL import Image from PIL import Image
from modules import shared, images, devices, scripts, scripts_postprocessing, ui_common from modules import shared, images, devices, scripts, scripts_postprocessing, ui_common, infotext_utils
from modules.shared import opts from modules.shared import opts
@ -86,7 +86,7 @@ def run_postprocessing(extras_mode, image, image_folder, input_dir, output_dir,
basename = '' basename = ''
forced_filename = None forced_filename = None
infotext = ", ".join([k if k == v else f'{k}: {infotext.quote(v)}' for k, v in pp.info.items() if v is not None]) infotext = ", ".join([k if k == v else f'{k}: {infotext_utils.quote(v)}' for k, v in pp.info.items() if v is not None])
if opts.enable_pnginfo: if opts.enable_pnginfo:
pp.image.info = existing_pnginfo pp.image.info = existing_pnginfo

View File

@ -16,7 +16,7 @@ from skimage import exposure
from typing import Any from typing import Any
import modules.sd_hijack import modules.sd_hijack
from modules import devices, prompt_parser, masking, sd_samplers, lowvram, infotext, extra_networks, sd_vae_approx, scripts, sd_samplers_common, sd_unet, errors, rng from modules import devices, prompt_parser, masking, sd_samplers, lowvram, infotext_utils, extra_networks, sd_vae_approx, scripts, sd_samplers_common, sd_unet, errors, rng
from modules.rng import slerp # noqa: F401 from modules.rng import slerp # noqa: F401
from modules.sd_hijack import model_hijack from modules.sd_hijack import model_hijack
from modules.sd_samplers_common import images_tensor_to_samples, decode_first_stage, approximation_indexes from modules.sd_samplers_common import images_tensor_to_samples, decode_first_stage, approximation_indexes
@ -746,7 +746,7 @@ def create_infotext(p, all_prompts, all_seeds, all_subseeds, comments=None, iter
"User": p.user if opts.add_user_name_to_info else None, "User": p.user if opts.add_user_name_to_info else None,
} }
generation_params_text = ", ".join([k if k == v else f'{k}: {infotext.quote(v)}' for k, v in generation_params.items() if v is not None]) generation_params_text = ", ".join([k if k == v else f'{k}: {infotext_utils.quote(v)}' for k, v in generation_params.items() if v is not None])
prompt_text = p.main_prompt if use_main_prompt else all_prompts[index] prompt_text = p.main_prompt if use_main_prompt else all_prompts[index]
negative_prompt_text = f"\nNegative prompt: {p.main_negative_prompt if use_main_prompt else all_negative_prompts[index]}" if all_negative_prompts[index] else "" negative_prompt_text = f"\nNegative prompt: {p.main_negative_prompt if use_main_prompt else all_negative_prompts[index]}" if all_negative_prompts[index] else ""

View File

@ -1,7 +1,7 @@
import gradio as gr import gradio as gr
from modules import scripts, sd_models from modules import scripts, sd_models
from modules.infotext import PasteField from modules.infotext_utils import PasteField
from modules.ui_common import create_refresh_button from modules.ui_common import create_refresh_button
from modules.ui_components import InputAccordion from modules.ui_components import InputAccordion

View File

@ -3,7 +3,7 @@ import json
import gradio as gr import gradio as gr
from modules import scripts, ui, errors from modules import scripts, ui, errors
from modules.infotext import PasteField from modules.infotext_utils import PasteField
from modules.shared import cmd_opts from modules.shared import cmd_opts
from modules.ui_components import ToolButton from modules.ui_components import ToolButton

View File

@ -67,14 +67,14 @@ def reload_hypernetworks():
def get_infotext_names(): def get_infotext_names():
from modules import infotext, shared from modules import infotext_utils, shared
res = {} res = {}
for info in shared.opts.data_labels.values(): for info in shared.opts.data_labels.values():
if info.infotext: if info.infotext:
res[info.infotext] = 1 res[info.infotext] = 1
for tab_data in infotext.paste_fields.values(): for tab_data in infotext_utils.paste_fields.values():
for _, name in tab_data.get("fields") or []: for _, name in tab_data.get("fields") or []:
if isinstance(name, str): if isinstance(name, str):
res[name] = 1 res[name] = 1

View File

@ -2,7 +2,7 @@ from contextlib import closing
import modules.scripts import modules.scripts
from modules import processing from modules import processing
from modules.infotext import create_override_settings_dict from modules.infotext_utils import create_override_settings_dict
from modules.shared import opts from modules.shared import opts
import modules.shared as shared import modules.shared as shared
from modules.ui import plaintext_to_html from modules.ui import plaintext_to_html

View File

@ -21,14 +21,14 @@ from modules.ui_gradio_extensions import reload_javascript
from modules.shared import opts, cmd_opts from modules.shared import opts, cmd_opts
import modules.infotext as parameters_copypaste import modules.infotext_utils as parameters_copypaste
import modules.hypernetworks.ui as hypernetworks_ui import modules.hypernetworks.ui as hypernetworks_ui
import modules.textual_inversion.ui as textual_inversion_ui import modules.textual_inversion.ui as textual_inversion_ui
import modules.textual_inversion.textual_inversion as textual_inversion import modules.textual_inversion.textual_inversion as textual_inversion
import modules.shared as shared import modules.shared as shared
from modules import prompt_parser from modules import prompt_parser
from modules.sd_hijack import model_hijack from modules.sd_hijack import model_hijack
from modules.infotext import image_from_url_text, PasteField from modules.infotext_utils import image_from_url_text, PasteField
create_setting_component = ui_settings.create_setting_component create_setting_component = ui_settings.create_setting_component

View File

@ -8,10 +8,10 @@ import gradio as gr
import subprocess as sp import subprocess as sp
from modules import call_queue, shared from modules import call_queue, shared
from modules.infotext import image_from_url_text from modules.infotext_utils import image_from_url_text
import modules.images import modules.images
from modules.ui_components import ToolButton from modules.ui_components import ToolButton
import modules.infotext as parameters_copypaste import modules.infotext_utils as parameters_copypaste
folder_symbol = '\U0001f4c2' # 📂 folder_symbol = '\U0001f4c2' # 📂
refresh_symbol = '\U0001f504' # 🔄 refresh_symbol = '\U0001f504' # 🔄

View File

@ -10,7 +10,7 @@ import json
import html import html
from fastapi.exceptions import HTTPException from fastapi.exceptions import HTTPException
from modules.infotext import image_from_url_text from modules.infotext_utils import image_from_url_text
from modules.ui_components import ToolButton from modules.ui_components import ToolButton
extra_pages = [] extra_pages = []

View File

@ -5,7 +5,7 @@ import os.path
import gradio as gr import gradio as gr
from modules import infotext, images, sysinfo, errors, ui_extra_networks from modules import infotext_utils, images, sysinfo, errors, ui_extra_networks
class UserMetadataEditor: class UserMetadataEditor:
@ -181,7 +181,7 @@ class UserMetadataEditor:
index = len(gallery) - 1 if index >= len(gallery) else index index = len(gallery) - 1 if index >= len(gallery) else index
img_info = gallery[index if index >= 0 else 0] img_info = gallery[index if index >= 0 else 0]
image = infotext.image_from_url_text(img_info) image = infotext_utils.image_from_url_text(img_info)
geninfo, items = images.read_info_from_image(image) geninfo, items = images.read_info_from_image(image)
images.save_image_with_geninfo(image, geninfo, item["local_preview"]) images.save_image_with_geninfo(image, geninfo, item["local_preview"])

View File

@ -1,6 +1,6 @@
import gradio as gr import gradio as gr
from modules import scripts, shared, ui_common, postprocessing, call_queue, ui_toprow from modules import scripts, shared, ui_common, postprocessing, call_queue, ui_toprow
import modules.infotext as parameters_copypaste import modules.infotext_utils as parameters_copypaste
def create_ui(): def create_ui():