This release expands layer merging capabilities in the Canvas and makes a number of other fixes and enhancements.
Layer Merging
We've expanded layer merging capabilities to all layer types and made one change to the existing Merge Visible
operation.
Merge Down (new)
The selected layer and the one immediately below it are merged into a single layer. The two input layers are deleted as part of this process.
Merge Visible (changed)
Previously, in Invoke, Merge Visible
deleted all the layers that were merged together.
This has been changed to match image editors like Affinity Photo and PS, where the merged layer is added as a new layer, leaving all other layers untouched.
Merging Regional Guidance
When merging Regional Guidance
, the resultant merged Regional Guidance
has no prompt or reference image. It's not possible to merge those settings. Keep this in mind when doing a Merge Down
, which will delete the two input Regional Guidance
layers.
Merging Control Layers
When merging Control Layers
, the resultant merged Control Layer
has no model or control settings. Like Regional Guidance
, it's not possible to merge the settings, and Merge Down
will delete the two input layers.
Control Layers
require some special handling. For example, we display them with a "transparency effect" to help you visualize how they stack up. When merging them, we first apply a similar effect to the layer. Specifically, we use the "lighter" blend mode, optimizing for control images with black backgrounds.
All Changes
Enhancements
- Layer merging improvements.
- Updated "What's New" popover.
Inpaint Mask
andRegional Guidance
may be saved to assets.- Support for HF tokens in the model manager UI. This prepares Invoke's MM for SD3.5, which requires you to authenticate with HF to download the model. You can paste your token into the MM to allow the the model to download, instead of needing to configure it with the HF CLI.
- Add a safeguard for invocation classes, requiring they implement the
invoke
method and have a correct output annotation.
Fixes
- Canvas alerts prevent clicks on the metadata viewer tabs.
Save as
-ing a Filtered layer may result in the wrong image data being used during generation.- More resilient Filter handling.
- SDXL T2I OpenPose model gets input images with the correct channel order, which makes this model work correctly. Thanks @dunkeroni!
- T2I Adapters now work with any output size supported by the main model. Previously, they required output sizes to be in multiples of 32 or 64. Thanks @dunkeroni!
- Recall of seamless metadata settings. Thanks @rikublock!
- Fixed broken link in installer. Thanks @hippalectryon-0!
- Fixed (another) broken link in installer. Thanks @ventureOptimism!
Internal
- Bump
diffusers
,accelerate
andhuggingface-hub
dependencies to latest versions. - Refactored
CanvasCompositorModule
to support new merge capabilities. - Remove version pins for several packages including torch and numpy. This is in preparation for an updated installer and also makes it easier for advanced users to customize the versions of various packages.
- Canvas inpaint and outpaint graphs output one less intermediate image, saving one expensive PNG encode (and your disk space).
- Added caches for generation mode calculations in Canvas, providing a substantial reduction in intermediate images created and faster Invoke-to-Queue times.
Docs
- Updated
patchmatch
docs. Thanks @nirmal0001! - Updated FAQ. Thanks @JPPhoto!
- Updated dev docs. Thanks @hippalectryon-0!
Translations
- Updated German. Thanks @rikublock & @Atalanttore!
- Updated Chinese (Simplified). Thanks @qyouqme & @youo0o0!
- Updated Italian. Thanks @Harvester62 & @dakota2472!
- Updated French. Thanks @Ery4z!
Installation and Updating
To install or update, download the latest installer and follow the installation instructions
To update, select the same installation location. Your user data (images, models, etc) will be retained.
What's Changed
- fix(ui): canvas alerts blocking metadata panel by @psychedelicious in #7210
- Bump
diffusers
version (andaccelerate
,hugginface-hub
) by @RyanJDick in #7174 - feat(ui): canvas graph improvements by @psychedelicious in #7218
- Fix SDXL t2i adapters expect BGR instead of RGB by @dunkeroni in #7205
- fix(ui): recall seamless settings by @rikublock in #7217
- feat(ui): update announcements for v5.3.0 by @maryhipp in #7221
- fix(ui): canvas filter and SAM module fixes by @psychedelicious in #7224
- feat(ui): canvas entity merging by @psychedelicious in #7219
- chore: bump version to v5.3.1rc1 by @psychedelicious in #7225
- fix(ui): compositor not setting processing flag when cleaning up by @psychedelicious in #7227
- fix(nodes): nodes denylist handling by @psychedelicious in #7235
- feat(ui,api): support for HF tokens in UI, handle Unauthorized and Forbidden responses from HF by @maryhipp in #7201
- Update patchmatch.md by @nirmal0001 in #7165
- Update FAQ.md by @JPPhoto in #6801
- Fix link in dev docs by @hippalectryon-0 in #7200
- feat(nodes): add validation for invoke method return types by @psychedelicious in #6279
- refactor(ui): layer interaction locking by @psychedelicious in #7234
- ui: translations update from weblate by @weblate in #7166
- feat(ui): filter/select-object do not exit on save-as by @psychedelicious in #7238
- fix broken link in installer by @hippalectryon-0 in #7211
- Adjust pins for torch, numpy, other dependencies by @ebr in #7232
- fix(ui): add missing translations by @psychedelicious in #7237
- removing periods from update link to prevent page not found error by @ventureOptimism in #6526
- fix(ui): canvas misc bugs by @psychedelicious in #7244
- Make T2I Adapters work with any resolution supported by the models by @dunkeroni in #7215
- chore: bump version to v5.3.1 by @psychedelicious in #7245
New Contributors
- @nirmal0001 made their first contribution in #7165
- @ventureOptimism made their first contribution in #6526
Full Changelog: v5.3.0...v5.3.1