From ce2a42ca131dd96783484b77f3a3fec2519aac25 Mon Sep 17 00:00:00 2001 From: JeLuF Date: Thu, 25 May 2023 20:18:19 +0200 Subject: [PATCH 01/66] Update "How to install and run.txt" --- How to install and run.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/How to install and run.txt b/How to install and run.txt index e48d217c..705c34f4 100644 --- a/How to install and run.txt +++ b/How to install and run.txt @@ -5,10 +5,10 @@ If you haven't downloaded Stable Diffusion UI yet, please download from https:// After downloading, to install please follow these instructions: For Windows: -- Please double-click the "Start Stable Diffusion UI.cmd" file inside the "stable-diffusion-ui" folder. +- Please double-click the "Easy-Diffusion-Windows.exe" file and follow the instructions. For Linux: -- Please open a terminal, and go to the "stable-diffusion-ui" directory. Then run ./start.sh +- Please open a terminal, unzip the Easy-Diffusion-Linux.zip file and go to the "easy-diffusion" directory. Then run ./start.sh That file will automatically install everything. After that it will start the Stable Diffusion interface in a web browser. @@ -21,4 +21,4 @@ If you have any problems, please: 3. Or, file an issue at https://github.com/cmdr2/stable-diffusion-ui/issues Thanks -cmdr2 (and contributors to the project) \ No newline at end of file +cmdr2 (and contributors to the project) From a2856b2b77d55d1e58048674914747c562d31768 Mon Sep 17 00:00:00 2001 From: cmdr2 Date: Thu, 8 Jun 2023 16:47:50 +0530 Subject: [PATCH 02/66] Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 6a629e57..7c2981b3 100644 --- a/README.md +++ b/README.md @@ -23,6 +23,7 @@ Click the download button for your operating system: - Minimum 8 GB of system RAM. - Atleast 25 GB of space on the hard disk. + The installer will take care of whatever is needed. If you face any problems, you can join the friendly [Discord community](https://discord.com/invite/u9yhsFmEkB) and ask for assistance. ## On Windows: From 656acafed3ba40ce1fc1a57067cae911565e3eef Mon Sep 17 00:00:00 2001 From: cmdr2 Date: Fri, 30 Jun 2023 09:52:10 +0530 Subject: [PATCH 03/66] Don't read config.yaml just yet in the main branch --- scripts/get_config.py | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/scripts/get_config.py b/scripts/get_config.py index 9cdfb2fe..a468d906 100644 --- a/scripts/get_config.py +++ b/scripts/get_config.py @@ -4,7 +4,7 @@ import sys # The config file is in the same directory as this script config_directory = os.path.dirname(__file__) -config_yaml = os.path.join(config_directory, "config.yaml") +# config_yaml = os.path.join(config_directory, "config.yaml") config_json = os.path.join(config_directory, "config.json") parser = argparse.ArgumentParser(description='Get values from config file') @@ -16,15 +16,16 @@ parser.add_argument('key', metavar='key', nargs='+', args = parser.parse_args() -if os.path.isfile(config_yaml): - import yaml - with open(config_yaml, 'r') as configfile: - try: - config = yaml.safe_load(configfile) - except Exception as e: - print(e, file=sys.stderr) - config = {} -elif os.path.isfile(config_json): +# if os.path.isfile(config_yaml): +# import yaml +# with open(config_yaml, 'r') as configfile: +# try: +# config = yaml.safe_load(configfile) +# except Exception as e: +# print(e, file=sys.stderr) +# config = {} +# el +if os.path.isfile(config_json): import json with open(config_json, 'r') as configfile: try: From cf87c34befa7ece1361b67142b8ebaea9d518bcc Mon Sep 17 00:00:00 2001 From: cmdr2 Date: Fri, 30 Jun 2023 15:53:54 +0530 Subject: [PATCH 04/66] Allow main to switch back from yaml to json config files --- ui/easydiffusion/app.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/ui/easydiffusion/app.py b/ui/easydiffusion/app.py index 38e3392c..7e9e7890 100644 --- a/ui/easydiffusion/app.py +++ b/ui/easydiffusion/app.py @@ -100,7 +100,22 @@ def init(): def getConfig(default_val=APP_CONFIG_DEFAULTS): try: config_json_path = os.path.join(CONFIG_DIR, "config.json") - if not os.path.exists(config_json_path): + + # compatibility with upcoming yaml changes, switching from beta to main + config_yaml_path = os.path.join(CONFIG_DIR, "config.yaml") + if os.path.exists(config_yaml_path): + try: + import yaml + + with open(config_yaml_path, "r", encoding="utf-8") as f: + config = yaml.safe_load(f) + + setConfig(config) # save to config.json + os.remove(config_yaml_path) # delete the yaml file + except: + log.warn(traceback.format_exc()) + config = default_val + elif not os.path.exists(config_json_path): config = default_val else: with open(config_json_path, "r", encoding="utf-8") as f: From 3120b593c67071a56d7b1c71f06656ff83fc3f03 Mon Sep 17 00:00:00 2001 From: cmdr2 Date: Fri, 30 Jun 2023 16:30:29 +0530 Subject: [PATCH 05/66] Handle the legacy yaml config path --- ui/easydiffusion/app.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/ui/easydiffusion/app.py b/ui/easydiffusion/app.py index 7e9e7890..3beabbb7 100644 --- a/ui/easydiffusion/app.py +++ b/ui/easydiffusion/app.py @@ -102,7 +102,13 @@ def getConfig(default_val=APP_CONFIG_DEFAULTS): config_json_path = os.path.join(CONFIG_DIR, "config.json") # compatibility with upcoming yaml changes, switching from beta to main - config_yaml_path = os.path.join(CONFIG_DIR, "config.yaml") + config_yaml_path = os.path.join(CONFIG_DIR, "..", "config.yaml") + + # migrate the old config yaml location + config_legacy_yaml = os.path.join(CONFIG_DIR, "config.yaml") + if os.path.isfile(config_legacy_yaml): + shutil.move(config_legacy_yaml, config_yaml_path) + if os.path.exists(config_yaml_path): try: import yaml From 788404f66ac59ca547d6cf498362687c6467e62b Mon Sep 17 00:00:00 2001 From: cmdr2 Date: Wed, 12 Jul 2023 10:29:19 +0530 Subject: [PATCH 06/66] Update README.md --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 7c2981b3..a0c7be1a 100644 --- a/README.md +++ b/README.md @@ -11,9 +11,9 @@ Does not require technical knowledge, does not require pre-installed software. 1 Click the download button for your operating system:

