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

feature/RM-8921-Support-for-NET-9 #1265

Open
wants to merge 4 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Build/ProjectFeatures/UseNetOnly.props
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project>

<PropertyGroup>
<TargetFrameworks>net8.0-windows</TargetFrameworks>
<TargetFrameworks>net8.0-windows;net9.0-windows</TargetFrameworks>
</PropertyGroup>

</Project>
2 changes: 1 addition & 1 deletion Build/ProjectTypes/Library.props
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<NoWarn>1591</NoWarn>
<GenerateDocumentationFile>True</GenerateDocumentationFile>
<IsPackable>True</IsPackable>
<TargetFrameworks>net8.0-windows</TargetFrameworks>
<TargetFrameworks>net8.0-windows;net9.0-windows</TargetFrameworks>
<DefineConstants>$(DefineConstants);JETBRAINS_ANNOTATIONS;</DefineConstants>
<Nullable>enable</Nullable>
</PropertyGroup>
Expand Down
2 changes: 1 addition & 1 deletion Build/ProjectTypes/Test.props
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<NoWarn>0067;0649;0169</NoWarn>
<GenerateDocumentationFile>False</GenerateDocumentationFile>
<IsPackable>False</IsPackable>
<TargetFrameworks>net8.0-windows</TargetFrameworks>
<TargetFrameworks>net8.0-windows;net9.0-windows</TargetFrameworks>
<DefineConstants>$(DefineConstants);</DefineConstants>
<Nullable>disable</Nullable>
<EnableUnsafeBinaryFormatterSerialization>true</EnableUnsafeBinaryFormatterSerialization>
Expand Down
2 changes: 2 additions & 0 deletions Build/ProjectTypes/WebLibrary.props
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@

<PropertyGroup>
<UseWebForms>true</UseWebForms>
<!-- WFO1000 - Ignore missing DesignerSerializationVisibility attribute used for designer support -->
<NoWarn>$(NoWarn);WFO1000</NoWarn>
</PropertyGroup>

<ItemGroup>
Expand Down
18 changes: 17 additions & 1 deletion Directory.Packages.props
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,23 @@
</ItemGroup>
<ItemGroup>
<!-- Transitive pinned packages - check if they are still needed on package upgrades -->
<PackageVersion Include="System.Formats.Asn1" Version="8.0.1" />
<PackageVersion Include="System.Formats.Asn1" Version="8.0.1" Condition="'$(IsPackable)' == 'false'" />
</ItemGroup>
</When>
<When Condition="$(TargetFramework.StartsWith('net9.0'))">
<ItemGroup>
<PackageVersion Include="Microsoft.Extensions.Diagnostics.Testing" Version="9.0.0-preview.9.24507.7" />
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="9.0.0-rc.2.24473.5" />
<PackageVersion Include="Microsoft.Extensions.Logging" Version="9.0.0-rc.2.24473.5" />
<PackageVersion Include="Microsoft.Extensions.Logging.Abstractions" Version="9.0.0-rc.2.24473.5" />
<PackageVersion Include="Microsoft.Extensions.Options.DataAnnotations" Version="9.0.0-rc.2.24473.5" />
<PackageVersion Include="System.CodeDom" Version="9.0.0-rc.2.24473.5" />
<PackageVersion Include="System.Configuration.ConfigurationManager" Version="9.0.0-rc.2.24473.5" />
<PackageVersion Include="System.Resources.Extensions" Version="9.0.0-rc.2.24473.5" />
</ItemGroup>
<ItemGroup>
<!-- Transitive pinned packages - check if they are still needed on package upgrades -->
<PackageVersion Include="System.Formats.Asn1" Version="9.0.0-rc.2.24473.5" Condition="'$(IsPackable)' == 'false'" />
</ItemGroup>
</When>
</Choose>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,9 @@ private class Test : CSharpAnalyzerTest<TAnalyzer, DefaultVerifier>
{
}

