From bc03a1fdf96cc827664a2911f56664f9a62594d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wies=C5=82aw=20S=CC=8Colte=CC=81s?= Date: Thu, 10 Apr 2025 20:42:10 +0200 Subject: [PATCH 01/10] Update build system --- Directory.Build.props | 17 ++++++++ Directory.Packages.props | 43 +++++++++++++++++++ Svg.Skia.sln | 3 +- azure-pipelines.yml | 2 +- build/Avalonia.Desktop.props | 2 +- build/Avalonia.Diagnostics.props | 2 +- build/Avalonia.ReactiveUI.props | 2 +- build/Avalonia.Skia.props | 2 +- build/Avalonia.Themes.Fluent.props | 4 +- build/Avalonia.Web.props | 2 +- build/Avalonia.props | 2 +- build/Base.props | 16 +------ build/HarfBuzzSharp.NativeAssets.Linux.props | 2 +- build/Newtonsoft.Json.props | 2 +- build/ReferenceAssemblies.props | 2 +- build/SixLabors.ImageSharp.props | 2 +- build/SkiaSharp.HarfBuzz.props | 2 +- build/SkiaSharp.Linux.props | 2 +- build/SkiaSharp.props | 2 +- build/SourceLink.props | 2 +- build/Svg.props | 2 +- build/System.CommandLine.props | 2 +- build/XUnit.props | 18 ++++---- build/build/Build.cs | 16 +++---- build/build/_build.csproj | 4 +- .../Svg.Skia.Converter.csproj | 1 - samples/TestApp/TestApp.csproj | 2 +- samples/svgc/svgc.csproj | 5 +-- .../Avalonia.Controls.Skia.csproj | 1 - .../Avalonia.Svg.Skia.csproj | 1 - src/Avalonia.Svg/Avalonia.Svg.csproj | 1 - src/ShimSkiaSharp/ShimSkiaSharp.csproj | 1 - src/Svg.CodeGen.Skia/Svg.CodeGen.Skia.csproj | 1 - src/Svg.Custom/Svg.Custom.csproj | 3 +- src/Svg.Model/Svg.Model.csproj | 1 - src/Svg.Skia/Svg.Skia.csproj | 1 - .../Svg.SourceGenerator.Skia.csproj | 9 ++-- .../Avalonia.Svg.Skia.UnitTests.csproj | 1 - .../Svg.Skia.UnitTests.csproj | 1 - 39 files changed, 109 insertions(+), 75 deletions(-) create mode 100644 Directory.Build.props create mode 100644 Directory.Packages.props diff --git a/Directory.Build.props b/Directory.Build.props new file mode 100644 index 0000000000..19ee444d68 --- /dev/null +++ b/Directory.Build.props @@ -0,0 +1,17 @@ + + + 2.0.0.4 + + 11.2.0.2 + $(VersionSuffix) + Wiesław Šoltés + Wiesław Šoltés + Copyright © Wiesław Šoltés 2025 + https://github.com/wieslawsoltes/Svg.Skia + https://raw.githubusercontent.com/wieslawsoltes/Svg.Skia/master/icon/SvgToPng.png + + + latest + latest + + diff --git a/Directory.Packages.props b/Directory.Packages.props new file mode 100644 index 0000000000..c5f73ef8bd --- /dev/null +++ b/Directory.Packages.props @@ -0,0 +1,43 @@ + + + true + 11.2.0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Svg.Skia.sln b/Svg.Skia.sln index 40b73ff86d..6d3b625b31 100644 --- a/Svg.Skia.sln +++ b/Svg.Skia.sln @@ -15,6 +15,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{32B4A27D build.sh = build.sh global.json = global.json build\svg.skia.public.snk = build\svg.skia.public.snk + Directory.Packages.props = Directory.Packages.props + Directory.Build.props = Directory.Build.props EndProjectSection EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "docs", "docs", "{8F2FA341-A87B-4BF8-986F-95A123073091}" @@ -47,7 +49,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "props", "props", "{5BFEF4F8 build\Avalonia.Skia.props = build\Avalonia.Skia.props build\Avalonia.Themes.Fluent.props = build\Avalonia.Themes.Fluent.props build\Avalonia.Web.props = build\Avalonia.Web.props - build\Base.props = build\Base.props build\HarfBuzzSharp.NativeAssets.Linux.props = build\HarfBuzzSharp.NativeAssets.Linux.props build\Newtonsoft.Json.props = build\Newtonsoft.Json.props build\ReferenceAssemblies.props = build\ReferenceAssemblies.props diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 82bd66fcda..4a7a3446e4 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -6,7 +6,7 @@ resources: endpoint: wieslawsoltes type: github name: wieslawsoltes/BuildTemplates - ref: refs/tags/v2.0.0 + ref: refs/tags/v2.9.1 variables: BuildConfiguration: 'Release' diff --git a/build/Avalonia.Desktop.props b/build/Avalonia.Desktop.props index 1ee2369210..7038e79e31 100644 --- a/build/Avalonia.Desktop.props +++ b/build/Avalonia.Desktop.props @@ -1,6 +1,6 @@  - + diff --git a/build/Avalonia.Diagnostics.props b/build/Avalonia.Diagnostics.props index dac1f5e957..d809e48ed7 100644 --- a/build/Avalonia.Diagnostics.props +++ b/build/Avalonia.Diagnostics.props @@ -1,6 +1,6 @@  - + diff --git a/build/Avalonia.ReactiveUI.props b/build/Avalonia.ReactiveUI.props index c386b0321d..e1419432c0 100644 --- a/build/Avalonia.ReactiveUI.props +++ b/build/Avalonia.ReactiveUI.props @@ -1,6 +1,6 @@  - + diff --git a/build/Avalonia.Skia.props b/build/Avalonia.Skia.props index 313ae8e00c..4f84d9e0f1 100644 --- a/build/Avalonia.Skia.props +++ b/build/Avalonia.Skia.props @@ -1,6 +1,6 @@  - + diff --git a/build/Avalonia.Themes.Fluent.props b/build/Avalonia.Themes.Fluent.props index b4a89f609b..3d2c82be2f 100644 --- a/build/Avalonia.Themes.Fluent.props +++ b/build/Avalonia.Themes.Fluent.props @@ -1,7 +1,7 @@  - - + + diff --git a/build/Avalonia.Web.props b/build/Avalonia.Web.props index 2a5c71d46e..1b6167930a 100644 --- a/build/Avalonia.Web.props +++ b/build/Avalonia.Web.props @@ -1,6 +1,6 @@  - + diff --git a/build/Avalonia.props b/build/Avalonia.props index 497358e3eb..2ce879a9c7 100644 --- a/build/Avalonia.props +++ b/build/Avalonia.props @@ -1,6 +1,6 @@  - + diff --git a/build/Base.props b/build/Base.props index d4aee9db36..b67ed14153 100644 --- a/build/Base.props +++ b/build/Base.props @@ -1,18 +1,4 @@ - - 2.0.0.4 - - 11.2.0.2 - $(VersionSuffix) - Wiesław Šoltés - Wiesław Šoltés - Copyright © Wiesław Šoltés 2024 - https://github.com/wieslawsoltes/Svg.Skia - https://raw.githubusercontent.com/wieslawsoltes/Svg.Skia/master/icon/SvgToPng.png - - - latest - latest - + diff --git a/build/HarfBuzzSharp.NativeAssets.Linux.props b/build/HarfBuzzSharp.NativeAssets.Linux.props index 2886993cd3..4e1ae975fd 100644 --- a/build/HarfBuzzSharp.NativeAssets.Linux.props +++ b/build/HarfBuzzSharp.NativeAssets.Linux.props @@ -1,6 +1,6 @@  - + diff --git a/build/Newtonsoft.Json.props b/build/Newtonsoft.Json.props index a718c27716..e62f6e008e 100644 --- a/build/Newtonsoft.Json.props +++ b/build/Newtonsoft.Json.props @@ -1,6 +1,6 @@  - + diff --git a/build/ReferenceAssemblies.props b/build/ReferenceAssemblies.props index a12d84f618..647c36a3eb 100644 --- a/build/ReferenceAssemblies.props +++ b/build/ReferenceAssemblies.props @@ -1,6 +1,6 @@  - + diff --git a/build/SixLabors.ImageSharp.props b/build/SixLabors.ImageSharp.props index 786440fb18..04f0525d8e 100644 --- a/build/SixLabors.ImageSharp.props +++ b/build/SixLabors.ImageSharp.props @@ -1,6 +1,6 @@  - + diff --git a/build/SkiaSharp.HarfBuzz.props b/build/SkiaSharp.HarfBuzz.props index 0cc20bf70c..b98f6fb829 100644 --- a/build/SkiaSharp.HarfBuzz.props +++ b/build/SkiaSharp.HarfBuzz.props @@ -1,6 +1,6 @@  - + diff --git a/build/SkiaSharp.Linux.props b/build/SkiaSharp.Linux.props index bcb7e27ad9..4aa9584759 100644 --- a/build/SkiaSharp.Linux.props +++ b/build/SkiaSharp.Linux.props @@ -1,6 +1,6 @@  - + diff --git a/build/SkiaSharp.props b/build/SkiaSharp.props index cdd144a67a..476514e5ab 100644 --- a/build/SkiaSharp.props +++ b/build/SkiaSharp.props @@ -1,6 +1,6 @@  - + diff --git a/build/SourceLink.props b/build/SourceLink.props index 0279681b5d..3c33d93352 100644 --- a/build/SourceLink.props +++ b/build/SourceLink.props @@ -13,7 +13,7 @@ true - + diff --git a/build/Svg.props b/build/Svg.props index 0e44cc6be7..2db417812f 100644 --- a/build/Svg.props +++ b/build/Svg.props @@ -1,6 +1,6 @@  - + diff --git a/build/System.CommandLine.props b/build/System.CommandLine.props index be3a727af9..ffdd5d2eb9 100644 --- a/build/System.CommandLine.props +++ b/build/System.CommandLine.props @@ -1,6 +1,6 @@  - + diff --git a/build/XUnit.props b/build/XUnit.props index 32564193a8..9e751bbcb1 100644 --- a/build/XUnit.props +++ b/build/XUnit.props @@ -1,14 +1,14 @@  - - - - - - - - - + + + + + + + + + diff --git a/build/build/Build.cs b/build/build/Build.cs index b89d875658..8ca11dd13d 100644 --- a/build/build/Build.cs +++ b/build/build/Build.cs @@ -1,11 +1,10 @@ using System.Collections.Generic; +using System.Linq; using Nuke.Common; using Nuke.Common.Git; using Nuke.Common.ProjectModel; using Nuke.Common.Tools.DotNet; using Nuke.Common.IO; -using static Nuke.Common.IO.FileSystemTasks; -using static Nuke.Common.IO.PathConstruction; using static Nuke.Common.Tools.DotNet.DotNetTasks; class Build : NukeBuild @@ -48,20 +47,21 @@ protected override void OnBuildInitialized() VersionSuffix = VersionSuffix ?? ""; } - private void DeleteDirectories(IReadOnlyCollection directories) + private void DeleteDirectories(IReadOnlyCollection directories) { foreach (var directory in directories) { - DeleteDirectory(directory); + directory.DeleteDirectory(); } } Target Clean => _ => _ .Executes(() => { - DeleteDirectories(GlobDirectories(SourceDirectory, "**/bin", "**/obj")); - DeleteDirectories(GlobDirectories(TestsDirectory, "**/bin", "**/obj")); - EnsureCleanDirectory(ArtifactsDirectory); + + DeleteDirectories(SourceDirectory.GlobDirectories("**/bin", "**/obj")); + DeleteDirectories(TestsDirectory.GlobDirectories("**/bin", "**/obj")); + ArtifactsDirectory.CreateOrCleanDirectory(); }); Target Restore => _ => _ @@ -117,7 +117,7 @@ private void DeleteDirectories(IReadOnlyCollection directories) .Executes(() => { DotNetPublish(s => s - .SetProject(Solution.GetProject(PublishProject)) + .SetProject( Solution.AllProjects.FirstOrDefault(x => x.Name == PublishProject)) .SetConfiguration(Configuration) .SetVersionSuffix(VersionSuffix) .SetFramework(PublishFramework) diff --git a/build/build/_build.csproj b/build/build/_build.csproj index bc8d4488db..0a5bcaab15 100644 --- a/build/build/_build.csproj +++ b/build/build/_build.csproj @@ -11,8 +11,8 @@ - - + + diff --git a/samples/Svg.Skia.Converter/Svg.Skia.Converter.csproj b/samples/Svg.Skia.Converter/Svg.Skia.Converter.csproj index 6227d53fc0..e50f44466c 100644 --- a/samples/Svg.Skia.Converter/Svg.Skia.Converter.csproj +++ b/samples/Svg.Skia.Converter/Svg.Skia.Converter.csproj @@ -30,7 +30,6 @@ - diff --git a/samples/TestApp/TestApp.csproj b/samples/TestApp/TestApp.csproj index 2802a4c298..9d2d7167a5 100644 --- a/samples/TestApp/TestApp.csproj +++ b/samples/TestApp/TestApp.csproj @@ -38,7 +38,7 @@ - + all runtime; build; native; contentfiles; analyzers; buildtransitive diff --git a/samples/svgc/svgc.csproj b/samples/svgc/svgc.csproj index 20b2f76969..4df72a5abd 100644 --- a/samples/svgc/svgc.csproj +++ b/samples/svgc/svgc.csproj @@ -22,14 +22,13 @@ - - - + + diff --git a/src/Avalonia.Controls.Skia/Avalonia.Controls.Skia.csproj b/src/Avalonia.Controls.Skia/Avalonia.Controls.Skia.csproj index 562c2a4255..3d7b5f9900 100644 --- a/src/Avalonia.Controls.Skia/Avalonia.Controls.Skia.csproj +++ b/src/Avalonia.Controls.Skia/Avalonia.Controls.Skia.csproj @@ -18,7 +18,6 @@ vector graphics;rendering;2d;graphics;picture;bitamp;geometry;shapes;skiasharp;skia;control;avalonia;avaloniaui - diff --git a/src/Avalonia.Svg.Skia/Avalonia.Svg.Skia.csproj b/src/Avalonia.Svg.Skia/Avalonia.Svg.Skia.csproj index d3060d617d..2e61579f31 100644 --- a/src/Avalonia.Svg.Skia/Avalonia.Svg.Skia.csproj +++ b/src/Avalonia.Svg.Skia/Avalonia.Svg.Skia.csproj @@ -17,7 +17,6 @@ svg;vector graphics;rendering;2d;graphics;geometry;shapes;skiasharp;skia;control;avalonia;avaloniaui - diff --git a/src/Avalonia.Svg/Avalonia.Svg.csproj b/src/Avalonia.Svg/Avalonia.Svg.csproj index 9e9b1e6ae8..7dc35a5e87 100644 --- a/src/Avalonia.Svg/Avalonia.Svg.csproj +++ b/src/Avalonia.Svg/Avalonia.Svg.csproj @@ -17,7 +17,6 @@ svg;vector graphics;rendering;2d;graphics;geometry;shapes;control;avalonia;avaloniaui - diff --git a/src/ShimSkiaSharp/ShimSkiaSharp.csproj b/src/ShimSkiaSharp/ShimSkiaSharp.csproj index 03062f3e4a..4cd5e0704c 100644 --- a/src/ShimSkiaSharp/ShimSkiaSharp.csproj +++ b/src/ShimSkiaSharp/ShimSkiaSharp.csproj @@ -16,7 +16,6 @@ vector graphics;rendering;2d;graphics;geometry;shapes;skiasharp;skia;model - diff --git a/src/Svg.CodeGen.Skia/Svg.CodeGen.Skia.csproj b/src/Svg.CodeGen.Skia/Svg.CodeGen.Skia.csproj index 24e6fa2065..15cdeeb8e9 100644 --- a/src/Svg.CodeGen.Skia/Svg.CodeGen.Skia.csproj +++ b/src/Svg.CodeGen.Skia/Svg.CodeGen.Skia.csproj @@ -16,7 +16,6 @@ svg;skia;skiasharp;codegen;codegenerator;compiler;csharp;codegen;graphics - diff --git a/src/Svg.Custom/Svg.Custom.csproj b/src/Svg.Custom/Svg.Custom.csproj index 535dcdcf89..a67e088530 100644 --- a/src/Svg.Custom/Svg.Custom.csproj +++ b/src/Svg.Custom/Svg.Custom.csproj @@ -21,7 +21,6 @@ svg;vector graphics;rendering;2d;graphics;geometry;shapes - @@ -59,7 +58,7 @@ - + diff --git a/src/Svg.Model/Svg.Model.csproj b/src/Svg.Model/Svg.Model.csproj index 47eaafe2a6..ce0d5202d2 100644 --- a/src/Svg.Model/Svg.Model.csproj +++ b/src/Svg.Model/Svg.Model.csproj @@ -21,7 +21,6 @@ - diff --git a/src/Svg.Skia/Svg.Skia.csproj b/src/Svg.Skia/Svg.Skia.csproj index 9a7dfdb1e7..dffa0aab2b 100644 --- a/src/Svg.Skia/Svg.Skia.csproj +++ b/src/Svg.Skia/Svg.Skia.csproj @@ -17,7 +17,6 @@ svg;vector graphics;rendering;2d;graphics;geometry;shapes;skiasharp;skia - diff --git a/src/Svg.SourceGenerator.Skia/Svg.SourceGenerator.Skia.csproj b/src/Svg.SourceGenerator.Skia/Svg.SourceGenerator.Skia.csproj index d31789fb9a..a72a52250c 100644 --- a/src/Svg.SourceGenerator.Skia/Svg.SourceGenerator.Skia.csproj +++ b/src/Svg.SourceGenerator.Skia/Svg.SourceGenerator.Skia.csproj @@ -18,7 +18,6 @@ svg;skia;skiasharp;sourcegenerator;compiler;csharp;codegen;graphics - @@ -35,10 +34,10 @@ - - - - + + + + diff --git a/tests/Avalonia.Svg.Skia.UnitTests/Avalonia.Svg.Skia.UnitTests.csproj b/tests/Avalonia.Svg.Skia.UnitTests/Avalonia.Svg.Skia.UnitTests.csproj index bebf78a3d9..e9c61a6d97 100644 --- a/tests/Avalonia.Svg.Skia.UnitTests/Avalonia.Svg.Skia.UnitTests.csproj +++ b/tests/Avalonia.Svg.Skia.UnitTests/Avalonia.Svg.Skia.UnitTests.csproj @@ -7,7 +7,6 @@ enable - diff --git a/tests/Svg.Skia.UnitTests/Svg.Skia.UnitTests.csproj b/tests/Svg.Skia.UnitTests/Svg.Skia.UnitTests.csproj index d45f96d9ba..24baea9cdb 100644 --- a/tests/Svg.Skia.UnitTests/Svg.Skia.UnitTests.csproj +++ b/tests/Svg.Skia.UnitTests/Svg.Skia.UnitTests.csproj @@ -7,7 +7,6 @@ enable - From 65cf3611f9cc8080a4e6aef818c82db125c8b16c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wies=C5=82aw=20S=CC=8Colte=CC=81s?= Date: Thu, 10 Apr 2025 20:50:05 +0200 Subject: [PATCH 02/10] Update packages --- Directory.Packages.props | 41 ++++++++++++++++++++-------------------- 1 file changed, 21 insertions(+), 20 deletions(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index c5f73ef8bd..d89def806a 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -1,7 +1,7 @@  true - 11.2.0 + 11.2.6 @@ -13,31 +13,32 @@ - + - - - - - - - + + + + + + + + - - + + - - - - - - - + + + + + + + - + - + \ No newline at end of file From bdf017203fd53d19b4339725fa4e452347d38e9f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wies=C5=82aw=20S=CC=8Colte=CC=81s?= Date: Thu, 10 Apr 2025 20:51:08 +0200 Subject: [PATCH 03/10] Fix --- src/Svg.Custom/Svg.Custom.csproj | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Svg.Custom/Svg.Custom.csproj b/src/Svg.Custom/Svg.Custom.csproj index a67e088530..1ce5d109e6 100644 --- a/src/Svg.Custom/Svg.Custom.csproj +++ b/src/Svg.Custom/Svg.Custom.csproj @@ -53,10 +53,6 @@ $(DefineConstants);NETCORE;NET6 - - - - @@ -69,4 +65,8 @@ + + + + From 1f6584e5c55f52b7de14edc60b32bb0c33868f7b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wies=C5=82aw=20S=CC=8Colte=CC=81s?= Date: Thu, 10 Apr 2025 21:13:17 +0200 Subject: [PATCH 04/10] Delete ImageSharp.props --- build/ImageSharp.props | 6 ------ 1 file changed, 6 deletions(-) delete mode 100644 build/ImageSharp.props diff --git a/build/ImageSharp.props b/build/ImageSharp.props deleted file mode 100644 index 535d98216f..0000000000 --- a/build/ImageSharp.props +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - From 7cb7f14473141716dc35189e31f6e1a368855e0a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wies=C5=82aw=20S=CC=8Colte=CC=81s?= Date: Thu, 10 Apr 2025 21:13:21 +0200 Subject: [PATCH 05/10] Update Svg.Skia.UnitTests.csproj --- tests/Svg.Skia.UnitTests/Svg.Skia.UnitTests.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Svg.Skia.UnitTests/Svg.Skia.UnitTests.csproj b/tests/Svg.Skia.UnitTests/Svg.Skia.UnitTests.csproj index 24baea9cdb..c9d671ad9e 100644 --- a/tests/Svg.Skia.UnitTests/Svg.Skia.UnitTests.csproj +++ b/tests/Svg.Skia.UnitTests/Svg.Skia.UnitTests.csproj @@ -9,7 +9,7 @@ - + From 522860ddf2a253676d37bbf5a619bb53ef5bf343 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wies=C5=82aw=20S=CC=8Colte=CC=81s?= Date: Thu, 10 Apr 2025 21:13:30 +0200 Subject: [PATCH 06/10] Fix generators --- Svg.Skia.sln | 14 ++++---- .../Svg.Generators/Svg.Generators.csproj | 34 +++++++++++++++++++ src/Svg.Custom/Svg.Custom.csproj | 2 +- 3 files changed, 42 insertions(+), 8 deletions(-) create mode 100644 externals/Svg.Generators/Svg.Generators.csproj diff --git a/Svg.Skia.sln b/Svg.Skia.sln index 6d3b625b31..4974ca424f 100644 --- a/Svg.Skia.sln +++ b/Svg.Skia.sln @@ -83,8 +83,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Svg.CodeGen.Skia", "src\Svg EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Avalonia.Controls.Skia", "src\Avalonia.Controls.Skia\Avalonia.Controls.Skia.csproj", "{223B7A5A-E263-4D40-9A6E-FE31EAE92F45}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Svg.Generators", "externals\SVG\Generators\Svg.Generators.csproj", "{AF8AEF5B-0664-4106-9BD3-389758F39B12}" -EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TestApp", "samples\TestApp\TestApp.csproj", "{B4BC7C90-09C3-46CB-B8B1-0450CC7EAAB0}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "externals", "externals", "{C5FFCF4B-86DC-453E-8006-44EE9EEFEE39}" @@ -114,6 +112,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Avalonia.Svg", "src\Avaloni EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "AvaloniaSvgSkiaStylingSample", "samples\AvaloniaSvgSkiaStylingSample\AvaloniaSvgSkiaStylingSample.csproj", "{8A938DC2-1634-4387-BAB3-69F871D54FB5}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Svg.Generators", "externals\Svg.Generators\Svg.Generators.csproj", "{A27DF58D-4865-4233-9D1A-476DF155EC8C}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -160,10 +160,6 @@ Global {223B7A5A-E263-4D40-9A6E-FE31EAE92F45}.Debug|Any CPU.Build.0 = Debug|Any CPU {223B7A5A-E263-4D40-9A6E-FE31EAE92F45}.Release|Any CPU.ActiveCfg = Release|Any CPU {223B7A5A-E263-4D40-9A6E-FE31EAE92F45}.Release|Any CPU.Build.0 = Release|Any CPU - {AF8AEF5B-0664-4106-9BD3-389758F39B12}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {AF8AEF5B-0664-4106-9BD3-389758F39B12}.Debug|Any CPU.Build.0 = Debug|Any CPU - {AF8AEF5B-0664-4106-9BD3-389758F39B12}.Release|Any CPU.ActiveCfg = Release|Any CPU - {AF8AEF5B-0664-4106-9BD3-389758F39B12}.Release|Any CPU.Build.0 = Release|Any CPU {B4BC7C90-09C3-46CB-B8B1-0450CC7EAAB0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {B4BC7C90-09C3-46CB-B8B1-0450CC7EAAB0}.Debug|Any CPU.Build.0 = Debug|Any CPU {B4BC7C90-09C3-46CB-B8B1-0450CC7EAAB0}.Release|Any CPU.ActiveCfg = Release|Any CPU @@ -208,6 +204,10 @@ Global {8A938DC2-1634-4387-BAB3-69F871D54FB5}.Debug|Any CPU.Build.0 = Debug|Any CPU {8A938DC2-1634-4387-BAB3-69F871D54FB5}.Release|Any CPU.ActiveCfg = Release|Any CPU {8A938DC2-1634-4387-BAB3-69F871D54FB5}.Release|Any CPU.Build.0 = Release|Any CPU + {A27DF58D-4865-4233-9D1A-476DF155EC8C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A27DF58D-4865-4233-9D1A-476DF155EC8C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A27DF58D-4865-4233-9D1A-476DF155EC8C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A27DF58D-4865-4233-9D1A-476DF155EC8C}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -226,7 +226,6 @@ Global {4C970B2C-6C96-445B-B80B-4EFBF803FD5F} = {4C42912C-9F8C-43D9-A4B5-4427F7EC8F18} {29F59C87-EAE6-4DD3-8666-B79BFAF6B34D} = {4C42912C-9F8C-43D9-A4B5-4427F7EC8F18} {223B7A5A-E263-4D40-9A6E-FE31EAE92F45} = {4C42912C-9F8C-43D9-A4B5-4427F7EC8F18} - {AF8AEF5B-0664-4106-9BD3-389758F39B12} = {C5FFCF4B-86DC-453E-8006-44EE9EEFEE39} {B4BC7C90-09C3-46CB-B8B1-0450CC7EAAB0} = {B65D5B3A-77BE-4AFF-B502-A136B9C932F8} {6D2786A1-F110-4448-9CBF-D3CC9D803F31} = {4C42912C-9F8C-43D9-A4B5-4427F7EC8F18} {BE25FC07-9A8C-4494-A6AE-F2561CF89010} = {B65D5B3A-77BE-4AFF-B502-A136B9C932F8} @@ -239,6 +238,7 @@ Global {3049C672-8A3F-4FE4-9973-515B8323B546} = {4C42912C-9F8C-43D9-A4B5-4427F7EC8F18} {B742F260-0EC6-4805-AE9F-987818CE3CF4} = {4C42912C-9F8C-43D9-A4B5-4427F7EC8F18} {8A938DC2-1634-4387-BAB3-69F871D54FB5} = {B65D5B3A-77BE-4AFF-B502-A136B9C932F8} + {A27DF58D-4865-4233-9D1A-476DF155EC8C} = {C5FFCF4B-86DC-453E-8006-44EE9EEFEE39} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {12D5E557-A27B-4FB2-83A3-4AC75B04B22C} diff --git a/externals/Svg.Generators/Svg.Generators.csproj b/externals/Svg.Generators/Svg.Generators.csproj new file mode 100644 index 0000000000..a21624e133 --- /dev/null +++ b/externals/Svg.Generators/Svg.Generators.csproj @@ -0,0 +1,34 @@ + + + + netstandard2.0 + Library + False + latest + enable + latest + true + Debug;Release + + + + ..\SVG\Generators + + + + + + + $(NoWarn);CS1591;CS0618 + + + + + + + + + + + + diff --git a/src/Svg.Custom/Svg.Custom.csproj b/src/Svg.Custom/Svg.Custom.csproj index 1ce5d109e6..07683aee89 100644 --- a/src/Svg.Custom/Svg.Custom.csproj +++ b/src/Svg.Custom/Svg.Custom.csproj @@ -62,7 +62,7 @@ - + From b1305cdc75c36dfa14e014581913e068140e02c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wies=C5=82aw=20S=CC=8Colte=CC=81s?= Date: Thu, 10 Apr 2025 21:20:36 +0200 Subject: [PATCH 07/10] Update Directory.Build.props --- Directory.Build.props | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Directory.Build.props b/Directory.Build.props index 19ee444d68..16ee358201 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -14,4 +14,7 @@ latest latest + + true + From 5a702df7867625ce0333eaa7826e47a1fdb9cfc1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wies=C5=82aw=20S=CC=8Colte=CC=81s?= Date: Thu, 10 Apr 2025 21:20:41 +0200 Subject: [PATCH 08/10] Update SvgSource.cs --- src/Avalonia.Svg.Skia/SvgSource.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Avalonia.Svg.Skia/SvgSource.cs b/src/Avalonia.Svg.Skia/SvgSource.cs index 35010e62a1..3abf813a11 100644 --- a/src/Avalonia.Svg.Skia/SvgSource.cs +++ b/src/Avalonia.Svg.Skia/SvgSource.cs @@ -48,7 +48,7 @@ public SKPicture? Picture return _picture; } - protected set => _picture = value; + set => _picture = value; } /// From b8c9c70514b308a33f8a067876e0113cdbdd22df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wies=C5=82aw=20S=CC=8Colte=CC=81s?= Date: Thu, 10 Apr 2025 21:20:44 +0200 Subject: [PATCH 09/10] Update SvgSource.cs --- src/Avalonia.Svg.Skia/SvgSource.cs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/Avalonia.Svg.Skia/SvgSource.cs b/src/Avalonia.Svg.Skia/SvgSource.cs index 3abf813a11..8b88b336ae 100644 --- a/src/Avalonia.Svg.Skia/SvgSource.cs +++ b/src/Avalonia.Svg.Skia/SvgSource.cs @@ -94,12 +94,17 @@ static SvgSource() s_assetLoader = new SkiaAssetLoader(s_skiaModel); } - private static SKPicture? Load(SvgSource source, string path, SvgParameters? parameters) + private static SKPicture? Load(SvgSource source, string? path, SvgParameters? parameters) { source._originalPath = path; source._originalStream?.Dispose(); source._originalStream = null; + if (path is null) + { + return null; + } + var svgDocument = SvgExtensions.Open(path, parameters); if (svgDocument is null) { @@ -162,7 +167,7 @@ static SvgSource() { return EnableThrowOnMissingResource ? throw new ArgumentException($"Invalid resource path: {path}") - : default; + : null; } private static SKPicture? LoadImpl(SvgSource source, string path, Uri? baseUri, SvgParameters? parameters = null) From 026d3ea453b60e04d917bd97347f812e105d2f5b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wies=C5=82aw=20S=CC=8Colte=CC=81s?= Date: Thu, 10 Apr 2025 21:20:48 +0200 Subject: [PATCH 10/10] Update Svg.SourceGenerator.Skia.csproj --- src/Svg.SourceGenerator.Skia/Svg.SourceGenerator.Skia.csproj | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Svg.SourceGenerator.Skia/Svg.SourceGenerator.Skia.csproj b/src/Svg.SourceGenerator.Skia/Svg.SourceGenerator.Skia.csproj index a72a52250c..e8b2747d59 100644 --- a/src/Svg.SourceGenerator.Skia/Svg.SourceGenerator.Skia.csproj +++ b/src/Svg.SourceGenerator.Skia/Svg.SourceGenerator.Skia.csproj @@ -9,6 +9,7 @@ False True true + true