Skip to content

Commit c48abc0

Browse files
authored
Merge branch 'dev' into downmerge
2 parents d007c5d + b641a77 commit c48abc0

115 files changed

Lines changed: 6498 additions & 1881 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ jobs:
2121
- name: Set up .NET
2222
uses: actions/setup-dotnet@v3
2323
with:
24-
dotnet-version: '7.0.x'
24+
dotnet-version: '8.0.x'
2525

2626
- name: Install dependencies
2727
run: dotnet restore

.github/workflows/release.yml

Lines changed: 33 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -82,10 +82,10 @@ jobs:
8282
sudo apt-get -y install libfuse2
8383
dotnet tool install --framework net6.0 -g KuiperZone.PupNet
8484
85-
- name: Set up .NET 7
85+
- name: Set up .NET 8
8686
uses: actions/setup-dotnet@v3
8787
with:
88-
dotnet-version: '7.0.x'
88+
dotnet-version: '8.0.x'
8989

9090
- name: PupNet Build
9191
env:
@@ -143,10 +143,10 @@ jobs:
143143
echo "Using version ${{ github.event.inputs.version }}"
144144
echo "RELEASE_VERSION=${{ github.event.inputs.version }}" >> $env:GITHUB_ENV
145145
146-
- name: Set up .NET 7
146+
- name: Set up .NET 8
147147
uses: actions/setup-dotnet@v3
148148
with:
149-
dotnet-version: '7.0.x'
149+
dotnet-version: '8.0.x'
150150

