diff --git a/Avalonia.sln b/Avalonia.sln
index c3e86734d8..104245118a 100644
--- a/Avalonia.sln
+++ b/Avalonia.sln
@@ -177,8 +177,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Avalonia.OpenGL", "src\Aval
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Avalonia.Native", "src\Avalonia.Native\Avalonia.Native.csproj", "{12A91A62-C064-42CA-9A8C-A1272F354388}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Avalonia.DesktopRuntime", "src\Avalonia.DesktopRuntime\Avalonia.DesktopRuntime.csproj", "{878FEFE0-CD14-41CB-90B0-DBCB163E8F15}"
-EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Packages", "Packages", "{E870DCD7-F46A-498D-83FC-D0FD13E0A11C}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Avalonia", "packages\Avalonia\Avalonia.csproj", "{D49233F8-F29C-47DD-9975-C4C9E4502720}"
@@ -1559,30 +1557,6 @@ Global
{12A91A62-C064-42CA-9A8C-A1272F354388}.Release|iPhone.Build.0 = Release|Any CPU
{12A91A62-C064-42CA-9A8C-A1272F354388}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{12A91A62-C064-42CA-9A8C-A1272F354388}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.AppStore|Any CPU.Build.0 = Debug|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.AppStore|iPhone.Build.0 = Debug|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.Debug|iPhone.ActiveCfg = Debug|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.Debug|iPhone.Build.0 = Debug|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.Release|Any CPU.Build.0 = Release|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.Release|iPhone.ActiveCfg = Release|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.Release|iPhone.Build.0 = Release|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
- {878FEFE0-CD14-41CB-90B0-DBCB163E8F15}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
{D49233F8-F29C-47DD-9975-C4C9E4502720}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
{D49233F8-F29C-47DD-9975-C4C9E4502720}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
{D49233F8-F29C-47DD-9975-C4C9E4502720}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
diff --git a/build/CoreLibraries.props b/build/CoreLibraries.props
index 3fccad2641..6bf69603c0 100644
--- a/build/CoreLibraries.props
+++ b/build/CoreLibraries.props
@@ -16,7 +16,6 @@
-
diff --git a/nukebuild/numerge.config b/nukebuild/numerge.config
index e4e15d693d..d1c0408241 100644
--- a/nukebuild/numerge.config
+++ b/nukebuild/numerge.config
@@ -11,11 +11,6 @@
"Id": "Avalonia.Build.Tasks",
"IgnoreMissingFrameworkBinaries": true,
"DoNotMergeDependencies": true
- },
- {
- "Id": "Avalonia.DesktopRuntime",
- "IgnoreMissingFrameworkBinaries": true,
- "IgnoreMissingFrameworkDependencies": true
}
]
}
diff --git a/src/Avalonia.Controls/ApiCompatBaseline.txt b/src/Avalonia.Controls/ApiCompatBaseline.txt
index 2c206b53f6..55372a7f1a 100644
--- a/src/Avalonia.Controls/ApiCompatBaseline.txt
+++ b/src/Avalonia.Controls/ApiCompatBaseline.txt
@@ -48,6 +48,7 @@ MembersMustExist : Member 'public Avalonia.Media.FormattedText Avalonia.Controls
MembersMustExist : Member 'public System.Int32 Avalonia.Controls.Presenters.TextPresenter.GetCaretIndex(Avalonia.Point)' does not exist in the implementation but it does exist in the contract.
MembersMustExist : Member 'protected void Avalonia.Controls.Presenters.TextPresenter.InvalidateFormattedText()' does not exist in the implementation but it does exist in the contract.
CannotRemoveBaseTypeOrInterface : Type 'Avalonia.Controls.Primitives.PopupRoot' does not implement interface 'Avalonia.Utilities.IWeakSubscriber' in the implementation but it does in the contract.
+TypesMustExist : Type 'Avalonia.Platform.ExportWindowingSubsystemAttribute' does not exist in the implementation but it does exist in the contract.
EnumValuesMustMatch : Enum value 'Avalonia.Platform.ExtendClientAreaChromeHints Avalonia.Platform.ExtendClientAreaChromeHints.Default' is (System.Int32)2 in the implementation but (System.Int32)1 in the contract.
InterfacesShouldHaveSameMembers : Interface member 'public System.Nullable Avalonia.Platform.ITopLevelImpl.FrameSize' is present in the implementation but not in the contract.
InterfacesShouldHaveSameMembers : Interface member 'public System.Nullable Avalonia.Platform.ITopLevelImpl.FrameSize.get()' is present in the implementation but not in the contract.
@@ -67,4 +68,4 @@ InterfacesShouldHaveSameMembers : Interface member 'public void Avalonia.Platfor
MembersMustExist : Member 'public void Avalonia.Platform.IWindowImpl.Resize(Avalonia.Size)' does not exist in the implementation but it does exist in the contract.
InterfacesShouldHaveSameMembers : Interface member 'public void Avalonia.Platform.IWindowImpl.Resize(Avalonia.Size, Avalonia.Platform.PlatformResizeReason)' is present in the implementation but not in the contract.
InterfacesShouldHaveSameMembers : Interface member 'public Avalonia.Platform.ITrayIconImpl Avalonia.Platform.IWindowingPlatform.CreateTrayIcon()' is present in the implementation but not in the contract.
-Total Issues: 68
+Total Issues: 69
diff --git a/src/Avalonia.Controls/Platform/ExportWindowingSubsystemAttribute.cs b/src/Avalonia.Controls/Platform/ExportWindowingSubsystemAttribute.cs
deleted file mode 100644
index 2a401ad912..0000000000
--- a/src/Avalonia.Controls/Platform/ExportWindowingSubsystemAttribute.cs
+++ /dev/null
@@ -1,26 +0,0 @@
-using System;
-
-namespace Avalonia.Platform
-{
- [AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true)]
- public class ExportWindowingSubsystemAttribute : Attribute
- {
- public ExportWindowingSubsystemAttribute(OperatingSystemType requiredRuntimePlatform, int priority, string name, Type initializationType,
- string initializationMethod, Type? environmentChecker = null)
- {
- Name = name;
- InitializationType = initializationType;
- InitializationMethod = initializationMethod;
- EnvironmentChecker = environmentChecker;
- RequiredOS = requiredRuntimePlatform;
- Priority = priority;
- }
-
- public string InitializationMethod { get; private set; }
- public Type? EnvironmentChecker { get; }
- public Type InitializationType { get; private set; }
- public string Name { get; private set; }
- public int Priority { get; private set; }
- public OperatingSystemType RequiredOS { get; private set; }
- }
-}
diff --git a/src/Avalonia.DesktopRuntime/ApiCompatBaseline.txt b/src/Avalonia.DesktopRuntime/ApiCompatBaseline.txt
deleted file mode 100644
index 0493db9ab3..0000000000
--- a/src/Avalonia.DesktopRuntime/ApiCompatBaseline.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-Compat issues with assembly Avalonia.DesktopRuntime:
-TypesMustExist : Type 'Avalonia.Shared.PlatformSupport.AssetLoader' does not exist in the implementation but it does exist in the contract.
-Total Issues: 1
diff --git a/src/Avalonia.DesktopRuntime/AppBuilder.cs b/src/Avalonia.DesktopRuntime/AppBuilder.cs
deleted file mode 100644
index 2946324c83..0000000000
--- a/src/Avalonia.DesktopRuntime/AppBuilder.cs
+++ /dev/null
@@ -1,103 +0,0 @@
-using System;
-using System.IO;
-using System.Linq;
-using System.Reflection;
-using Avalonia.Controls;
-using Avalonia.Platform;
-using Avalonia.PlatformSupport;
-
-namespace Avalonia
-{
- ///
- /// Initializes platform-specific services for an .
- ///
- public sealed class AppBuilder : AppBuilderBase
- {
- ///
- /// Initializes a new instance of the class.
- ///
- public AppBuilder()
- : base(new StandardRuntimePlatform(),
- builder => StandardRuntimePlatformServices.Register(builder.ApplicationType.Assembly))
- {
- }
-
- bool CheckEnvironment(Type checkerType)
- {
- if (checkerType == null)
- return true;
- try
- {
- return ((IModuleEnvironmentChecker) Activator.CreateInstance(checkerType)).IsCompatible;
- }
- catch
- {
- return false;
- }
- }
-
- ///
- /// Instructs the to use the best settings for the platform.
- ///
- /// An instance.
- public AppBuilder UseSubsystemsFromStartupDirectory()
- {
- var os = RuntimePlatform.GetRuntimeInfo().OperatingSystem;
-
- LoadAssembliesInDirectory();
-
- var windowingSubsystemAttribute = (from assembly in AppDomain.CurrentDomain.GetAssemblies()
- from attribute in assembly.GetCustomAttributes()
- where attribute.RequiredOS == os && CheckEnvironment(attribute.EnvironmentChecker)
- orderby attribute.Priority ascending
- select attribute).FirstOrDefault();
- if (windowingSubsystemAttribute == null)
- {
- throw new InvalidOperationException("No windowing subsystem found. Are you missing assembly references?");
- }
-
- var renderingSubsystemAttribute = (from assembly in AppDomain.CurrentDomain.GetAssemblies()
- from attribute in assembly.GetCustomAttributes()
- where attribute.RequiredOS == os && CheckEnvironment(attribute.EnvironmentChecker)
- where attribute.RequiresWindowingSubsystem == null
- || attribute.RequiresWindowingSubsystem == windowingSubsystemAttribute.Name
- orderby attribute.Priority ascending
- select attribute).FirstOrDefault();
-
- if (renderingSubsystemAttribute == null)
- {
- throw new InvalidOperationException("No rendering subsystem found. Are you missing assembly references?");
- }
-
- UseWindowingSubsystem(() => windowingSubsystemAttribute.InitializationType
- .GetRuntimeMethod(windowingSubsystemAttribute.InitializationMethod, Type.EmptyTypes).Invoke(null, null),
- windowingSubsystemAttribute.Name);
-
- UseRenderingSubsystem(() => renderingSubsystemAttribute.InitializationType
- .GetRuntimeMethod(renderingSubsystemAttribute.InitializationMethod, Type.EmptyTypes).Invoke(null, null),
- renderingSubsystemAttribute.Name);
-
- return this;
- }
-
- private void LoadAssembliesInDirectory()
- {
- var location = Assembly.GetEntryAssembly().Location;
- if (string.IsNullOrWhiteSpace(location))
- return;
- var dir = new FileInfo(location).Directory;
- if (dir == null)
- return;
- foreach (var file in dir.EnumerateFiles("*.dll"))
- {
- try
- {
- Assembly.LoadFile(file.FullName);
- }
- catch (Exception)
- {
- }
- }
- }
- }
-}
diff --git a/src/Avalonia.DesktopRuntime/Avalonia.DesktopRuntime.csproj b/src/Avalonia.DesktopRuntime/Avalonia.DesktopRuntime.csproj
deleted file mode 100644
index 25effae46e..0000000000
--- a/src/Avalonia.DesktopRuntime/Avalonia.DesktopRuntime.csproj
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
- net6.0;net461;netcoreapp2.0
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/Avalonia.Native/Properties/AssemblyInfo.cs b/src/Avalonia.Native/Properties/AssemblyInfo.cs
deleted file mode 100644
index d4766e45dc..0000000000
--- a/src/Avalonia.Native/Properties/AssemblyInfo.cs
+++ /dev/null
@@ -1,4 +0,0 @@
-using Avalonia.Native;
-using Avalonia.Platform;
-
-[assembly: ExportWindowingSubsystem(OperatingSystemType.OSX, 1, "AvaloniaNative", typeof(AvaloniaNativePlatform), nameof(AvaloniaNativePlatform.Initialize))]
diff --git a/src/Avalonia.PlatformSupport/AppBuilder.cs b/src/Avalonia.PlatformSupport/AppBuilder.cs
new file mode 100644
index 0000000000..136f1f39b3
--- /dev/null
+++ b/src/Avalonia.PlatformSupport/AppBuilder.cs
@@ -0,0 +1,20 @@
+using Avalonia.Controls;
+using Avalonia.PlatformSupport;
+
+namespace Avalonia
+{
+ ///
+ /// Initializes platform-specific services for an .
+ ///
+ public sealed class AppBuilder : AppBuilderBase
+ {
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ public AppBuilder()
+ : base(new StandardRuntimePlatform(),
+ builder => StandardRuntimePlatformServices.Register(builder.ApplicationType?.Assembly))
+ {
+ }
+ }
+}
diff --git a/src/Avalonia.PlatformSupport/Avalonia.PlatformSupport.csproj b/src/Avalonia.PlatformSupport/Avalonia.PlatformSupport.csproj
index be73d87e2c..e08dc5e194 100644
--- a/src/Avalonia.PlatformSupport/Avalonia.PlatformSupport.csproj
+++ b/src/Avalonia.PlatformSupport/Avalonia.PlatformSupport.csproj
@@ -6,6 +6,7 @@
+
diff --git a/src/Avalonia.Visuals/ApiCompatBaseline.txt b/src/Avalonia.Visuals/ApiCompatBaseline.txt
index 828ea1f184..943ad5d98e 100644
--- a/src/Avalonia.Visuals/ApiCompatBaseline.txt
+++ b/src/Avalonia.Visuals/ApiCompatBaseline.txt
@@ -114,6 +114,7 @@ CannotAddAbstractMembers : Member 'public Avalonia.Media.BaselineAlignment Avalo
MembersMustExist : Member 'public Avalonia.Media.GlyphRun Avalonia.Media.TextFormatting.TextShaper.ShapeText(Avalonia.Utilities.ReadOnlySlice, Avalonia.Media.Typeface, System.Double, System.Globalization.CultureInfo)' does not exist in the implementation but it does exist in the contract.
TypesMustExist : Type 'Avalonia.Media.TextFormatting.Unicode.BiDiClass' does not exist in the implementation but it does exist in the contract.
MembersMustExist : Member 'public Avalonia.Media.TextFormatting.Unicode.BiDiClass Avalonia.Media.TextFormatting.Unicode.Codepoint.BiDiClass.get()' does not exist in the implementation but it does exist in the contract.
+TypesMustExist : Type 'Avalonia.Platform.ExportRenderingSubsystemAttribute' does not exist in the implementation but it does exist in the contract.
InterfacesShouldHaveSameMembers : Interface member 'public void Avalonia.Platform.IDrawingContextImpl.DrawEllipse(Avalonia.Media.IBrush, Avalonia.Media.IPen, Avalonia.Rect)' is present in the implementation but not in the contract.
InterfacesShouldHaveSameMembers : Interface member 'public void Avalonia.Platform.IDrawingContextImpl.DrawText(Avalonia.Media.IBrush, Avalonia.Point, Avalonia.Platform.IFormattedTextImpl)' is present in the contract but not in the implementation.
MembersMustExist : Member 'public void Avalonia.Platform.IDrawingContextImpl.DrawText(Avalonia.Media.IBrush, Avalonia.Point, Avalonia.Platform.IFormattedTextImpl)' does not exist in the implementation but it does exist in the contract.
@@ -145,4 +146,4 @@ InterfacesShouldHaveSameMembers : Interface member 'public Avalonia.Media.GlyphR
MembersMustExist : Member 'public Avalonia.Media.GlyphRun Avalonia.Platform.ITextShaperImpl.ShapeText(Avalonia.Utilities.ReadOnlySlice, Avalonia.Media.Typeface, System.Double, System.Globalization.CultureInfo)' does not exist in the implementation but it does exist in the contract.
MembersMustExist : Member 'protected void Avalonia.Rendering.RendererBase.RenderFps(Avalonia.Platform.IDrawingContextImpl, Avalonia.Rect, System.Nullable)' does not exist in the implementation but it does exist in the contract.
MembersMustExist : Member 'public void Avalonia.Utilities.ReadOnlySlice..ctor(System.ReadOnlyMemory, System.Int32, System.Int32)' does not exist in the implementation but it does exist in the contract.
-Total Issues: 146
+Total Issues: 147
diff --git a/src/Avalonia.Visuals/Platform/ExportRenderingSubsystemAttribute.cs b/src/Avalonia.Visuals/Platform/ExportRenderingSubsystemAttribute.cs
deleted file mode 100644
index db157304f4..0000000000
--- a/src/Avalonia.Visuals/Platform/ExportRenderingSubsystemAttribute.cs
+++ /dev/null
@@ -1,27 +0,0 @@
-using System;
-
-namespace Avalonia.Platform
-{
- [AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true)]
- public class ExportRenderingSubsystemAttribute : Attribute
- {
- public ExportRenderingSubsystemAttribute(OperatingSystemType requiredOS, int priority, string name, Type initializationType, string initializationMethod,
- Type? environmentChecker = null)
- {
- Name = name;
- InitializationType = initializationType;
- InitializationMethod = initializationMethod;
- EnvironmentChecker = environmentChecker;
- RequiredOS = requiredOS;
- Priority = priority;
- }
-
- public string InitializationMethod { get; private set; }
- public Type? EnvironmentChecker { get; }
- public Type InitializationType { get; private set; }
- public string Name { get; private set; }
- public int Priority { get; private set; }
- public OperatingSystemType RequiredOS { get; private set; }
- public string? RequiresWindowingSubsystem { get; set; }
- }
-}
diff --git a/src/Windows/Avalonia.Direct2D1/Properties/AssemblyInfo.cs b/src/Windows/Avalonia.Direct2D1/Properties/AssemblyInfo.cs
index cdeb675bcd..89fd6c2dd8 100644
--- a/src/Windows/Avalonia.Direct2D1/Properties/AssemblyInfo.cs
+++ b/src/Windows/Avalonia.Direct2D1/Properties/AssemblyInfo.cs
@@ -1,9 +1,4 @@
using System.Runtime.CompilerServices;
-using Avalonia.Platform;
-using Avalonia.Direct2D1;
-
-[assembly: ExportRenderingSubsystem(OperatingSystemType.WinNT, 1, "Direct2D1", typeof(Direct2D1Platform), nameof(Direct2D1Platform.Initialize),
- typeof(Direct2DChecker))]
[assembly: InternalsVisibleTo("Avalonia.Direct2D1.RenderTests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c1bba1142285fe0419326fb25866ba62c47e6c2b5c1ab0c95b46413fad375471232cb81706932e1cef38781b9ebd39d5100401bacb651c6c5bbf59e571e81b3bc08d2a622004e08b1a6ece82a7e0b9857525c86d2b95fab4bc3dce148558d7f3ae61aa3a234086902aeface87d9dfdd32b9d2fe3c6dd4055b5ab4b104998bd87")]
[assembly: InternalsVisibleTo("Avalonia.Direct2D1.UnitTests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c1bba1142285fe0419326fb25866ba62c47e6c2b5c1ab0c95b46413fad375471232cb81706932e1cef38781b9ebd39d5100401bacb651c6c5bbf59e571e81b3bc08d2a622004e08b1a6ece82a7e0b9857525c86d2b95fab4bc3dce148558d7f3ae61aa3a234086902aeface87d9dfdd32b9d2fe3c6dd4055b5ab4b104998bd87")]
diff --git a/src/Windows/Avalonia.Win32/Properties/AssemblyInfo.cs b/src/Windows/Avalonia.Win32/Properties/AssemblyInfo.cs
deleted file mode 100644
index 30a3f71cad..0000000000
--- a/src/Windows/Avalonia.Win32/Properties/AssemblyInfo.cs
+++ /dev/null
@@ -1,4 +0,0 @@
-using Avalonia.Platform;
-using Avalonia.Win32;
-
-[assembly: ExportWindowingSubsystem(OperatingSystemType.WinNT, 1, "Win32", typeof(Win32Platform), nameof(Win32Platform.Initialize))]
diff --git a/tests/Avalonia.DesignerSupport.TestApp/Avalonia.DesignerSupport.TestApp.csproj b/tests/Avalonia.DesignerSupport.TestApp/Avalonia.DesignerSupport.TestApp.csproj
index 5358b71571..f4c6434a68 100644
--- a/tests/Avalonia.DesignerSupport.TestApp/Avalonia.DesignerSupport.TestApp.csproj
+++ b/tests/Avalonia.DesignerSupport.TestApp/Avalonia.DesignerSupport.TestApp.csproj
@@ -15,7 +15,6 @@
-
diff --git a/tests/Avalonia.Direct2D1.RenderTests/Avalonia.Direct2D1.RenderTests.csproj b/tests/Avalonia.Direct2D1.RenderTests/Avalonia.Direct2D1.RenderTests.csproj
index 4353b7b09c..cdadc3dcba 100644
--- a/tests/Avalonia.Direct2D1.RenderTests/Avalonia.Direct2D1.RenderTests.csproj
+++ b/tests/Avalonia.Direct2D1.RenderTests/Avalonia.Direct2D1.RenderTests.csproj
@@ -9,7 +9,6 @@
-
diff --git a/tests/Avalonia.Skia.RenderTests/Avalonia.Skia.RenderTests.csproj b/tests/Avalonia.Skia.RenderTests/Avalonia.Skia.RenderTests.csproj
index 41c76dcd83..5189e9335a 100644
--- a/tests/Avalonia.Skia.RenderTests/Avalonia.Skia.RenderTests.csproj
+++ b/tests/Avalonia.Skia.RenderTests/Avalonia.Skia.RenderTests.csproj
@@ -10,7 +10,6 @@
-