Merge branch 'feature/use-consistent-file-name-in-gradio' into jpg_config_image_extension

# Conflicts:
#	modules/async_worker.py
#	modules/private_logger.py
This commit is contained in:
Manuel Schmid 2024-01-14 21:47:05 +01:00
commit dc6c02540a
No known key found for this signature in database
GPG Key ID: 32C4F7569B40B84B
5 changed files with 26 additions and 15 deletions

View File

@ -1,5 +1,7 @@
import ldm_patched.modules.args_parser as args_parser
import os
from tempfile import gettempdir
args_parser.parser.add_argument("--share", action='store_true', help="Set whether to share on Gradio.")
args_parser.parser.add_argument("--preset", type=str, default=None, help="Apply specified UI preset.")
@ -34,7 +36,11 @@ args_parser.args.always_offload_from_vram = not args_parser.args.disable_offload
if args_parser.args.disable_analytics:
import os
os.environ["GRADIO_ANALYTICS_ENABLED"] = "False"
if args_parser.args.disable_in_browser:
args_parser.args.in_browser = False
if args_parser.args.temp_path is None:
args_parser.args.temp_path = os.path.join(gettempdir(), 'Fooocus')
args = args_parser.args

View File

@ -112,10 +112,7 @@ parser.add_argument("--is-windows-embedded-python", action="store_true")
parser.add_argument("--disable-server-info", action="store_true")
if ldm_patched.modules.options.args_parsing:
args = parser.parse_args([])
else:
args = parser.parse_args([])
args = parser.parse_args([])
if args.is_windows_embedded_python:
args.in_browser = True

View File

@ -513,8 +513,8 @@ def worker():
if direct_return:
d = [('Upscale (Fast)', '2x')]
log(uov_input_image, d, image_extension)
yield_result(async_task, uov_input_image, do_not_show_finished_images=True)
uov_input_image_path = log(uov_input_image, d, image_extension)
yield_result(async_task, uov_input_image_path, do_not_show_finished_images=True)
return
tiled = True
@ -776,6 +776,7 @@ def worker():
if inpaint_worker.current_task is not None:
imgs = [inpaint_worker.current_task.post_process(x) for x in imgs]
img_paths = []
for x in imgs:
d = [
('Prompt', task['log_positive_prompt']),
@ -801,9 +802,9 @@ def worker():
if n != 'None':
d.append((f'LoRA {li + 1}', f'{n} : {w}'))
d.append(('Version', 'v' + fooocus_version.version))
log(x, d, image_extension)
img_paths.append(log(x, d, image_extension))
yield_result(async_task, imgs, do_not_show_finished_images=len(tasks) == 1)
yield_result(async_task, img_paths, do_not_show_finished_images=len(tasks) == 1)
except ldm_patched.modules.model_management.InterruptProcessingException as e:
if shared.last_stop == 'skip':
print('User skipped')

View File

@ -6,7 +6,7 @@ import urllib.parse
from PIL import Image
from modules.util import generate_temp_filename
from tempfile import gettempdir
log_cache = {}
@ -19,14 +19,16 @@ def get_current_html_path(image_extension=None):
return html_name
def log(img, dic, image_extension=None):
if args_manager.args.disable_image_log:
return
def log(img, dic, image_extension=None) -> str:
path_outputs = args_manager.args.temp_path if args_manager.args.disable_image_log else modules.config.path_outputs
_image_extension = image_extension if image_extension else modules.config.default_image_extension
date_string, local_temp_filename, only_name = generate_temp_filename(folder=modules.config.path_outputs, extension=_image_extension)
date_string, local_temp_filename, only_name = generate_temp_filename(folder=path_outputs, extension=_image_extension)
os.makedirs(os.path.dirname(local_temp_filename), exist_ok=True)
Image.fromarray(img).save(local_temp_filename)
if args_manager.args.disable_image_log:
return local_temp_filename
html_name = os.path.join(os.path.dirname(local_temp_filename), 'log.html')
css_styles = (
@ -107,4 +109,4 @@ def log(img, dic, image_extension=None):
log_cache[html_name] = middle_part
return
return local_temp_filename

View File

@ -71,6 +71,11 @@ def generate_clicked(*args):
gr.update(visible=True, value=product)
finished = True
# delete Fooocus temp images, only keep gradio temp images
if args_manager.args.disable_image_log:
for filepath in product:
os.remove(filepath)
execution_time = time.perf_counter() - execution_start_time
print(f'Total time: {execution_time:.2f} seconds')
return