- - - + + +

**Hardware requirements:** From 710208f3768077aabccbeaaee9d93356a91573fa Mon Sep 17 00:00:00 2001 From: cmdr2 Date: Wed, 19 Jul 2023 23:33:57 +0530 Subject: [PATCH 07/66] Update README.md --- README.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/README.md b/README.md index a0c7be1a..3a38f15d 100644 --- a/README.md +++ b/README.md @@ -132,6 +132,15 @@ We could really use help on these aspects (click to view tasks that need your he If you have any code contributions in mind, please feel free to say Hi to us on the [discord server](https://discord.com/invite/u9yhsFmEkB). We use the Discord server for development-related discussions, and for helping users. +# Credits +* Stable Diffusion: https://github.com/Stability-AI/stablediffusion +* CodeFormer: https://github.com/sczhou/CodeFormer (license: https://github.com/sczhou/CodeFormer/blob/master/LICENSE) +* GFPGAN: https://github.com/TencentARC/GFPGAN +* RealESRGAN: https://github.com/xinntao/Real-ESRGAN +* k-diffusion: https://github.com/crowsonkb/k-diffusion +* Code contributors and artists on the cmdr2 UI: https://github.com/cmdr2/stable-diffusion-ui and Discord (https://discord.com/invite/u9yhsFmEkB) +* Lots of contributors on the internet + # Disclaimer The authors of this project are not responsible for any content generated using this interface. From 47d7513dd87e815696a43d6cfe00ef2fdb7e3354 Mon Sep 17 00:00:00 2001 From: cmdr2 Date: Mon, 31 Jul 2023 12:54:05 +0530 Subject: [PATCH 08/66] sdkit 1.0.152 - fix for black images with TensorRT, and enable a timing cache --- scripts/check_modules.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/check_modules.py b/scripts/check_modules.py index bad46943..e4c59407 100644 --- a/scripts/check_modules.py +++ b/scripts/check_modules.py @@ -18,7 +18,7 @@ os_name = platform.system() modules_to_check = { "torch": ("1.11.0", "1.13.1", "2.0.0"), "torchvision": ("0.12.0", "0.14.1", "0.15.1"), - "sdkit": "1.0.151", + "sdkit": "1.0.152", "stable-diffusion-sdkit": "2.1.4", "rich": "12.6.0", "uvicorn": "0.19.0", From 8538a684e7396ad3d236959d7668a1eea9339213 Mon Sep 17 00:00:00 2001 From: cmdr2 Date: Mon, 31 Jul 2023 13:19:56 +0530 Subject: [PATCH 09/66] sdkit 1.0.153 - use TensorRT only if enabled in the UI --- scripts/check_modules.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/check_modules.py b/scripts/check_modules.py index e4c59407..d5886a9a 100644 --- a/scripts/check_modules.py +++ b/scripts/check_modules.py @@ -18,7 +18,7 @@ os_name = platform.system() modules_to_check = { "torch": ("1.11.0", "1.13.1", "2.0.0"), "torchvision": ("0.12.0", "0.14.1", "0.15.1"), - "sdkit": "1.0.152", + "sdkit": "1.0.153", "stable-diffusion-sdkit": "2.1.4", "rich": "12.6.0", "uvicorn": "0.19.0", From a70a795662c8aa9a9f7de4439fa3dfcfc48fcb4a Mon Sep 17 00:00:00 2001 From: JeLuF Date: Mon, 31 Jul 2023 23:35:49 +0200 Subject: [PATCH 10/66] add croppr --- 3rd-PARTY-LICENSES | 28 ++++++++++++++++++++++++++++ ui/index.html | 31 +++++++++++++++++++++++++++++++ ui/media/css/croppr.css | 1 + ui/media/css/main.css | 26 ++++++++++++++++++++++++++ ui/media/js/croppr.js | 1 + ui/media/js/main.js | 35 ++++++++++++++++++++++++----------- 6 files changed, 111 insertions(+), 11 deletions(-) create mode 100644 ui/media/css/croppr.css create mode 100755 ui/media/js/croppr.js diff --git a/3rd-PARTY-LICENSES b/3rd-PARTY-LICENSES index bd29393a..78bfe3bb 100644 --- a/3rd-PARTY-LICENSES +++ b/3rd-PARTY-LICENSES @@ -712,3 +712,31 @@ FileSaver.js is licensed under the MIT license: SOFTWARE. [1]: http://eligrey.com + +croppr.js +========= +https://github.com/jamesssooi/Croppr.js + +croppr.js is licensed under the MIT license: + + MIT License + + Copyright (c) 2017 James Ooi + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. diff --git a/ui/index.html b/ui/index.html index 0fcb807d..de4273aa 100644 --- a/ui/index.html +++ b/ui/index.html @@ -18,12 +18,14 @@ + +
@@ -630,6 +632,35 @@
+ +
+
+

Use as thumbnail

+ Use a pictures as thumbnail for embeddings, LORAs, etc. +
+
+ +
+
+
+
+
+ +
+
+

Use the thumbnail for …

+ +
+
+ + +
+
+
+
+