Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v2.5.0 Update #165

Merged
merged 551 commits into from
Oct 5, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
551 commits
Select commit Hold shift + click to select a range
8e5148c
Merge branch 'main' into inference
ionite34 Sep 12, 2023
954493f
Add debug only code timer
ionite34 Sep 12, 2023
f2afcad
Add syntax highlight to help dialog
ionite34 Sep 12, 2023
cce94d4
Fix connect errors for blank port config
ionite34 Sep 13, 2023
119e7b2
Add ItemsRepeaterArrangeAnimation
ionite34 Sep 13, 2023
d12e1c7
Add faster memory based image indexing
ionite34 Sep 13, 2023
25a6ea2
Add dock control recycling
ionite34 Sep 14, 2023
99425d4
Add dragging images to load project state
ionite34 Sep 14, 2023
ce9f8db
Merge branch 'main' into inference
ionite34 Sep 14, 2023
6be449b
Add image searching
ionite34 Sep 14, 2023
5593820
Update inference states on model index changes
ionite34 Sep 14, 2023
de35004
Handle drops onto the folder card itself
ionite34 Sep 14, 2023
f837be0
Remove duplicate package refs
ionite34 Sep 14, 2023
11cb46a
Abstract common generation functionality to InferenceGenerationViewMo…
ionite34 Sep 14, 2023
a40ee8f
Remove duplicate package ref
ionite34 Sep 14, 2023
fdea007
Add Upscale page
ionite34 Sep 14, 2023
6ec10ce
Fix numeric syntax for lora weights
ionite34 Sep 15, 2023
f5bb13e
Add Sharpen to Upscale page
ionite34 Sep 15, 2023
eb7cc28
Merge branch 'main' into inference
ionite34 Sep 15, 2023
a0e45ef
Merge branch 'main' into inference
ionite34 Sep 15, 2023
823e300
Merge branch 'main' into inference
ionite34 Sep 16, 2023
d0d5fbd
Add CloseOnClickOutside option to BetterContentDialog
ionite34 Sep 16, 2023
44c6049
Use CloseOnClickOutside for ImageViewerDialog
ionite34 Sep 16, 2023
e7e98c0
Add client name
ionite34 Sep 16, 2023
6c3ead0
Add width and height to generation params
ionite34 Sep 16, 2023
1d784b3
Add GetImageSize to PngDataHelper
mohnjiles Sep 16, 2023
0d78574
Merge remote-tracking branch 'origin/inference' into inference
mohnjiles Sep 16, 2023
a993c75
Move GetImageSize to ImageMetadata class
ionite34 Sep 16, 2023
a76ba90
Add LocalImageFile.ImageSize
ionite34 Sep 16, 2023
060f907
Add details footer to ImageViewerDialog
ionite34 Sep 16, 2023
5a0bbb8
Add image viewer footer,
ionite34 Sep 16, 2023
8ad7ee2
Merge branch 'main' into inference
ionite34 Sep 16, 2023
93c0d6a
Fix metadata write byte count discrepancy
ionite34 Sep 17, 2023
fc13133
Add directional navigation to image viewer
ionite34 Sep 18, 2023
aa46d51
Persist zoom and offsets when changing images
ionite34 Sep 18, 2023
f951bff
Add right and left keys for navigation
ionite34 Sep 18, 2023
b4ef786
Reenable preloading for InferencePage
ionite34 Sep 18, 2023
3a6ede2
Add generation teaching tip for image viewer
ionite34 Sep 18, 2023
d95145b
Add editor context menu
ionite34 Sep 18, 2023
4555bca
Add shift+delete alias for cut
ionite34 Sep 18, 2023
07012be
Fix infobar visuals and button to toggle open state
ionite34 Sep 18, 2023
c714439
Version bump
ionite34 Sep 18, 2023
f49b143
Merge branch 'main' into inference
ionite34 Sep 18, 2023
9419f10
Version bump
ionite34 Sep 18, 2023
5f14da5
Add shift+insert alias for paste
ionite34 Sep 18, 2023
1ac441e
Move editor flyouts to shared resource dictionary
ionite34 Sep 18, 2023
b7d2ff7
Move shared properties setting to be after librarydir set
ionite34 Sep 19, 2023
0b4a749
Merge branch 'main' into inference
ionite34 Sep 19, 2023
3017ca4
LibraryDir safety checks on init
ionite34 Sep 19, 2023
a2a0078
Add model directory exist checks before index
ionite34 Sep 19, 2023
1d3bb70
Improve scaling of image viewer dialog
ionite34 Sep 19, 2023
f0c8649
Fix gallery flickering with opaque acrylic material
ionite34 Sep 19, 2023
66ca2f8
Add dock view state save/load from vm
ionite34 Sep 20, 2023
e4203ec
Fix event attachment
ionite34 Sep 20, 2023
bda1f03
Merge branch 'main' into inference
ionite34 Sep 20, 2023
7762a72
Add copy option for json dialog
ionite34 Sep 21, 2023
71e9fe0
Add remote upscaler downloads
ionite34 Sep 21, 2023
016fae2
Fix Api Error when using extra networks with nested paths
ionite34 Sep 21, 2023
bb5c029
Add more default remote upscalers
ionite34 Sep 21, 2023
93e0160
Merge branch 'main' into inference
ionite34 Sep 21, 2023
c6dbaeb
Add downloadservice GetFileSizeAsync
ionite34 Sep 21, 2023
3784b78
Add Label_License localized resource
ionite34 Sep 21, 2023
c3b4f5a
Add confirm dialog for model downloads
ionite34 Sep 21, 2023
c1dcd5b
Merge branch 'inference' of https://github.com/ionite34/StabilityMatr…
ionite34 Sep 21, 2023
7335825
Fix context action
ionite34 Sep 21, 2023
487bc0d
Fix license link roots
ionite34 Sep 21, 2023
1acd2a2
Fix relative uri joining
ionite34 Sep 22, 2023
7653b59
Create dependabot.yml
ionite34 Sep 22, 2023
ef09df2
Merge pull request #253 from ionite34/add-dependabot
ionite34 Sep 22, 2023
6a7042d
Bump MSTest.TestAdapter from 3.0.4 to 3.1.1
dependabot[bot] Sep 22, 2023
20b422f
Merge pull request #257 from ionite34/dependabot/nuget/MSTest.TestAda…
ionite34 Sep 22, 2023
c02d28a
Bump Semver from 3.0.0-beta.0 to 3.0.0-beta.1
dependabot[bot] Sep 22, 2023
66f0773
Bump FluentIcons.Avalonia from 1.1.207 to 1.1.217
dependabot[bot] Sep 22, 2023
8dfe4c1
Merge pull request #256 from ionite34/dependabot/nuget/Semver-3.0.0-b…
ionite34 Sep 22, 2023
4ae6184
Merge branch 'main' into dependabot/nuget/FluentIcons.Avalonia-1.1.217
mohnjiles Sep 22, 2023
3166bf5
Update FluentIcons.FluentAvalonia
ionite34 Sep 22, 2023
5084d83
Merge pull request #255 from ionite34/dependabot/nuget/FluentIcons.Av…
ionite34 Sep 22, 2023
8184a3a
Bump Microsoft.NET.Test.Sdk from 17.6.3 to 17.7.2
dependabot[bot] Sep 22, 2023
f0e71ee
Merge pull request #254 from ionite34/dependabot/nuget/Microsoft.NET.…
ionite34 Sep 22, 2023
f466df2
Fix extra network suggest syntax
ionite34 Sep 22, 2023
50b12dd
Refactor suggestion triggers
ionite34 Sep 22, 2023
1786450
Remove comma completion accept
ionite34 Sep 22, 2023
499baa2
Add clipboard file setting extensions
ionite34 Sep 22, 2023
975711d
Fix clipboard file setting in ImageFolderCard vm
ionite34 Sep 22, 2023
56d2104
Nullable fixes
ionite34 Sep 22, 2023
f825d53
Support for type-based completions without tags
ionite34 Sep 22, 2023
8b6ba5f
Check ShouldIgnoreReleases in GetAllVersionOptions
ionite34 Sep 23, 2023
508e4e4
Merge pull request #259 from ionite34/fix-comfy-oneclickinstall
ionite34 Sep 23, 2023
3a2f638
Merge branch 'main' into inference
ionite34 Sep 23, 2023
a6cbbfd
Move load share property before client set in case of error
ionite34 Sep 23, 2023
336ad61
Add force open one click install argument
ionite34 Sep 23, 2023
dfcc183
Add BasePackage.IsInferenceCompatible
ionite34 Sep 23, 2023
717129c
Version bump
ionite34 Sep 23, 2023
c85bcc9
Fix connection order
ionite34 Sep 23, 2023
601b8ff
Use inner exceptions for relay notification errors
ionite34 Sep 23, 2023
f5a54c8
Fix HybridModelFile path keys for nested folders
ionite34 Sep 23, 2023
d8bdb87
Add copy menu option for image thumbnails
ionite34 Sep 23, 2023
1c82215
Update FluentAvaloniaUI
ionite34 Sep 23, 2023
f2d01ef
Update StabilityMatrix.sln.DotSettings
ionite34 Sep 23, 2023
d7f8b55
Add Paginator control
ionite34 Sep 23, 2023
a0d7f6d
Fix model index to support custom folders
ionite34 Sep 23, 2023
32f8523
Add changelog
ionite34 Sep 23, 2023
df6c4a0
Merge branch 'main' into update-deps
ionite34 Sep 23, 2023
ab8ef07
Merge pull request #260 from ionite34/update-deps
ionite34 Sep 23, 2023
51bc463
Completion performance improvements
ionite34 Sep 23, 2023
ed57544
Fix completion window not closing
ionite34 Sep 23, 2023
ee7dd7c
Completion improvements
ionite34 Sep 23, 2023
fc86ee9
misc fixes:
mohnjiles Sep 24, 2023
cacd437
Merge branch 'main' into misc-fixes
mohnjiles Sep 24, 2023
08c52f0
Merge pull request #261 from ionite34/misc-fixes
mohnjiles Sep 24, 2023
f1517e3
Added ability to switch between Shared Folder strategies
mohnjiles Sep 24, 2023
043a4b8
Merge pull request #262 from ionite34/add-model-folder-option
mohnjiles Sep 24, 2023
d69513f
Use opaque background
ionite34 Sep 24, 2023
3867bca
Handle model indexing errors
ionite34 Sep 24, 2023
1524fe3
Add teaching tip for inference compatible packages
ionite34 Sep 24, 2023
052f7aa
Improve tab loading performance
ionite34 Sep 24, 2023
95affba
Add launch dialog on generate when not connected
ionite34 Sep 24, 2023
5da3062
Remove 2 column gallery limit
ionite34 Sep 24, 2023
7d8516a
Add dark border style
ionite34 Sep 24, 2023
7b06ff6
Added Favorite button to model browser cards, moved the Open in Civit…
mohnjiles Sep 25, 2023
caf1d15
Merge pull request #263 from ionite34/model-browser-favorites
mohnjiles Sep 25, 2023
2ca2fa4
Merge branch 'main' into inference
ionite34 Sep 25, 2023
09da3d1
Improve apc encoding with json
ionite34 Sep 25, 2023
268e256
Add debug save screenshot on F10
ionite34 Sep 25, 2023
bc40e57
Add changelog for inference
ionite34 Sep 25, 2023
3b836d7
Remove typo
ionite34 Sep 25, 2023
bffb216
Merge pull request #185 from ionite34/inference
ionite34 Sep 25, 2023
ec4cc9b
Set default shared folder option if package was installed before we s…
mohnjiles Sep 25, 2023
fb625ba
also show notification if no favorites & try to sort by favorites
mohnjiles Sep 25, 2023
bfcff93
don't set package model settings if no library dir
mohnjiles Sep 25, 2023
cd143a4
Add names for image folder panel
ionite34 Sep 25, 2023
d486ee4
Add copy button on ImageViewerDialog
ionite34 Sep 25, 2023
35f02a7
Remove comment
ionite34 Sep 25, 2023
62a3b4f
Merge pull request #264 from ionite34/set-default-shared-folder-option
mohnjiles Sep 25, 2023
d3d1583
Merge branch 'main' into fixes
ionite34 Sep 25, 2023
3795a88
Move delete above copy
ionite34 Sep 25, 2023
dc534aa
Merge pull request #265 from ionite34/fixes
ionite34 Sep 25, 2023
ccfa62c
Let launch page setup model links
ionite34 Sep 25, 2023
87dc303
Remove duplicate log filter
ionite34 Sep 25, 2023
ba520fd
Correct return type for StartAnsiProcess overload
ionite34 Sep 25, 2023
6b46053
Filter WebsocketClient errors for sentry
ionite34 Sep 25, 2023
3a9e045
Check package is not unknown for shared folder options
ionite34 Sep 25, 2023
6f1319e
Only update active installed package if invalid
ionite34 Sep 25, 2023
7354f5a
Venv Setup console output and cancellation
ionite34 Sep 25, 2023
cd978d2
SetupVenv pass through onConsoleOutput
ionite34 Sep 25, 2023
b2ec0a5
More logging for package import setups
ionite34 Sep 25, 2023
005ddec
Add console output for venv setups
ionite34 Sep 25, 2023
289ea55
Add fix changelog
ionite34 Sep 25, 2023
97e0900
Merge pull request #267 from ionite34/shared-folder-fixes
ionite34 Sep 25, 2023
f3fb9fd
Bump Dock.Model.Avalonia from 11.0.0.1 to 11.0.0.2
dependabot[bot] Sep 25, 2023
a9b0a96
Merge pull request #269 from ionite34/dependabot/nuget/Dock.Model.Ava…
ionite34 Sep 25, 2023
766ec80
Sort models alphabetically
ionite34 Sep 26, 2023
eb5c3e9
- Rearranged data directory dialog a little bit
mohnjiles Sep 27, 2023
f77ce9c
i18n
mohnjiles Sep 27, 2023
1a7b4e4
Merge pull request #273 from ionite34/updated-data-directory-dialog
mohnjiles Sep 27, 2023
70143a0
Merge branch 'main' into updates
ionite34 Sep 27, 2023
09520a5
Remove redundant CompileBindings
ionite34 Sep 27, 2023
d617a9a
Add update available teaching tip
ionite34 Sep 27, 2023
717c10b
Make StabilityMatrix.Avalonia internals visible to tests
ionite34 Sep 27, 2023
60a497d
Preloading and better parsing for UpdateViewModel
ionite34 Sep 27, 2023
8d4edbd
Add UpdateViewModel tests
ionite34 Sep 27, 2023
52b8dfe
Ignore null when writing settings
ionite34 Sep 27, 2023
db8a1de
Preload update dialog when showing
ionite34 Sep 27, 2023
1af0106
Localize more of UpdateDialog
ionite34 Sep 27, 2023
5aa2e5d
Improve changelog parse to include current version in prerelease
ionite34 Sep 27, 2023
d6765c7
Fix design data for updateviewmodel
ionite34 Sep 27, 2023
2ca5443
Use async void for update dialog showing
ionite34 Sep 27, 2023
2297e4d
Create update temp folder as hidden
ionite34 Sep 27, 2023
651f015
Update localization resources
ionite34 Sep 27, 2023
d78e7bf
Use filled icon for nav item update button
ionite34 Sep 27, 2023
898426a
Wrap exception details
ionite34 Sep 27, 2023
06b3d65
Update CHANGELOG.md
ionite34 Sep 27, 2023
863c944
Show app startup time in logs
ionite34 Sep 28, 2023
15734ca
Merge pull request #274 from ionite34/updates
ionite34 Sep 28, 2023
a62c093
Add metadata parsing from FilePath
ionite34 Sep 28, 2023
598371e
Add Sampler Scheduler conversions
ionite34 Sep 28, 2023
e2e85c6
Add save load support for files with GenerationParameters
ionite34 Sep 28, 2023
9622316
Add to abbreviation dictionary
ionite34 Sep 28, 2023
7ca106f
Check stream length to fix value errors
ionite34 Sep 28, 2023
8274add
Error handling for file metadata parsing
ionite34 Sep 28, 2023
74f4d6e
Use GenerationParametersConvert for samplers
ionite34 Sep 28, 2023
4bf22ae
Add restore dock layout menu option
ionite34 Sep 28, 2023
5054536
Version bump
ionite34 Sep 28, 2023
3a55b79
Merge pull request #275 from ionite34/inference-metadata
ionite34 Sep 28, 2023
f670ee8
Update AsyncImageLoader.Avalonia to 3.2.1
ionite34 Sep 28, 2023
50dd75d
Fix refiner vae not set for custom vaes
ionite34 Sep 29, 2023
254e04e
Merge pull request #277 from ionite34/fix-vae
ionite34 Sep 29, 2023
7ecec63
Merge branch 'main' into update-asyncimageloader
ionite34 Sep 29, 2023
c1d90f0
Merge pull request #276 from ionite34/update-asyncimageloader
ionite34 Sep 29, 2023
871e53e
Nullability warning fixes
ionite34 Sep 29, 2023
8613ec1
Add TemplatedControlBase
ionite34 Sep 29, 2023
3742bc6
Fix gallery DataContext binding when floated
ionite34 Sep 29, 2023
bd50cb7
Simplify UserControlBase events
ionite34 Sep 29, 2023
dcbfb60
Remove unused class
ionite34 Sep 29, 2023
99b78e9
Remove unused class
ionite34 Sep 29, 2023
dd6b8a0
More nullable fixes
ionite34 Sep 29, 2023
e4a2b7e
Add FreeU option to text2img
ionite34 Sep 29, 2023
10e1833
Version bump
ionite34 Sep 29, 2023
33f16cc
Merge pull request #278 from ionite34/fixes
ionite34 Sep 29, 2023
38be8da
Remove double logging in DataStoreLoggerTarget
ionite34 Sep 30, 2023
cd8d781
Ignore websocket errors for sentry
ionite34 Sep 30, 2023
66a394b
Some cleanup
ionite34 Sep 30, 2023
8f4536e
Add Italian language option
ionite34 Oct 1, 2023
6b8b8de
Handle errors in interrupt prompt
ionite34 Oct 1, 2023
3b5691c
Allow spaces in extra network tokens
ionite34 Oct 1, 2023
ed31e76
Move registration dispose to finally
ionite34 Oct 1, 2023
af88003
Check inferenceoutput link before making
ionite34 Oct 2, 2023
b13f9e6
Fix directory check target
ionite34 Oct 2, 2023
14bfb9e
Fix symlink logic
ionite34 Oct 2, 2023
dd39428
Add progress reporting for running node changed events
ionite34 Oct 2, 2023
b2f0329
Actually subscribe the event handler
ionite34 Oct 2, 2023
e68a851
Add indeterminate bindings to progress bars
ionite34 Oct 2, 2023
48b81af
Fix interrupt handler disposed too early
ionite34 Oct 2, 2023
3604ab2
Merge pull request #279 from ionite34/fixes
ionite34 Oct 2, 2023
026e9bd
Fix shared folder link ending early
ionite34 Oct 2, 2023
626e343
Formatting cleanup
ionite34 Oct 2, 2023
98b50be
Fix progress total captured variable
ionite34 Oct 2, 2023
3ddadbb
Refactor nullability
ionite34 Oct 2, 2023
50a9104
Simplify and improve safety of shared folder links
ionite34 Oct 2, 2023
be46508
Update README images and translations
ionite34 Oct 2, 2023
717f722
Improve progress change behavior
ionite34 Oct 3, 2023
d5b1d62
Add auto download of default tag completion sources
ionite34 Oct 3, 2023
9ca11f8
Add completion setup on settings load
ionite34 Oct 3, 2023
d568c83
Fix light theme in first time setup
ionite34 Oct 3, 2023
dfe1a59
Enable PublishReadyToRun for releases
ionite34 Oct 3, 2023
7622017
Add changelog for 026e9bd
ionite34 Oct 3, 2023
e6c1968
Fix extra proportional dock splitters causing errors
ionite34 Oct 3, 2023
9466405
Merge pull request #281 from ionite34/improvements
ionite34 Oct 3, 2023
18354c7
Update README with Inference info
ionite34 Oct 3, 2023
044ec5e
Add PipInstallFromRequirements
ionite34 Oct 4, 2023
0b6e2f1
Improve image indexing speed
ionite34 Oct 4, 2023
27e2e82
Fix comfy requirements install
ionite34 Oct 4, 2023
13c2ed9
Update Resources.ja-JP.resx
ionite34 Oct 4, 2023
9b3cfde
Fix PipInstallFromRequirements
ionite34 Oct 4, 2023
f2c78ca
Update requirements install for A3, Foocus, Mre
ionite34 Oct 4, 2023
0ccb749
Merge pull request #282 from ionite34/docs
ionite34 Oct 4, 2023
23c055d
Fix README conflicts
ionite34 Oct 4, 2023
be6e652
Merge branch 'main' into main
ionite34 Oct 4, 2023
1ece86e
Cleanup async tasks to task returns
ionite34 Oct 4, 2023
d2e201e
Add `SplitLines` string extension
ionite34 Oct 4, 2023
c9065db
Fix line splitting in PipInstallFromRequirements
ionite34 Oct 4, 2023
41f0801
Version bump to release
ionite34 Oct 4, 2023
6432edb
Fix torch install to pin 2.0.1
ionite34 Oct 4, 2023
e01ac46
Formatting
ionite34 Oct 4, 2023
7b8cc5b
Fix torchvision version specifier
ionite34 Oct 4, 2023
e0df26e
Fix match regex
ionite34 Oct 4, 2023
388f36d
Add exists check to IsSymbolic link
ionite34 Oct 4, 2023
72c149a
fix missing continue
ionite34 Oct 4, 2023
a23229a
Merge pull request #283 from ionite34/fixes
ionite34 Oct 4, 2023
e798a7c
Merge branch 'main' of https://github.com/LykosAI/StabilityMatrix-Dev
ionite34 Oct 4, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
7 changes: 5 additions & 2 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
root = true
root = true