151151
- name: Install dependencies
152152
run: dotnet restore
@@ -197,8 +197,8 @@ jobs:
197197
# Zip each build
198198
- name: Zip Artifacts
199199
run: |
200-
zip -r StabilityMatrix-win-x64.zip StabilityMatrix-win-x64/*
201-
zip -r StabilityMatrix-linux-x64.zip StabilityMatrix-linux-x64/*
200+
cd StabilityMatrix-win-x64 && zip -r ../StabilityMatrix-win-x64.zip ./. && cd $OLDPWD
201+
cd StabilityMatrix-linux-x64 && zip -r ../StabilityMatrix-linux-x64.zip ./. && cd $OLDPWD
202202
203203
- name: Create Github Release
204204
id: create_release
@@ -235,10 +235,16 @@ jobs:
235235
python-version: '3.11'
236236

237237
- name: Install Python Dependencies
238-
run: pip install stability-matrix-tools~=0.2.7
238+
run: pip install stability-matrix-tools>=0.2.10 --upgrade
239239

240240
- name: Publish Auto-Update Release
241-
run: sm-tools updates publish-matrix -v $RELEASE_VERSION -y
241+
env:
242+
SM_B2_API_ID: ${{ secrets.SM_B2_API_ID }}
243+
SM_B2_API_KEY: ${{ secrets.SM_B2_API_KEY }}
244+
SM_CF_CACHE_PURGE_TOKEN: ${{ secrets.SM_CF_CACHE_PURGE_TOKEN }}
245+
SM_CF_ZONE_ID: ${{ secrets.SM_CF_ZONE_ID }}
246+
SM_SIGNING_PRIVATE_KEY: ${{ secrets.SM_SIGNING_PRIVATE_KEY }}
247+
run: sm-tools updates publish-matrix -v ${{ github.event.inputs.version }} -y
242248

243249
publish-auto-update-b2:
244250
name: Publish Auto-Update Release (B2)
@@ -253,23 +259,22 @@ jobs:
253259
echo "Using version ${{ github.event.inputs.version }}"
254260
echo "RELEASE_VERSION=${{ github.event.inputs.version }}" >> $env:GITHUB_ENV
255261
262+
# Downloads all previous artifacts to the current working directory
263+
- name: Download Artifacts
264+
uses: actions/download-artifact@v3
265+
266+
# Zip each build
267+
- name: Zip Artifacts
268+
run: |
269+
cd StabilityMatrix-win-x64 && zip -r ../StabilityMatrix-win-x64.zip ./. && cd $OLDPWD
270+
cd StabilityMatrix-linux-x64 && zip -r ../StabilityMatrix-linux-x64.zip ./. && cd $OLDPWD
271+
256272
- uses: actions/setup-python@v4
257273
with:
258274
python-version: '3.11'
259275

260276
- name: Install Python Dependencies
261-
run: pip install stability-matrix-tools~=0.2.7
262-
263-
- name: Download Changelog
264-
run: >
265-
sm-tools updates download-changelog -v $RELEASE_VERSION -y
266-
--changelog
267-
268-
# Zip each build
269-
- name: Zip Artifacts
270-
run: |
271-
zip -r StabilityMatrix-win-x64.zip StabilityMatrix-win-x64/*
272-
zip -r StabilityMatrix-linux-x64.zip StabilityMatrix-linux-x64/*
277+
run: pip install stability-matrix-tools>=0.2.10 --upgrade
273278

274279
# Check that the zips and CHANGELOG.md are in the current working directory
275280
- name: Check files
@@ -288,10 +293,16 @@ jobs:
288293
fi
289294
290295
- name: Publish Auto-Update Release
296+
env:
297+
SM_B2_API_ID: ${{ secrets.SM_B2_API_ID }}
298+
SM_B2_API_KEY: ${{ secrets.SM_B2_API_KEY }}
299+
SM_CF_CACHE_PURGE_TOKEN: ${{ secrets.SM_CF_CACHE_PURGE_TOKEN }}
300+
SM_CF_ZONE_ID: ${{ secrets.SM_CF_ZONE_ID }}
301+
SM_SIGNING_PRIVATE_KEY: ${{ secrets.SM_SIGNING_PRIVATE_KEY }}
291302
run: >
292-
sm-tools updates publish-files-v3 -v $RELEASE_VERSION -y
303+
sm-tools updates publish-files-v3 -v ${{ github.event.inputs.version }}
293304
--channel ${{ github.event.inputs.auto-update-release-channel }}
294305
--changelog CHANGELOG.md
295306
--win-x64 StabilityMatrix-win-x64.zip
296307
--linux-x64 StabilityMatrix-linux-x64.zip
297-
--b2-bucket-name ${{ secrets.B2_BUCKET_NAME }}
308+
-y

.github/workflows/test-ui.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
- name: Set up .NET
1919
uses: actions/setup-dotnet@v3
2020
with:
21-
dotnet-version: '7.0.x'
21+
dotnet-version: '8.0.x'
2222

2323
- name: Install dependencies
2424
run: dotnet restore

.github/workflows/version-bump.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ jobs:
2525
- name: Setup .NET Core
2626
uses: actions/setup-dotnet@v2
2727
with:
28-
dotnet-version: 6.0.x
28+
dotnet-version: '8.0.x'
2929

3030
- name: Bump versions
3131
uses: SiqiLu/dotnet-bump-version@2.0.0

CHANGELOG.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,22 @@ All notable changes to Stability Matrix will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
66
and this project adheres to [Semantic Versioning 2.0](https://semver.org/spec/v2.0.0.html).
77

8+
## v2.7.0-dev.2
9+
### Fixed
10+
- Fixed InvalidOperation errors when signing into accounts shortly after signing out, while the previous account update is still running
11+
12+
## v2.7.0-dev.1
13+
### Added
14+
- Accounts Settings Subpage
15+
- Lykos Account sign-up and login - currently for Patreon OAuth connections but GitHub requests caching and settings sync are planned
16+
- Supporters can now connect your Patreon accounts, then head to the Updates page to choose to receive auto-updates from the Dev or Preview channels
17+
- CivitAI Account login with API key - enables downloading models from the Browser page that require CivitAI logins, more integrations like liking and commenting are also planned
18+
- Updates Settings Subpage
19+
- Toggle auto-update notifications and manually check for updates
20+
- Choose between Stable, Preview, and Dev update channels
21+
## Changed
22+
- Model Browser page has been redesigned, featuring more information like rating and download counts
23+
824
## v2.6.2
925
### Changed
1026
- Backend changes for auto-update schema v3, supporting customizable release channels and faster downloads with zip compression

StabilityMatrix.Avalonia.Diagnostics/StabilityMatrix.Avalonia.Diagnostics.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFramework>net7.0</TargetFramework>
4+
<TargetFramework>net8.0</TargetFramework>
55
<RuntimeIdentifiers>win-x64;linux-x64;osx-x64;osx-arm64</RuntimeIdentifiers>
66
<ImplicitUsings>enable</ImplicitUsings>
77
<Nullable>enable</Nullable>

StabilityMatrix.Avalonia/Animations/BetterSlideNavigationTransition.cs

Lines changed: 43 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,25 @@
11
using System;
22
using System.Threading;
3+
using System.Threading.Tasks;
34
using Avalonia;
45
using Avalonia.Animation;
56
using Avalonia.Animation.Easings;
67
using Avalonia.Media;
78
using Avalonia.Styling;
89
using FluentAvalonia.UI.Media.Animation;
10+
using Projektanker.Icons.Avalonia;
911

1012
namespace StabilityMatrix.Avalonia.Animations;
1113

1214
public class BetterSlideNavigationTransition : BaseTransitionInfo
1315
{
1416
public override TimeSpan Duration { get; set; } = TimeSpan.FromMilliseconds(167);
15-
17+
1618
/// <summary>
1719
/// Gets or sets the type of animation effect to play during the slide transition.
1820
/// </summary>
19-
public SlideNavigationTransitionEffect Effect { get; set; } = SlideNavigationTransitionEffect.FromRight;
21+
public SlideNavigationTransitionEffect Effect { get; set; } =
22+
SlideNavigationTransitionEffect.FromRight;
2023

2124
/// <summary>
2225
/// Gets or sets the HorizontalOffset used when animating from the Left or Right
@@ -27,7 +30,12 @@ public class BetterSlideNavigationTransition : BaseTransitionInfo
2730
/// Gets or sets the VerticalOffset used when animating from the Top or Bottom
2831
/// </summary>
2932
public double FromVerticalOffset { get; set; } = 56;
30-
33+
34+
/// <summary>
35+
/// Gets or sets the easing function applied to the slide transition.
36+
/// </summary>
37+
public Easing Easing { get; set; } = new SplineEasing(0.1, 0.9, 0.2, 1.0);
38+
3139
public override async void RunAnimation(Animatable ctrl, CancellationToken cancellationToken)
3240
{
3341
double length = 0;
@@ -52,32 +60,39 @@ public override async void RunAnimation(Animatable ctrl, CancellationToken cance
5260

5361
var animation = new Animation
5462
{
55-
Easing = new SplineEasing(0.1, 0.9, 0.2, 1.0),
63+
Easing = Easing,
5664
Children =
5765
{
5866
new KeyFrame
5967
{
6068
Setters =
6169
{
62-
new Setter(isVertical ? TranslateTransform.YProperty : TranslateTransform.XProperty, length),
70+
new Setter(
71+
isVertical
72+
? TranslateTransform.YProperty
73+
: TranslateTransform.XProperty,
74+
length
75+
),
6376
new Setter(Visual.OpacityProperty, 0d)
6477
},
6578
Cue = new Cue(0d)
6679
},
6780
new KeyFrame
6881
{
69-
Setters=
70-
{
71-
new Setter(Visual.OpacityProperty, 1d)
72-
},
82+
Setters = { new Setter(Visual.OpacityProperty, 1d) },
7383
Cue = new Cue(0.05d)
7484
},
7585
new KeyFrame
7686
{
7787
Setters =
7888
{
7989
new Setter(Visual.OpacityProperty, 1d),
80-
new Setter(isVertical ? TranslateTransform.YProperty : TranslateTransform.XProperty, 0.0)
90+
new Setter(
91+
isVertical
92+
? TranslateTransform.YProperty
93+
: TranslateTransform.XProperty,
94+
0.0
95+
)
8196
},
8297
Cue = new Cue(1d)
8398
}
@@ -93,4 +108,22 @@ public override async void RunAnimation(Animatable ctrl, CancellationToken cance
93108
visual.Opacity = 1;
94109
}
95110
}
111+
112+
public static BetterSlideNavigationTransition PageSlideFromLeft =>
113+
new()
114+
{
115+
Duration = TimeSpan.FromMilliseconds(300),
116+
Effect = SlideNavigationTransitionEffect.FromLeft,
117+
FromHorizontalOffset = 150,
118+
Easing = new SplineEasing(0.6, 0.4, 0.1, 0.1)
119+
};
120+
121+
public static BetterSlideNavigationTransition PageSlideFromRight =>
122+
new()
123+
{
124+
Duration = TimeSpan.FromMilliseconds(300),
125+
Effect = SlideNavigationTransitionEffect.FromRight,
126+
FromHorizontalOffset = 150,
127+
Easing = new SplineEasing(0.6, 0.4, 0.1, 0.1)
128+
};
96129
}

StabilityMatrix.Avalonia/App.axaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,15 @@
2222
<ResourceInclude Source="Controls/EditorFlyouts.axaml"/>
2323
<ResourceInclude Source="Controls/Scroll/BetterScrollViewer.axaml"/>
2424
<ResourceInclude Source="Controls/ImageFolderCard.axaml"/>
25+
<ResourceInclude Source="Styles/ControlThemes/HyperlinkIconButtonStyles.axaml"/>
26+
<ResourceInclude Source="Styles/ControlThemes/ListBoxStyles.axaml"/>
2527
</ResourceDictionary.MergedDictionaries>
2628

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

32+
<x:Double x:Key="BreadcrumbBarItemThemeFontSize">32</x:Double>
33+
3034
<SolidColorBrush x:Key="ToolTipBackground" Color="#1E1F22"/>
3135
<SolidColorBrush x:Key="ToolTipForeground" Color="#9FBDC3"/>
3236
<FontFamily x:Key="NotoSansJP">avares://StabilityMatrix.Avalonia/Assets/Fonts/NotoSansJP#Noto Sans JP</FontFamily>
@@ -39,6 +43,7 @@
3943
<StyleInclude Source="avares://Dock.Avalonia/Themes/DockFluentTheme.axaml" />
4044
<StyleInclude Source="avares://AvaloniaEdit/Themes/Fluent/AvaloniaEdit.xaml"/>
4145
<StyleInclude Source="avares://AsyncImageLoader.Avalonia/AdvancedImage.axaml" />
46+
<StyleInclude Source="avares://FluentAvalonia.BreadcrumbBar/Styling/Styles.axaml" />
4247
<StyleInclude Source="Styles/ProgressRing.axaml"/>
4348
<StyleInclude Source="Styles/ButtonStyles.axaml"/>
4449
<StyleInclude Source="Styles/SplitButtonStyles.axaml"/>
@@ -62,6 +67,8 @@
6267
<StyleInclude Source="Controls/FreeUCard.axaml"/>
6368
<StyleInclude Source="Controls/Paginator.axaml"/>
6469
<StyleInclude Source="Controls/SelectableImageCard/SelectableImageButton.axaml"/>
70+
<StyleInclude Source="Controls/SettingsAccountLinkExpander.axaml"/>
71+
<StyleInclude Source="Controls/StarsRating.axaml"/>
6572

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

0 commit comments

Comments
 (0)