Skip to content

Commit 68bda31

Browse files
authored
Bump v1.0.0; upgrade to Avalonia 12; deps updates (#4) (#5)
* Upgrade to Avalonia 12 and dependency updates Bump the app version to 0.3.0 and document the release in CHANGELOG.md. Update Avalonia, Flowery.NET, MSTest, and other eligible direct NuGet dependencies that were older than the seven-day security cutoff. Adjust the application for Avalonia 12 API changes by moving placeholder usage to PlaceholderText, restoring clipboard text helpers through the new extension namespace, updating fullscreen window decoration settings, and preserving duplicate validation-plugin removal through reflection because the binding plugin container is no longer public. Update exception assertion tests for the MSTest 4 assertion API. Refs #4 * Set app version to 1.0.0 Update the desktop app package, assembly, and file versions from 0.3.0 to 1.0.0. Rename the current changelog release entry to match the new 1.0.0 version for the Avalonia 12 and dependency upgrade release.
1 parent 85fb1e8 commit 68bda31

59 files changed

Lines changed: 222 additions & 195 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.

CHANGELOG.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,21 @@ All notable changes to this project 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](https://semver.org/spec/v2.0.0.html).
77

8+
## [1.0.0] - 2026-06-07
9+
10+
### Changed
11+
12+
- Upgraded the desktop app to Avalonia 12 and Flowery.NET 2.0.6.
13+
- Updated eligible direct NuGet dependencies that were older than seven days, including OpenCvSharp, SkiaSharp, System.Text.Json, System.Drawing.Common, YamlDotNet, LlmTornado, Microsoft.SqlServer.TransactSql.ScriptDom, and MSTest packages.
14+
- Replaced deprecated Avalonia placeholder APIs across the UI with `PlaceholderText`.
15+
- Updated fullscreen image viewer window chrome settings for Avalonia 12.
16+
- Updated MSTest exception assertions for the MSTest 4 assertion API.
17+
18+
### Fixed
19+
20+
- Restored text clipboard copy behavior after Avalonia 12 moved clipboard text helpers to extension methods.
21+
- Preserved duplicate validation-plugin removal behavior after Avalonia 12 made the binding plugin container non-public.
22+
823
## [0.2.3] - 2026-05-18
924

1025
### Security

OpenSourceToolkit.AI/OpenSourceToolkit.AI.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<Project Sdk="Microsoft.NET.Sdk">
1+
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
44
<TargetFramework>net8.0</TargetFramework>
@@ -15,7 +15,7 @@
1515
</PropertyGroup>
1616

1717
<ItemGroup>
18-
<PackageReference Include="System.Text.Json" Version="10.0.7" />
18+
<PackageReference Include="System.Text.Json" Version="10.0.8" />
1919
<PackageReference Include="System.Net.Http" Version="4.3.4" />
2020
</ItemGroup>
2121

OpenSourceToolkit.Converters/OpenSourceToolkit.Converters.csproj

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@
66

77
<ItemGroup>
88
<PackageReference Include="Magick.NET-Q8-AnyCPU" Version="14.13.1" />
9-
<PackageReference Include="OpenCvSharp4" Version="4.13.0.20260427" />
10-
<PackageReference Include="OpenCvSharp4.runtime.win" Version="4.13.0.20260302" />
11-
<PackageReference Include="System.Drawing.Common" Version="10.0.7" />
12-
<PackageReference Include="System.Text.Json" Version="10.0.7" />
13-
<PackageReference Include="YamlDotNet" Version="16.3.0" />
9+
<PackageReference Include="OpenCvSharp4" Version="4.13.0.20260528" />
10+
<PackageReference Include="OpenCvSharp4.runtime.win" Version="4.13.0.20260528" />
11+
<PackageReference Include="System.Drawing.Common" Version="10.0.8" />
12+
<PackageReference Include="System.Text.Json" Version="10.0.8" />
13+
<PackageReference Include="YamlDotNet" Version="18.0.0" />
1414
</ItemGroup>
1515

1616
<PropertyGroup>

OpenSourceToolkit.Hardware/OpenSourceToolkit.Hardware.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@
77
<ItemGroup>
88
<PackageReference Include="NAudio" Version="2.3.0" />
99
<PackageReference Include="NAudio.Lame" Version="2.1.0" />
10-
<PackageReference Include="OpenCvSharp4" Version="4.13.0.20260427" />
11-
<PackageReference Include="OpenCvSharp4.runtime.win" Version="4.13.0.20260302" />
10+
<PackageReference Include="OpenCvSharp4" Version="4.13.0.20260528" />
11+
<PackageReference Include="OpenCvSharp4.runtime.win" Version="4.13.0.20260528" />
1212
</ItemGroup>
1313

1414
<PropertyGroup>

OpenSourceToolkit.Media/OpenSourceToolkit.Media.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@
1313
</ItemGroup>
1414

1515
<ItemGroup>
16-
<PackageReference Include="FIGLet" Version="1.1.0" />
17-
<PackageReference Include="SkiaSharp" Version="3.119.2" />
16+
<PackageReference Include="FIGLet" Version="2.0.14" />
17+
<PackageReference Include="SkiaSharp" Version="3.119.4" />
1818
</ItemGroup>
1919

2020
</Project>

OpenSourceToolkit.NET/App.axaml.cs

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
1-
#nullable enable
1+
#nullable enable
22
using Avalonia;
33
using Avalonia.Controls.ApplicationLifetimes;
4-
using Avalonia.Data.Core;
5-
using Avalonia.Data.Core.Plugins;
64
using Avalonia.Media;
75
using Avalonia.Styling;
86
using System;
97
using System.Globalization;
108
using System.Linq;
9+
using System.Reflection;
1110
using System.Threading.Tasks;
1211
using Avalonia.Markup.Xaml;
1312
using Avalonia.Threading;
@@ -286,14 +285,22 @@ public static bool ApplyThemeInPlace(string themeName, bool saveToSettings = tru
286285

287286
private void DisableAvaloniaDataAnnotationValidation()
288287
{
289-
// Get an array of plugins to remove
290-
var dataValidationPluginsToRemove =
291-
BindingPlugins.DataValidators.OfType<DataAnnotationsValidationPlugin>().ToArray();
288+
var bindingPluginsType = typeof(Application).Assembly.GetType("Avalonia.Data.Core.Plugins.BindingPlugins");
289+
var dataValidatorsProperty = bindingPluginsType?.GetProperty(
290+
"DataValidators",
291+
BindingFlags.Static | BindingFlags.Public);
292+
var dataValidators = dataValidatorsProperty?.GetValue(null) as System.Collections.IList;
293+
if (dataValidators == null)
294+
return;
295+
296+
var dataValidationPluginsToRemove = dataValidators
297+
.Cast<object>()
298+
.Where(plugin => plugin.GetType().FullName == "Avalonia.Data.Core.Plugins.DataAnnotationsValidationPlugin")
299+
.ToArray();
292300

293-
// remove each entry found
294301
foreach (var plugin in dataValidationPluginsToRemove)
295302
{
296-
BindingPlugins.DataValidators.Remove(plugin);
303+
dataValidators.Remove(plugin);
297304
}
298305
}
299306

OpenSourceToolkit.NET/Controls/CopyableInput.axaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<UserControl xmlns="https://github.com/avaloniaui"
1+
<UserControl xmlns="https://github.com/avaloniaui"
22
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
33
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
44
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
@@ -9,7 +9,7 @@
99
MinWidth="120">
1010
<Grid ColumnDefinitions="*,Auto">
1111
<daisy:DaisyInput Text="{Binding Text, ElementName=Root, Mode=TwoWay}"
12-
Watermark="{Binding Watermark, ElementName=Root}"
12+
PlaceholderText="{Binding Watermark, ElementName=Root}"
1313
IsReadOnly="{Binding IsReadOnly, ElementName=Root}"
1414
VerticalAlignment="Center"
1515
HorizontalAlignment="Stretch" />

OpenSourceToolkit.NET/Controls/CopyableInput.axaml.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1-
using Avalonia;
1+
using Avalonia;
22
using Avalonia.Controls;
33
using Avalonia.Data;
4+
using Avalonia.Input.Platform;
45

56
namespace OpenSourceToolkit.NET.Controls
67
{

OpenSourceToolkit.NET/Controls/CopyableTextBox.axaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<UserControl xmlns="https://github.com/avaloniaui"
1+
<UserControl xmlns="https://github.com/avaloniaui"
22
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
33
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
44
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
@@ -8,7 +8,7 @@
88
x:Name="Root">
99
<Grid ColumnDefinitions="*,Auto">
1010
<daisy:DaisyTextArea Text="{Binding Text, ElementName=Root, Mode=TwoWay}"
11-
Watermark="{Binding Watermark, ElementName=Root}"
11+
PlaceholderText="{Binding Watermark, ElementName=Root}"
1212
IsReadOnly="{Binding IsReadOnly, ElementName=Root}"
1313
VerticalAlignment="Stretch"
1414
HorizontalAlignment="Stretch" />

OpenSourceToolkit.NET/Controls/CopyableTextBox.axaml.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1-
using Avalonia;
1+
using Avalonia;
22
using Avalonia.Controls;
33
using Avalonia.Data;
4+
using Avalonia.Input.Platform;
45
using Avalonia.Media;
56
using System.Windows.Input;
67

0 commit comments

Comments
 (0)