private static readonly Lazy<ReferenceAssemblies> s_net80 =
new(() => new ReferenceAssemblies("net8.0", new PackageIdentity("Microsoft.NETCore.App.Ref", "8.0.0"), Path.Combine("ref", "net8.0")));
// Workaround when .NET version is not yet available as a ReferenceAsseblies entry.
private static readonly Lazy<ReferenceAssemblies> s_net100 =
new(() => new ReferenceAssemblies("net10.0", new PackageIdentity("Microsoft.NETCore.App.Ref", "10.0.0"), Path.Combine("ref", "net10.0")));

public static DiagnosticResult Diagnostic (DiagnosticDescriptor desc) => CSharpAnalyzerVerifier<TAnalyzer, DefaultVerifier>.Diagnostic(desc);

Expand Down Expand Up @@ -70,8 +71,9 @@ private static ReferenceAssemblies GetReferenceAssemblies (Assembly assembly)
{
return assembly.GetCustomAttribute<TargetFrameworkAttribute>()!.FrameworkName switch
{
// RM-8930 Previous syntax for when the assemblies were easily accessible: ".NETCoreApp,Version=v6.0" => ReferenceAssemblies.Net.Net60
".NETCoreApp,Version=v8.0" => s_net80.Value,
".NETCoreApp,Version=v8.0" => ReferenceAssemblies.Net.Net80,
".NETCoreApp,Version=v9.0" => ReferenceAssemblies.Net.Net90,
".NETCoreApp,Version=v10.0" => s_net100.Value,
var frameworkName => throw new NotSupportedException($"'{frameworkName}' is not supported.")
};
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
// along with re-motion; if not, see http://www.gnu.org/licenses.
//
using System;
using System.ComponentModel;
using System.Web.UI;
using Remotion.Utilities;

Expand Down Expand Up @@ -47,12 +48,14 @@ protected override void OnInit (EventArgs e)
Page.RegisterRequiresControlState(this);
}

