<_IsWindowsDesktopApp Condition="$(WindowsDesktopCoreAppLibrary.Contains('$(AssemblyName);'))">true</_IsWindowsDesktopApp>
<_IsAspNetCoreApp Condition="$(AspNetCoreAppLibrary.Contains('$(AssemblyName);'))">true</_IsAspNetCoreApp>
<_AssemblyInTargetingPack Condition="('$(IsNETCoreAppSrc)' == 'true' or '$(IsNetCoreAppRef)' == 'true' or '$(_IsAspNetCoreApp)' == 'true' or '$(_IsWindowsDesktopApp)' == 'true') and '$(TargetFrameworkIdentifier)' != '.NETFramework'">true</_AssemblyInTargetingPack>
- <!-- Assembly version do not get updated in non-netfx ref pack assemblies. -->
+ <!-- The assembly version gets updated when the assembly isn't part of a targeting pack. -->
<AssemblyVersion Condition="'$(_AssemblyInTargetingPack)' != 'true'">$(MajorVersion).$(MinorVersion).0.$(ServicingVersion)</AssemblyVersion>
</PropertyGroup>
</ItemGroup>
</Target>
- <Target Name="ValidateAssemblyVersionsInRefPack"
- Condition="'$(SkipValidateAssemblyVersion)' != 'true' and '$(_AssemblyInTargetingPack)' == 'true' and '$(PreReleaseVersionLabel)' == 'servicing'"
- AfterTargets="CoreCompile" >
- <Error Condition="'$(AssemblyVersion)' != '$(LastReleasedStableAssemblyVersion)'" Text="AssemblyVersion should match last released assembly version $(LastReleasedStableAssemblyVersion)" />
- </Target>
-
<Target Name="ValidateServicingVersionIsProperlySet"
Condition="'$(PreReleaseVersionLabel)' == 'servicing' and
'$(PackageUseIncrementalServicingVersion)' == 'true' and
<Project>
<Import Project="..\Directory.Build.props" />
<PropertyGroup>
- <AssemblyVersion>4.0.0.0</AssemblyVersion>
<StrongNameKeyId>ECMA</StrongNameKeyId>
</PropertyGroup>
</Project>
--- /dev/null
+<Project>
+ <Import Project="..\Directory.Build.targets" />
+ <PropertyGroup>
+ <!-- This assembly is inbox in .NETFramework, ensure that the .NETStandard assembly
+ remains <= the .NETFramework version -->
+ <AssemblyVersion Condition="'$(TargetFramework)' == 'netstandard2.0'">4.0.0.0</AssemblyVersion>
+ </PropertyGroup>
+</Project>
<Project>
<Import Project="..\Directory.Build.props" />
<PropertyGroup>
- <!-- AssemblyVersion is frozen to that which originally shipped in 2.1 -->
- <AssemblyVersion>4.0.0.0</AssemblyVersion>
<StrongNameKeyId>ECMA</StrongNameKeyId>
</PropertyGroup>
</Project>
<Project>
<Import Project="..\Directory.Build.props" />
<PropertyGroup>
- <!-- this assembly is inbox in desktop, do not version it unless you
- plan on shipping a new desktop version out of band. Instead add API
- to a different assembly. -->
- <AssemblyVersion>4.0.0.0</AssemblyVersion>
<StrongNameKeyId>ECMA</StrongNameKeyId>
<SupportedOSPlatforms>windows</SupportedOSPlatforms>
</PropertyGroup>
--- /dev/null
+<Project>
+ <Import Project="..\Directory.Build.targets" />
+ <PropertyGroup>
+ <!-- This assembly is inbox in .NETFramework, ensure that the .NETStandard assembly
+ remains <= the .NETFramework version -->
+ <AssemblyVersion Condition="'$(TargetFramework)' == 'netstandard2.0'">4.0.0.0</AssemblyVersion>
+ </PropertyGroup>
+</Project>
<Project>
<Import Project="..\Directory.Build.props" />
<PropertyGroup>
- <!-- this assembly is inbox in desktop, do not version it unless you
- plan on shipping a new desktop version out of band. Instead add API
- to a different assembly. -->
- <AssemblyVersion>4.0.0.0</AssemblyVersion>
<StrongNameKeyId>Microsoft</StrongNameKeyId>
<IncludePlatformAttributes>true</IncludePlatformAttributes>
<UnsupportedOSPlatforms>browser;android;ios;tvos</UnsupportedOSPlatforms>
--- /dev/null
+<Project>
+ <Import Project="..\Directory.Build.targets" />
+ <PropertyGroup>
+ <!-- This assembly is inbox in .NETFramework, ensure that the .NETStandard assembly
+ remains <= the .NETFramework version -->
+ <AssemblyVersion Condition="'$(TargetFramework)' == 'netstandard2.0'">4.0.0.0</AssemblyVersion>
+ </PropertyGroup>
+</Project>
<Project>
<Import Project="..\Directory.Build.props" />
<PropertyGroup>
- <!-- this assembly is inbox in desktop, do not version it unless you
- plan on shipping a new desktop version out of band. Instead add API
- to a different assembly. -->
- <AssemblyVersion>4.0.0.0</AssemblyVersion>
- <!-- Since this assembly version is pinned, we don't want to validate that it matches
- the expected assembly version on the targeting pack. -->
- <SkipValidateAssemblyVersion>true</SkipValidateAssemblyVersion>
<StrongNameKeyId>Microsoft</StrongNameKeyId>
<SupportedOSPlatforms>windows</SupportedOSPlatforms>
</PropertyGroup>
--- /dev/null
+<Project>
+ <Import Project="..\Directory.Build.targets" />
+ <PropertyGroup>
+ <!-- This assembly is inbox in .NETFramework, ensure that the .NETStandard assembly
+ remains <= the .NETFramework version -->
+ <AssemblyVersion Condition="'$(TargetFramework)' == 'netstandard2.0'">4.0.0.0</AssemblyVersion>
+ </PropertyGroup>
+</Project>
<Project>
<Import Project="..\Directory.Build.props" />
<PropertyGroup>
- <!-- this assembly is inbox in desktop, do not version it unless you
- plan on shipping a new desktop version out of band. Instead add API
- to a different assembly. -->
- <AssemblyVersion>4.0.0.0</AssemblyVersion>
<StrongNameKeyId>Microsoft</StrongNameKeyId>
<SupportedOSPlatforms>windows</SupportedOSPlatforms>
</PropertyGroup>
--- /dev/null
+<Project>
+ <Import Project="..\Directory.Build.targets" />
+ <PropertyGroup>
+ <!-- This assembly is inbox in .NETFramework, ensure that the .NETStandard assembly
+ remains <= the .NETFramework version -->
+ <AssemblyVersion Condition="'$(TargetFramework)' == 'netstandard2.0'">4.0.0.0</AssemblyVersion>
+ </PropertyGroup>
+</Project>
<Project>
<Import Project="..\Directory.Build.props" />
<PropertyGroup>
- <AssemblyVersion>4.0.3.0</AssemblyVersion>
<StrongNameKeyId>ECMA</StrongNameKeyId>
</PropertyGroup>
</Project>
--- /dev/null
+<Project>
+ <Import Project="..\Directory.Build.targets" />
+ <PropertyGroup>
+ <!-- This assembly is inbox in .NETFramework, ensure that the .NETStandard assembly
+ remains <= the .NETFramework version.
+ 4.0.3.0 breaks this causing https://github.com/dotnet/runtime/issues/84320 -->
+ <AssemblyVersion Condition="'$(TargetFramework)' == 'netstandard2.0'">4.0.3.0</AssemblyVersion>
+ </PropertyGroup>
+</Project>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
- <!-- this assembly is inbox in desktop, do not version it unless you
- plan on shipping a new desktop version out of band. Instead add API
- to a different assembly. -->
- <AssemblyVersion>4.0.0.0</AssemblyVersion>
<TargetFrameworks>$(NetCoreAppCurrent);$(NetCoreAppPrevious);$(NetCoreAppMinimum);netstandard2.1;netstandard2.0</TargetFrameworks>
</PropertyGroup>
<Project>
<Import Project="..\Directory.Build.props" />
<PropertyGroup>
- <!-- this assembly is inbox in desktop, do not version it unless you
- plan on shipping a new desktop version out of band. Instead add API
- to a different assembly. -->
- <AssemblyVersion>4.0.0.0</AssemblyVersion>
<StrongNameKeyId>Microsoft</StrongNameKeyId>
<IncludePlatformAttributes>true</IncludePlatformAttributes>
</PropertyGroup>
--- /dev/null
+<Project>
+ <Import Project="..\Directory.Build.targets" />
+ <PropertyGroup>
+ <!-- This assembly is inbox in .NETFramework, ensure that the .NETStandard assembly
+ remains <= the .NETFramework version -->
+ <AssemblyVersion Condition="'$(TargetFramework)' == 'netstandard2.0'">4.0.0.0</AssemblyVersion>
+ </PropertyGroup>
+</Project>
<Project>
<Import Project="..\Directory.Build.props" />
<PropertyGroup>
- <!-- this assembly is inbox in desktop, do not version it unless you
- plan on shipping a new desktop version out of band. Instead add API
- to a different assembly. -->
- <AssemblyVersion>4.0.0.0</AssemblyVersion>
<StrongNameKeyId>MicrosoftShared</StrongNameKeyId>
<SupportedOSPlatforms>windows</SupportedOSPlatforms>
</PropertyGroup>
--- /dev/null
+<Project>
+ <Import Project="..\Directory.Build.targets" />
+ <PropertyGroup>
+ <!-- This assembly is inbox in .NETFramework, ensure that the .NETStandard assembly
+ remains <= the .NETFramework version -->
+ <AssemblyVersion Condition="'$(TargetFramework)' == 'netstandard2.0'">4.0.0.0</AssemblyVersion>
+ </PropertyGroup>
+</Project>