## 1.5.1 ### Minor: * support parsing text encoder blocks in some new LoRAs * delete scale checker script due to user demand ### Extensions and API: * add postprocess_batch_list script callback ### Bug Fixes: * fix TI training for SD1 * fix reload altclip model error * prepend the pythonpath instead of overriding it * fix typo in SD_WEBUI_RESTARTING * if txt2img/img2img raises an exception, finally call state.end() * fix composable diffusion weight parsing * restyle Startup profile for black users * fix webui not launching with --nowebui * catch exception for non git extensions * fix some options missing from /sdapi/v1/options * fix for extension update status always saying "unknown" * fix display of extra network cards that have `<>` in the name * update lora extension to work with python 3.8 ## 1.5.0 ### Features: * SD XL support * user metadata system for custom networks * extended Lora metadata editor: set activation text, default weight, view tags, training info * Lora extension rework to include other types of networks (all that were previously handled by LyCORIS extension) * show github stars for extenstions * img2img batch mode can read extra stuff from png info * img2img batch works with subdirectories * hotkeys to move prompt elements: alt+left/right * restyle time taken/VRAM display * add textual inversion hashes to infotext * optimization: cache git extension repo information * move generate button next to the generated picture for mobile clients * hide cards for networks of incompatible Stable Diffusion version in Lora extra networks interface * skip installing packages with pip if they all are already installed - startup speedup of about 2 seconds ### Minor: * checkbox to check/uncheck all extensions in the Installed tab * add gradio user to infotext and to filename patterns * allow gif for extra network previews * add options to change colors in grid * use natural sort for items in extra networks * Mac: use empty_cache() from torch 2 to clear VRAM * added automatic support for installing the right libraries for Navi3 (AMD) * add option SWIN_torch_compile to accelerate SwinIR upscale * suppress printing TI embedding info at start to console by default * speedup extra networks listing * added `[none]` filename token. * removed thumbs extra networks view mode (use settings tab to change width/height/scale to get thumbs) * add always_discard_next_to_last_sigma option to XYZ plot * automatically switch to 32-bit float VAE if the generated picture has NaNs without the need for `--no-half-vae` commandline flag. ### Extensions and API: * api endpoints: /sdapi/v1/server-kill, /sdapi/v1/server-restart, /sdapi/v1/server-stop * allow Script to have custom metaclass * add model exists status check /sdapi/v1/options * rename --add-stop-route to --api-server-stop * add `before_hr` script callback * add callback `after_extra_networks_activate` * disable rich exception output in console for API by default, use WEBUI_RICH_EXCEPTIONS env var to enable * return http 404 when thumb file not found * allow replacing extensions index with environment variable ### Bug Fixes: * fix for catch errors when retrieving extension index #11290 * fix very slow loading speed of .safetensors files when reading from network drives * API cache cleanup * fix UnicodeEncodeError when writing to file CLIP Interrogator batch mode * fix warning of 'has_mps' deprecated from PyTorch * fix problem with extra network saving images as previews losing generation info * fix throwing exception when trying to resize image with I;16 mode * fix for #11534: canvas zoom and pan extension hijacking shortcut keys * fixed launch script to be runnable from any directory * don't add "Seed Resize: -1x-1" to API image metadata * correctly remove end parenthesis with ctrl+up/down * fixing --subpath on newer gradio version * fix: check fill size none zero when resize (fixes #11425) * use submit and blur for quick settings textbox * save img2img batch with images.save_image() * prevent running preload.py for disabled extensions * fix: previously, model name was added together with directory name to infotext and to [model_name] filename pattern; directory name is now not included ## 1.4.1 ### Bug Fixes: * add queue lock for refresh-checkpoints ## 1.4.0 ### Features: * zoom controls for inpainting * run basic torch calculation at startup in parallel to reduce the performance impact of first generation * option to pad prompt/neg prompt to be same length * remove taming_transformers dependency * custom k-diffusion scheduler settings * add an option to show selected settings in main txt2img/img2img UI * sysinfo tab in settings * infer styles from prompts when pasting params into the UI * an option to control the behavior of the above ### Minor: * bump Gradio to 3.32.0 * bump xformers to 0.0.20 * Add option to disable token counters * tooltip fixes & optimizations * make it possible to configure filename for the zip download * `[vae_filename]` pattern for filenames * Revert discarding penultimate sigma for DPM-Solver++(2M) SDE * change UI reorder setting to multiselect * read version info form CHANGELOG.md if git version info is not available * link footer API to Wiki when API is not active * persistent conds cache (opt-in optimization) ### Extensions: * After installing extensions, webui properly restarts the process rather than reloads the UI * Added VAE listing to web API. Via: /sdapi/v1/sd-vae * custom unet support * Add onAfterUiUpdate callback * refactor EmbeddingDatabase.register_embedding() to allow unregistering * add before_process callback for scripts * add ability for alwayson scripts to specify section and let user reorder those sections ### Bug Fixes: * Fix dragging text to prompt * fix incorrect quoting for infotext values with colon in them * fix "hires. fix" prompt sharing same labels with txt2img_prompt * Fix s_min_uncond default type int * Fix for #10643 (Inpainting mask sometimes not working) * fix bad styling for thumbs view in extra networks #10639 * fix for empty list of optimizations #10605 * small fixes to prepare_tcmalloc for Debian/Ubuntu compatibility * fix --ui-debug-mode exit * patch GitPython to not use leaky persistent processes * fix duplicate Cross attention optimization after UI reload * torch.cuda.is_available() check for SdOptimizationXformers * fix hires fix using wrong conds in second pass if using Loras. * handle exception when parsing generation parameters from png info * fix upcast attention dtype error * forcing Torch Version to 1.13.1 for RX 5000 series GPUs * split mask blur into X and Y components, patch Outpainting MK2 accordingly * don't die when a LoRA is a broken symlink * allow activation of Generate Forever during generation ## 1.3.2 ### Bug Fixes: * fix files served out of tmp directory even if they are saved to disk * fix postprocessing overwriting parameters ## 1.3.1 ### Features: * revert default cross attention optimization to Doggettx ### Bug Fixes: * fix bug: LoRA don't apply on dropdown list sd_lora * fix png info always added even if setting is not enabled * fix some fields not applying in xyz plot * fix "hires. fix" prompt sharing same labels with txt2img_prompt * fix lora hashes not being added properly to infotex if there is only one lora * fix --use-cpu failing to work properly at startup * make --disable-opt-split-attention command line option work again ## 1.3.0 ### Features: * add UI to edit defaults * token merging (via dbolya/tomesd) * settings tab rework: add a lot of additional explanations and links * load extensions' Git metadata in parallel to loading the main program to save a ton of time during startup * update extensions table: show branch, show date in separate column, and show version from tags if available * TAESD - another option for cheap live previews * allow choosing sampler and prompts for second pass of hires fix - hidden by default, enabled in settings * calculate hashes for Lora * add lora hashes to infotext * when pasting infotext, use infotext's lora hashes to find local loras for `` entries whose hashes match loras the user has * select cross attention optimization from UI ### Minor: * bump Gradio to 3.31.0 * bump PyTorch to 2.0.1 for macOS and Linux AMD * allow setting defaults for elements in extensions' tabs * allow selecting file type for live previews * show "Loading..." for extra networks when displaying for the first time * suppress ENSD infotext for samplers that don't use it * clientside optimizations * add options to show/hide hidden files and dirs in extra networks, and to not list models/files in hidden directories * allow whitespace in styles.csv * add option to reorder tabs * move some functionality (swap resolution and set seed to -1) to client * option to specify editor height for img2img * button to copy image resolution into img2img width/height sliders * switch from pyngrok to ngrok-py * lazy-load images in extra networks UI * set "Navigate image viewer with gamepad" option to false by default, by request * change upscalers to download models into user-specified directory (from commandline args) rather than the default models/<...> * allow hiding buttons in ui-config.json ### Extensions: * add /sdapi/v1/script-info api * use Ruff to lint Python code * use ESlint to lint Javascript code * add/modify CFG callbacks for Self-Attention Guidance extension * add command and endpoint for graceful server stopping * add some locals (prompts/seeds/etc) from processing function into the Processing class as fields * rework quoting for infotext items that have commas in them to use JSON (should be backwards compatible except for cases where it didn't work previously) * add /sdapi/v1/refresh-loras api checkpoint post request * tests overhaul ### Bug Fixes: * fix an issue preventing the program from starting if the user specifies a bad Gradio theme * fix broken prompts from file script * fix symlink scanning for extra networks * fix --data-dir ignored when launching via webui-user.bat COMMANDLINE_ARGS * allow web UI to be ran fully offline * fix inability to run with --freeze-settings * fix inability to merge checkpoint without adding metadata * fix extra networks' save preview image not adding infotext for jpeg/webm * remove blinking effect from text in hires fix and scale resolution preview * make links to `http://<...>.git` extensions work in the extension tab * fix bug with webui hanging at startup due to hanging git process ## 1.2.1 ### Features: * add an option to always refer to LoRA by filenames ### Bug Fixes: * never refer to LoRA by an alias if multiple LoRAs have same alias or the alias is called none * fix upscalers disappearing after the user reloads UI * allow bf16 in safe unpickler (resolves problems with loading some LoRAs) * allow web UI to be ran fully offline * fix localizations not working * fix error for LoRAs: `'LatentDiffusion' object has no attribute 'lora_layer_mapping'` ## 1.2.0 ### Features: * do not wait for Stable Diffusion model to load at startup * add filename patterns: `[denoising]` * directory hiding for extra networks: dirs starting with `.` will hide their cards on extra network tabs unless specifically searched for * LoRA: for the `<...>` text in prompt, use name of LoRA that is in the metdata of the file, if present, instead of filename (both can be used to activate LoRA) * LoRA: read infotext params from kohya-ss's extension parameters if they are present and if his extension is not active * LoRA: fix some LoRAs not working (ones that have 3x3 convolution layer) * LoRA: add an option to use old method of applying LoRAs (producing same results as with kohya-ss) * add version to infotext, footer and console output when starting * add links to wiki for filename pattern settings * add extended info for quicksettings setting and use multiselect input instead of a text field ### Minor: * bump Gradio to 3.29.0 * bump PyTorch to 2.0.1 * `--subpath` option for gradio for use with reverse proxy * Linux/macOS: use existing virtualenv if already active (the VIRTUAL_ENV environment variable) * do not apply localizations if there are none (possible frontend optimization) * add extra `None` option for VAE in XYZ plot * print error to console when batch processing in img2img fails * create HTML for extra network pages only on demand * allow directories starting with `.` to still list their models for LoRA, checkpoints, etc * put infotext options into their own category in settings tab * do not show licenses page when user selects Show all pages in settings ### Extensions: * tooltip localization support * add API method to get LoRA models with prompt ### Bug Fixes: * re-add `/docs` endpoint * fix gamepad navigation * make the lightbox fullscreen image function properly * fix squished thumbnails in extras tab * keep "search" filter for extra networks when user refreshes the tab (previously it showed everthing after you refreshed) * fix webui showing the same image if you configure the generation to always save results into same file * fix bug with upscalers not working properly * fix MPS on PyTorch 2.0.1, Intel Macs * make it so that custom context menu from contextMenu.js only disappears after user's click, ignoring non-user click events * prevent Reload UI button/link from reloading the page when it's not yet ready * fix prompts from file script failing to read contents from a drag/drop file ## 1.1.1 ### Bug Fixes: * fix an error that prevents running webui on PyTorch<2.0 without --disable-safe-unpickle ## 1.1.0 ### Features: * switch to PyTorch 2.0.0 (except for AMD GPUs) * visual improvements to custom code scripts * add filename patterns: `[clip_skip]`, `[hasprompt<>]`, `[batch_number]`, `[generation_number]` * add support for saving init images in img2img, and record their hashes in infotext for reproducability * automatically select current word when adjusting weight with ctrl+up/down * add dropdowns for X/Y/Z plot * add setting: Stable Diffusion/Random number generator source: makes it possible to make images generated from a given manual seed consistent across different GPUs * support Gradio's theme API * use TCMalloc on Linux by default; possible fix for memory leaks * add optimization option to remove negative conditioning at low sigma values #9177 * embed model merge metadata in .safetensors file * extension settings backup/restore feature #9169 * add "resize by" and "resize to" tabs to img2img * add option "keep original size" to textual inversion images preprocess * image viewer scrolling via analog stick * button to restore the progress from session lost / tab reload ### Minor: * bump Gradio to 3.28.1 * change "scale to" to sliders in Extras tab * add labels to tool buttons to make it possible to hide them * add tiled inference support for ScuNET * add branch support for extension installation * change Linux installation script to install into current directory rather than `/home/username` * sort textual inversion embeddings by name (case-insensitive) * allow styles.csv to be symlinked or mounted in docker * remove the "do not add watermark to images" option * make selected tab configurable with UI config * make the extra networks UI fixed height and scrollable * add `disable_tls_verify` arg for use with self-signed certs ### Extensions: * add reload callback * add `is_hr_pass` field for processing ### Bug Fixes: * fix broken batch image processing on 'Extras/Batch Process' tab * add "None" option to extra networks dropdowns * fix FileExistsError for CLIP Interrogator * fix /sdapi/v1/txt2img endpoint not working on Linux #9319 * fix disappearing live previews and progressbar during slow tasks * fix fullscreen image view not working properly in some cases * prevent alwayson_scripts args param resizing script_arg list when they are inserted in it * fix prompt schedule for second order samplers * fix image mask/composite for weird resolutions #9628 * use correct images for previews when using AND (see #9491) * one broken image in img2img batch won't stop all processing * fix image orientation bug in train/preprocess * fix Ngrok recreating tunnels every reload * fix `--realesrgan-models-path` and `--ldsr-models-path` not working * fix `--skip-install` not working * use SAMPLE file format in Outpainting Mk2 & Poorman * do not fail all LoRAs if some have failed to load when making a picture ## 1.0.0 * everything