[*.cs]
max_line_length = 100
max_line_length = 120
csharp_style_var_for_built_in_types = true
dotnet_sort_system_directives_first = true

# ReSharper properties
resharper_csharp_max_line_length = 120
6 changes: 6 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
version: 2
updates:
- package-ecosystem: "nuget"
directory: "/"
schedule:
interval: "weekly"
3 changes: 2 additions & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,7 @@ jobs:
-o out -c Release -r ${{ env.platform-id }}
-p:Version=$env:RELEASE_VERSION
-p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true
-p:PublishReadyToRun=true
-p:SentryOrg=${{ secrets.SENTRY_ORG }} -p:SentryProject=${{ secrets.SENTRY_PROJECT }}
-p:SentryUploadSymbols=true -p:SentryUploadSources=true

Expand Down Expand Up @@ -197,4 +198,4 @@ jobs:
tag_name: v${{ github.event.inputs.version }}
body: ${{ steps.release_notes.outputs.release_notes }}
draft: ${{ github.event.inputs.github-release-draft == 'true' }}
prerelease: ${{ github.event.inputs.github-release-prerelease == 'true' }}
prerelease: ${{ github.event.inputs.github-release-prerelease == 'true' }}
19 changes: 19 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,25 @@ All notable changes to Stability Matrix will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning 2.0](https://semver.org/spec/v2.0.0.html).

## v2.5.0
### Added
- Added Inference, a built-in native Stable Diffusion interface, powered by ComfyUI
- Added option to change the Shared Folder method for packages using the three-dots menu on the Packages page
- Added the ability to Favorite models in the Model Browser
- Added "Favorites" sort option to the Model Browser
- Added notification flyout for new available updates. Dismiss to hide until the next update version.
### Changed
- Model Browser page size is now 20 instead of 14
- Update changelog now only shows the difference between the current version and the latest version
### Fixed
- Fixed [#141](https://github.com/LykosAI/StabilityMatrix/issues/141) - Search not working when sorting by Installed on Model Browser
- Fixed SD.Next not showing "Open Web UI" button when finished loading
- Fixed model index startup errors when `./Models` contains unknown custom folder names
- Fixed ストップ button being cut off in Japanese translation
- Fixed update progress freezing in some cases
- Fixed light theme being default in first time setup window
- Fixed shared folder links not recreating fully when partially missing

## v2.4.6
### Added
- LDSR / ADetailer shared folder links for Automatic1111 Package
Expand Down
29 changes: 24 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,14 +14,16 @@
[voltaml]: https://github.com/VoltaML/voltaML-fast-stable-diffusion
[invokeai]: https://github.com/invoke-ai/InvokeAI
[fooocus]: https://github.com/lllyasviel/Fooocus
[fooocus_mre]: https://github.com/MoonRide303/Fooocus-MRE
[fooocus-mre]: https://github.com/MoonRide303/Fooocus-MRE

[civitai]: https://civitai.com/

Multi-Platform Package Manager for Stable Diffusion

### ✨ New in 2.5 - [Inference](#inference), a built-in Stable Diffusion interface powered by ComfyUI

### 🖱️ One click install and update for Stable Diffusion Web UI Packages
- Supports [Automatic 1111][auto1111], [Comfy UI][comfy], [SD.Next (Vladmandic)][sdnext], [VoltaML][voltaml], [InvokeAI][invokeai], [Fooocus][fooocus], and [Fooocus MRE][fooocus_mre]
- Supports [Automatic 1111][auto1111], [Comfy UI][comfy], [SD.Next (Vladmandic)][sdnext], [VoltaML][voltaml], [InvokeAI][invokeai], [Fooocus][fooocus], and [Fooocus MRE][fooocus-mre]
- Embedded Git and Python dependencies, with no need for either to be globally installed
- Fully portable - move Stability Matrix's Data Directory to a new drive or computer at any time

Expand All @@ -36,7 +38,7 @@ Multi-Platform Package Manager for Stable Diffusion
- Automatically imports to the associated model folder depending on the model type
- Downloads relevant metadata files and preview image

![header](https://github.com/LykosAI/StabilityMatrix/assets/13956642/a9c5f925-8561-49ba-855b-1b7bf57d7c0d)
![header](https://cdn.lykos.ai/static/sm-banner-rounded.webp)

[![Release](https://img.shields.io/github/v/release/LykosAI/StabilityMatrix?label=Latest%20Release&link=https%3A%2F%2Fgithub.com%2FLykosAI%2FStabilityMatrix%2Freleases%2Flatest)][release]

Expand All @@ -46,6 +48,18 @@ Multi-Platform Package Manager for Stable Diffusion

> macOS builds are currently pending: [#45][download-macos]

### Inference - A reimagined built-in Stable Diffusion experience
- Powerful auto-completion and syntax highlighting using a formal language grammar
- Workspaces open in tabs that save and load from `.smproj` project files

![](https://cdn.lykos.ai/static/sm-banner-inference-rounded.webp)

- Customizable dockable and float panels
- Generated images contain Inference Project, ComfyUI Nodes, and A1111-compatible metadata
- Drag and drop gallery images or files to load states

![](https://cdn.lykos.ai/static/sc-inference-drag-load-2.gif)

### Searchable launch options
<p align="center">
<img style="width: 80%; height: 80%" src="https://github.com/LykosAI/StabilityMatrix/assets/13956642/75456866-9d95-47c6-8c0a-fdc19443ee02" alt=""/>
Expand All @@ -61,13 +75,16 @@ Multi-Platform Package Manager for Stable Diffusion

### Shared model directory for all your packages
- Import local models by simple drag and drop
- Option to find CivitAI metadata and preview thumbnails for new local imports
- Toggle visibility of categories like LoRA, VAE, CLIP, etc.
- Option to automatically find CivitAI metadata and preview thumbnails for new local imports

<p align="center">
<img style="width: 80%; height: 80%" src="https://github.com/LykosAI/StabilityMatrix/assets/13956642/d42d1c53-67a4-45a0-b009-21400d44e17e" alt=""/>
</p>

- Find connected metadata for existing models
<p align="center">
<img style="width: 80%; height: 80%" src="https://cdn.lykos.ai/static/sc-checkpoints-find-connected.gif" alt=""/>
</p>

## Localization
Stability Matrix is now available in the following languages, thanks to our community contributors:
Expand All @@ -76,6 +93,8 @@ Stability Matrix is now available in the following languages, thanks to our comm
- kgmkm_mkgm
- 🇨🇳 中文(简体,繁体)
- jimlovewine
- 🇮🇹 Italiano
- Marco Capelli

If you would like to contribute a translation, please create an issue or contact us on Discord. Include an email where we'll send an invite to our [POEditor](https://poeditor.com/) project.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -71,10 +71,6 @@ protected override void Write(LogEventInfo logEvent)
Color = _config!.Colors[logLevel],
}
);

Debug.WriteLine(
$"--- [{logLevel.ToString()[..3]}] {message} - {logEvent.Exception?.Message ?? "no error"}"
);
}

#endregion
Expand Down
2 changes: 1 addition & 1 deletion StabilityMatrix.Avalonia.pupnet.conf
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ DotnetProjectPath = StabilityMatrix.Avalonia/StabilityMatrix.Avalonia.csproj
# '-p:DebugType=None -p:DebugSymbols=false -p:PublishSingleFile=true -p:PublishReadyToRun=true
# -p:PublishTrimmed=true -p:TrimMode=link'. Note. This value may use macro variables. Use 'pupnet --help macro'
# for reference. See: https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-publish
DotnetPublishArgs = -p:Version=${APP_VERSION} -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -p:DebugType=None -p:DebugSymbols=false --self-contained
DotnetPublishArgs = -p:Version=${APP_VERSION} -p:PublishReadyToRun=true -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -p:DebugType=None -p:DebugSymbols=false --self-contained

# Post-publish (or standalone build) command on Linux (ignored on Windows). It is called after dotnet
# publish, but before the final output is built. This could, for example, be a script which copies
Expand Down
108 changes: 108 additions & 0 deletions StabilityMatrix.Avalonia/Animations/ItemsRepeaterArrangeAnimation.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
using System;
using Avalonia;
using Avalonia.Controls;
using Avalonia.Rendering.Composition;
using Avalonia.Rendering.Composition.Animations;

namespace StabilityMatrix.Avalonia.Animations;

public class ItemsRepeaterArrangeAnimation : AvaloniaObject
{
public static readonly AttachedProperty<bool> EnableItemsArrangeAnimationProperty =
AvaloniaProperty.RegisterAttached<ItemsRepeater, bool>(
"EnableItemsArrangeAnimation",
typeof(ItemsRepeaterArrangeAnimation)
);

static ItemsRepeaterArrangeAnimation()
{
EnableItemsArrangeAnimationProperty.Changed.AddClassHandler<ItemsRepeater>(
OnEnableItemsArrangeAnimationChanged
);
}

private static void OnEnableItemsArrangeAnimationChanged(
ItemsRepeater itemsRepeater,
AvaloniaPropertyChangedEventArgs eventArgs
)
{
if (eventArgs.NewValue is true)
{
itemsRepeater.ElementPrepared += OnElementPrepared;
itemsRepeater.ElementIndexChanged += OnElementIndexChanged;
}
else
{
// itemsRepeater.Opened -= OnOpened;
}
}

private static void CreateAnimation(Visual item)
{
var compositionVisual =
ElementComposition.GetElementVisual(item) ?? throw new NullReferenceException();

if (compositionVisual.ImplicitAnimations is { } animations && animations.HasKey("Offset"))
{
return;
}

var compositor = compositionVisual.Compositor;

var offsetAnimation = compositor.CreateVector3KeyFrameAnimation();
offsetAnimation.Target = "Offset";
// Using the "this.FinalValue" to indicate the last value of the Offset property
offsetAnimation.InsertExpressionKeyFrame(1.0f, "this.FinalValue");
offsetAnimation.Duration = TimeSpan.FromMilliseconds(150);

// Create a new implicit animation collection and bind the offset animation
var implicitAnimationCollection = compositor.CreateImplicitAnimationCollection();
implicitAnimationCollection["Offset"] = offsetAnimation;
compositionVisual.ImplicitAnimations = implicitAnimationCollection;
}

private static void OnElementPrepared(object? sender, ItemsRepeaterElementPreparedEventArgs e)
{
if (
sender is not ItemsRepeater itemsRepeater
|| !GetEnableItemsArrangeAnimation(itemsRepeater)
)
return;

CreateAnimation(itemsRepeater);
}

private static void OnElementIndexChanged(
object? sender,
ItemsRepeaterElementIndexChangedEventArgs e
)
{
if (
sender is not ItemsRepeater itemsRepeater
|| !GetEnableItemsArrangeAnimation(itemsRepeater)
)
return;

CreateAnimation(itemsRepeater);
}

/*private static void OnOpened(object sender, EventArgs e)
{
if (sender is not WindowBase windowBase || !GetEnableScaleShowAnimation(windowBase))
return;

// Here we explicitly animate the "Scale" property
// The implementation is the same as `Offset` at the beginning, but just with the Scale property
windowBase.StartWindowScaleAnimation();
}*/

public static bool GetEnableItemsArrangeAnimation(ItemsRepeater element)
{
return element.GetValue(EnableItemsArrangeAnimationProperty);
}

public static void SetEnableItemsArrangeAnimation(ItemsRepeater element, bool value)
{
element.SetValue(EnableItemsArrangeAnimationProperty, value);
}
}
37 changes: 35 additions & 2 deletions StabilityMatrix.Avalonia/App.axaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="StabilityMatrix.Avalonia.App"
xmlns:local="using:StabilityMatrix.Avalonia"
xmlns:idcr="using:Dock.Avalonia.Controls.Recycling"
xmlns:styling="clr-namespace:FluentAvalonia.Styling;assembly=FluentAvalonia"

RequestedThemeVariant="Default">
RequestedThemeVariant="Dark">
<!-- "Default" ThemeVariant follows system theme variant. "Dark" or "Light" are other available options. -->

<Application.DataTemplates>
Expand All @@ -15,21 +15,54 @@
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceInclude Source="Styles/ThemeColors.axaml"/>
<ResourceInclude Source="Styles/ThemeMaterials.axaml"/>
<ResourceInclude Source="Styles/Card.axaml"/>
<ResourceInclude Source="Controls/CodeCompletion/CompletionListThemes.axaml"/>
<ResourceInclude Source="Styles/ContextMenuStyles.axaml"/>
<ResourceInclude Source="Controls/EditorFlyouts.axaml"/>
</ResourceDictionary.MergedDictionaries>

<idcr:ControlRecycling x:Key="ControlRecyclingKey" />
<x:Double x:Key="ContentDialogMaxWidth">700</x:Double>

<SolidColorBrush x:Key="ToolTipBackground" Color="#1E1F22"/>
<SolidColorBrush x:Key="ToolTipForeground" Color="#9FBDC3"/>
<FontFamily x:Key="NotoSansJP">avares://StabilityMatrix.Avalonia/Assets/Fonts/NotoSansJP#Noto Sans JP</FontFamily>
</ResourceDictionary>
</Application.Resources>

<Application.Styles>
<styling:FluentAvaloniaTheme PreferUserAccentColor="True" UseSystemFontOnWindows="True"
TextVerticalAlignmentOverrideBehavior="Disabled"/>
<StyleInclude Source="avares://Dock.Avalonia/Themes/DockFluentTheme.axaml" />
<StyleInclude Source="avares://AvaloniaEdit/Themes/Fluent/AvaloniaEdit.xaml"/>
<StyleInclude Source="avares://AsyncImageLoader.Avalonia/AdvancedImage.axaml" />
<StyleInclude Source="Styles/ProgressRing.axaml"/>
<StyleInclude Source="Styles/ButtonStyles.axaml"/>
<StyleInclude Source="Styles/SplitButtonStyles.axaml"/>
<StyleInclude Source="Styles/ToggleButtonStyles.axaml"/>
<StyleInclude Source="Styles/DockStyles.axaml"/>
<StyleInclude Source="Styles/BorderStyles.axaml"/>
<StyleInclude Source="Controls/SeedCard.axaml"/>
<StyleInclude Source="Controls/SamplerCard.axaml"/>
<StyleInclude Source="Controls/ImageGalleryCard.axaml"/>
<StyleInclude Source="Controls/PromptCard.axaml"/>
<StyleInclude Source="Controls/StackCard.axaml"/>
<StyleInclude Source="Controls/UpscalerCard.axaml"/>
<StyleInclude Source="Controls/StackExpander.axaml"/>
<StyleInclude Source="Controls/ModelCard.axaml"/>
<StyleInclude Source="Controls/BatchSizeCard.axaml"/>
<StyleInclude Source="Controls/AdvancedImageBox.axaml"/>
<StyleInclude Source="Controls/FrameCarousel.axaml"/>
<StyleInclude Source="Controls/CodeCompletion/CompletionWindow.axaml"/>
<StyleInclude Source="Controls/SelectImageCard.axaml"/>
<StyleInclude Source="Controls/ImageFolderCard.axaml"/>
<StyleInclude Source="Controls/SharpenCard.axaml"/>
<StyleInclude Source="Controls/FreeUCard.axaml"/>
<StyleInclude Source="Controls/Paginator.axaml"/>

<Style Selector="DockControl">
<Setter Property="(DockProperties.ControlRecycling)" Value="{StaticResource ControlRecyclingKey}" />
</Style>
</Application.Styles>
</Application>
Loading
Loading