[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
public string? ValueInViewState
{
get { return _valueInViewState; }
set { _valueInViewState = value; }
}

[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
public string? ValueInControlState
{
get { return _valueInControlState; }
Expand Down
2 changes: 1 addition & 1 deletion Remotion/ObjectBinding/Sample/ObjectBinding.Sample.csproj
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<ProjectType>Library</ProjectType>
<ProjectType>WebLibrary</ProjectType>
<UseWebForms>true</UseWebForms>
</PropertyGroup>
<Import Project="..\..\..\Build\Shared.build.props" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
// along with re-motion; if not, see http://www.gnu.org/licenses.
//
using System;
using System.ComponentModel;

namespace Remotion.ObjectBinding.UnitTests.BusinessObjectReferenceDataSourceBaseTests.TestDomain
{
Expand All @@ -32,6 +33,7 @@ public TestableBusinessObjectReferenceDataSource (IBusinessObjectDataSource refe
_referenceProperty = referenceProperty;
}

[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
public string ID { get; set; }

public override IBusinessObjectReferenceProperty ReferenceProperty
Expand All @@ -44,6 +46,7 @@ public override IBusinessObjectDataSource ReferencedDataSource
get { return _referencedDataSource; }
}

[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
public override DataSourceMode Mode
{
get { return _mode; }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
// along with re-motion; if not, see http://www.gnu.org/licenses.
//
using System;
using System.ComponentModel;

namespace Remotion.ObjectBinding.UnitTests
{
Expand All @@ -34,12 +35,14 @@ public override IBusinessObjectClass BusinessObjectClass
get { return _businessObjectClass; }
}

[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
public override IBusinessObject BusinessObject
{
get { return _BusinessObject; }
set { _BusinessObject = value; }
}

[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
public override DataSourceMode Mode
{
get { return _mode; }
Expand Down
3 changes: 3 additions & 0 deletions Remotion/ObjectBinding/Web.UnitTests/StubDataSource.cs
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
// along with re-motion; if not, see http://www.gnu.org/licenses.
//
using System;
using System.ComponentModel;
using Remotion.Utilities;

namespace Remotion.ObjectBinding.Web.UnitTests
Expand All @@ -30,13 +31,15 @@ public StubDataSource (IBusinessObjectClass businessObjectClass)
_businessObjectClass = businessObjectClass;
}

[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
public override IBusinessObject BusinessObject { get; set; }

public override IBusinessObjectClass BusinessObjectClass
{
get { return _businessObjectClass; }
}

[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
public override DataSourceMode Mode { get; set; }
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ public BocReferenceValueMock (IWebServiceFactory webServiceFactory)
{
}

[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
public new string InternalValue
{
get { return base.InternalValue; }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
//
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Web.UI.WebControls;
using Remotion.ObjectBinding.BusinessObjectPropertyConstraints;
Expand All @@ -32,6 +33,7 @@ public class TestableBusinessObjectBoundEditableWebControl : BusinessObjectBound
return base.SaveValueToDomainModel();
}

[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
public new object Value
{
get { return _value; }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
// along with re-motion; if not, see http://www.gnu.org/licenses.
//
using System;
using System.ComponentModel;

namespace Remotion.ObjectBinding.Web.UnitTests.UI.Controls
{
Expand All @@ -27,13 +28,15 @@ public StubDataSource (IBusinessObjectClass businessObjectClass)
_businessObjectClass = businessObjectClass;
}

[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
public override IBusinessObject BusinessObject { get; set; }

public override IBusinessObjectClass BusinessObjectClass
{
get { return _businessObjectClass; }
}

[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
public override DataSourceMode Mode { get; set; }
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,9 @@ private class Test : CSharpAnalyzerTest<TAnalyzer, DefaultVerifier>
{
}

private static readonly Lazy<ReferenceAssemblies> s_net80 =
new(() => new ReferenceAssemblies("net8.0", new PackageIdentity("Microsoft.NETCore.App.Ref", "8.0.0"), Path.Combine("ref", "net8.0")));
// Workaround when .NET version is not yet available as a ReferenceAsseblies entry.
private static readonly Lazy<ReferenceAssemblies> s_net100 =
new(() => new ReferenceAssemblies("net10.0", new PackageIdentity("Microsoft.NETCore.App.Ref", "10.0.0"), Path.Combine("ref", "net10.0")));

public static DiagnosticResult Diagnostic () => CSharpAnalyzerVerifier<TAnalyzer, DefaultVerifier>.Diagnostic();

Expand Down Expand Up @@ -68,8 +69,9 @@ private static ReferenceAssemblies GetReferenceAssemblies (Assembly assembly)
{
return assembly.GetCustomAttribute<TargetFrameworkAttribute>()!.FrameworkName switch
{
// RM-8930 Previous syntax for when the assemblies were easily accessible: ".NETCoreApp,Version=v6.0" => ReferenceAssemblies.Net.Net60
".NETCoreApp,Version=v8.0" => s_net80.Value,
".NETCoreApp,Version=v8.0" => ReferenceAssemblies.Net.Net80,
".NETCoreApp,Version=v9.0" => ReferenceAssemblies.Net.Net90,
".NETCoreApp,Version=v10.0" => s_net100.Value,
var frameworkName => throw new NotSupportedException($"'{frameworkName}' is not supported.")
};
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
// along with re-motion; if not, see http://www.gnu.org/licenses.
//
using System;
using System.ComponentModel;
using System.Web.UI;
using Remotion.Development.Web.UnitTesting.AspNetFramework;
using Remotion.Utilities;
Expand Down Expand Up @@ -63,8 +64,10 @@ public bool IsInitialized
get { return _lazyInitializationContainer.IsInitialized; }
}

[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
public ControlReplacer Replacer { get; set; }

[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
public Tuple<ControlReplacer, IStateModificationStrategy> OnInitParameters { get; set; }
}
}
2 changes: 1 addition & 1 deletion global.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"sdk": {
"version": "8.0.0",
"version": "9.0.0",
"rollForward": "latestFeature",
"allowPrerelease": true
}
Expand Down