* Fix typo
* Scan wildcards recursively
Adds a method for getting the top-most occurrence of a given file in a directory tree
* Use already existing method for locating files
* Fix issue with incorrect files being loaded
When using the `name-filter` parameter in `get_model_filenames`, it doesn't guarantee the best match to be in the first index. This change adds a step to ensure the correct wildcard is being loaded.
* feat: make path for wildcards configurable, cache filenames on refresh files, rename button variable
* Fix formatting
---------
Co-authored-by: Manuel Schmid <manuel.schmid@odt.net>
* Add docker files
* Add python precompiled cache file in the image
* Add Notes in docker.md
* Create docker-publish.yml
* Modify docker-compose.yml not to use the bind mount
* Update torch version
* Change --share to --listen
* Update torch version
* Change '--share' to '--listen`
* adjust code comments
* Update requirements-docker.txt
* chore: code cleanup
- default_model env var isn't necessary as model is included in default preset, same for speed
- ENV CMDARGS --listen is now synched with docker-compose.yml file
- remove
* Change entry_with_update.py to launch.py in entrypoint.sh
* Change CMD in Dockerfile
* Change default CMDARGS to --listen in Dockerfile
* Modify CMD in Dockerfile
* Fix docker-compose.yml
* Import files from models,outputs
* docs: change wording in docker.md, change git clone URL, add quotes to port mapping
* docs: remove docker publish github action, remove pre-built image from docs
* Modify modules versions for linux/arm64
* docs: update docker readme
---------
Co-authored-by: Manuel Schmid <9307310+mashb1t@users.noreply.github.com>
Co-authored-by: Manuel Schmid <dev@mash1t.de>
Co-authored-by: Manuel Schmid <manuel.schmid@odt.net>
* feat: add metadata logging for images
inspired by https://github.com/MoonRide303/Fooocus-MRE
* feat: add config and checkbox for save_metadata_to_images
* feat: add argument disable_metadata
* feat: add support for A1111 metadata schema
cf2772fab0/modules/processing.py (L672)
* feat: add model hash support for a1111
* feat: use resolved prompts with included expansion and styles for a1111 metadata
* fix: code cleanup and resolved prompt fixes
* feat: add config metadata_created_by
* fix: use stting isntead of quote wrap for A1111 created_by
* fix: correctlyy hide/show metadata schema on app start
* fix: do not generate hashes when arg --disable-metadata is used
* refactor: rename metadata_schema to metadata_scheme
* fix: use pnginfo "parameters" insteadf of "Comments"
see https://github.com/RupertAvery/DiffusionToolkit/issues/202 and cf2772fab0/modules/processing.py (L939)
* feat: add resolved prompts to metadata
* fix: use correct default value in metadata check for created_by
* wip: add metadata mapping, reading and writing
applying data after reading currently not functional for A1111
* feat: rename metadata tab and import button label
* feat: map basic information for scheme A1111
* wip: optimize handling for metadata in Gradio calls
* feat: add enums for Performance, Steps and StepsUOV
also move MetadataSchema enum to prevent circular dependency
* fix: correctly map resolution, use empty styles for A1111
* chore: code cleanup
* feat: add A1111 prompt style detection
only detects one style as Fooocus doesn't wrap {prompt} with the whole style, but has a separate prompt string for each style
* wip: add prompt style extraction for A1111 scheme
* feat: sort styles after metadata import
* refactor: use central flag for LoRA count
* refactor: use central flag for ControlNet image count
* fix: use correct LoRA mapping, add fallback for backwards compatibility
* feat: add created_by again
* feat: add prefix "Fooocus" to version
* wip: code cleanup, update todos
* fix: use correct order to read LoRA in meta parser
* wip: code cleanup, update todos
* feat: make sha256 with length 10 default
* feat: add lora handling to A1111 scheme
* feat: override existing LoRA values when importing, would cause images to differ
* fix: correctly extract prompt style when only prompt expansion is selected
* feat: allow model / LoRA loading from subfolders
* feat: code cleanup, do not queue metadata preview on image upload
* refactor: add flag for refiner_swap_method
* feat: add metadata handling for all non-img2img parameters
* refactor: code cleanup
* chore: use str as return type in calculate_sha256
* feat: add hash cache to metadata
* chore: code cleanup
* feat: add method get_scheme to Metadata
* fix: align handling for scheme Fooocus by removing lcm lora from json parsing
* refactor: add step before parsing to set data in parser
- add constructor for MetadataSchema class
- remove showable and copyable from log output
- add functional hash cache (model hashing takes about 5 seconds, only required once per model, using hash lazy loading)
* feat: sort metadata attributes before writing to image
* feat: add translations and hint for image prompt parameters
* chore: check and remove ToDo's
* refactor: merge metadata.py into meta_parser.py
* fix: add missing refiner in A1111 parse_json
* wip: add TODO for ultiline prompt style resolution
* fix: remove sorting for A1111, change performance key position
fixes https://github.com/lllyasviel/Fooocus/pull/1940#issuecomment-1924444633
* fix: add workaround for multiline prompts
* feat: add sampler mapping
* feat: prevent config reset by renaming metadata_scheme to match config options
* chore: remove remaining todos after analysis
refiner is added when set
restoring multiline prompts has been resolved by using separate parameters "raw_prompt" and "raw_negative_prompt"
* chore: specify too broad exception types
* feat: add mapping for _gpu samplers to cpu samplers
gpu samplers are less deterministic than cpu but in general similar, see https://www.reddit.com/r/comfyui/comments/15hayzo/comment/juqcpep/
* feat: add better handling for image import with empty metadata
* fix: parse adaptive_cfg as float instead of string
* chore: loosen strict type for parse_json, fix indent
* chore: make steps enums more strict
* feat: only override steps if metadata value is not in steps enum or in steps enum and performance is not the same
* fix: handle empty strings in metadata
e.g. raw negative prompt when none is set
* Add ability to load checkpoints and loras from multiple locations
* Found another location a default path is required
* feat: use array as default
---------
Co-authored-by: Manuel Schmid <manuel.schmid@odt.net>
* add suffix ordinals with lambda
* delay importing of modules.config (#2195)
* refactor: use easier to read version to find matching ordinal suffix
---------
Co-authored-by: rsl8 <138326583+rsl8@users.noreply.github.com>
Co-authored-by: Manuel Schmid <manuel.schmid@odt.net>
Co-authored-by: Manuel Schmid <9307310+mashb1t@users.noreply.github.com>
### 1.0.16
* Implemented "output" folder for saving user results.
* Ignored cv2 errors when preview fails.
* Mentioned future AMD support in Readme.
* Created this log.