Skip to content

Commit

Permalink
Create transport package for API docs (#49969)
Browse files Browse the repository at this point in the history
* Create transport package for API docs

* Build.props

* Skip restore

* Fixup

* No ProjRef

* Update Microsoft.Internal.Aspnetcore.DotNetApiDocs.Transport.csproj

* Update Helix.targets

* Update Helix.targets

* Update Microsoft.Internal.Aspnetcore.DotNetApiDocs.Transport.csproj

* Update Microsoft.Internal.Aspnetcore.DotNetApiDocs.Transport.csproj

* Feedback
  • Loading branch information
wtgodbe authored Aug 10, 2023
1 parent e83cb59 commit 3546c16
Showing 9 changed files with 266 additions and 9 deletions.
1 change: 1 addition & 0 deletions Directory.Build.props
Original file line number Diff line number Diff line change
@@ -239,6 +239,7 @@
<Import Project="eng\RequiresDelayedBuildProjects.props" />
<Import Project="eng\SharedFramework.Local.props" />
<Import Project="eng\SharedFramework.External.props" />
<Import Project="eng\ShippingAssemblies.props" />
<Import Project="eng\targets\Cpp.Common.props" Condition="'$(MSBuildProjectExtension)' == '.vcxproj'" />
<Import Project="eng\targets\CSharp.Common.props" Condition="'$(MSBuildProjectExtension)' == '.csproj'" />
<Import Project="eng\targets\Wix.Common.props" Condition="'$(MSBuildProjectExtension)' == '.wixproj'" />
2 changes: 1 addition & 1 deletion Directory.Build.targets
Original file line number Diff line number Diff line change
@@ -156,7 +156,7 @@

<!-- Properties for Package Validation -->
<PropertyGroup Condition="'$(ExcludeFromSourceBuild)' != 'true'">
<EnablePackageValidation>true</EnablePackageValidation>
<EnablePackageValidation Condition="'$(EnablePackageValidation)' == ''">true</EnablePackageValidation>
<DisablePackageBaselineValidation Condition="'$(IsServicingBuild)' != 'true'">true</DisablePackageBaselineValidation>
<GenerateCompatibilitySuppressionFile>true</GenerateCompatibilitySuppressionFile>
</PropertyGroup>
25 changes: 25 additions & 0 deletions eng/CodeGen.proj
Original file line number Diff line number Diff line change
@@ -25,6 +25,9 @@
<_SharedFrameworkAndPackageRef Include="@(_ProjectReferenceProvider->WithMetadataValue('IsAspNetCoreApp','true')->WithMetadataValue('IsPackable', 'true'))" />
<_SharedFrameworkRef Include="@(_ProjectReferenceProvider->WithMetadataValue('IsAspNetCoreApp','true')->WithMetadataValue('IsPackable', 'false'))" />
<_TrimmableProject Include="@(_ProjectReferenceProvider->WithMetadataValue('IsTrimmable', 'true'))" />
<_ShippingAssemblyWithDupes Include="@(_ProjectReferenceProvider->WithMetadataValue('IsAspNetCoreApp', 'true'))" />
<_ShippingAssemblyWithDupes Include="@(_ProjectReferenceProvider->WithMetadataValue('IsShippingPackage', 'true'))" />
<_ShippingAssembly Include="@(_ShippingAssemblyWithDupes->Distinct())" />
</ItemGroup>

<PropertyGroup>
@@ -49,6 +52,28 @@
Command="echo '$(ProjectListContent.Replace('\t','\\t'))' > $(ProjectListFile)" />
<Message Importance="High" Text="Generated $(ProjectListFile)" />

<PropertyGroup>
<ShippingAssembliesFile>$(MSBuildThisFileDirectory)ShippingAssemblies.props</ShippingAssembliesFile>
<ShippingAssembliesContent><![CDATA[<!--
This file is automatically generated. Run `./eng/scripts/GenerateProjectList.ps1` to update.
This file contains a list of all assemblies shipped from this repo, either via the Shared Framework or Nuget packages (or both).
-->
<Project>
<ItemGroup>
@(_ShippingAssembly->'<AspNetCoreShippingAssembly Include="%(Identity)" />', '$([System.Environment]::NewLine) ')
</ItemGroup>
</Project>
]]></ShippingAssembliesContent>
</PropertyGroup>

<!-- Workaround https://github.com/Microsoft/msbuild/issues/1024 -->
<WriteLinesToFile Condition="'$(OS)' == 'Windows_NT'"
File="$(ShippingAssembliesFile)" Lines="$([MSBuild]::Escape($(ShippingAssembliesContent)))" Overwrite="true" />
<Exec Condition="'$(OS)' != 'Windows_NT'"
Command="echo '$(ShippingAssembliesContent.Replace('\t','\\t'))' > $(ShippingAssembliesFile)" />
<Message Importance="High" Text="Generated $(ShippingAssembliesFile)" />

<PropertyGroup>
<SharedFxDepList>$(MSBuildThisFileDirectory)SharedFramework.Local.props</SharedFxDepList>
<SharedFxDepListContent>
1 change: 1 addition & 0 deletions eng/RequiresDelayedBuildProjects.props
Original file line number Diff line number Diff line change
@@ -8,6 +8,7 @@
-->
<Project>
<ItemGroup>
<RequiresDelayedBuild Include="$(RepoRoot)src\Framework\Microsoft.Internal.Aspnetcore.DotNetApiDocs.Transport\src\Microsoft.Internal.Aspnetcore.DotNetApiDocs.Transport.csproj" />
<RequiresDelayedBuild Include="$(RepoRoot)src\DataProtection\DataProtection\test\Microsoft.AspNetCore.DataProtection.TrimmingTests\Microsoft.AspNetCore.DataProtection.TrimmingTests.proj" />
<RequiresDelayedBuild Include="$(RepoRoot)src\DefaultBuilder\test\Microsoft.AspNetCore.NativeAotTests\Microsoft.AspNetCore.NativeAotTests.proj" />
<RequiresDelayedBuild Include="$(RepoRoot)src\DefaultBuilder\test\Microsoft.AspNetCore.TrimmingTests\Microsoft.AspNetCore.TrimmingTests.proj" />
163 changes: 163 additions & 0 deletions eng/ShippingAssemblies.props
Original file line number Diff line number Diff line change
@@ -0,0 +1,163 @@
<!--
This file is automatically generated. Run `./eng/scripts/GenerateProjectList.ps1` to update.
This file contains a list of all assemblies shipped from this repo, either via the Shared Framework or Nuget packages (or both).
-->
<Project>
<ItemGroup>
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.DataProtection.Abstractions" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Cryptography.Internal" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Cryptography.KeyDerivation" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.DataProtection" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.DataProtection.Extensions" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Antiforgery" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Hosting.Abstractions" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Hosting" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Hosting.Server.Abstractions" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Authentication.Abstractions" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Authentication.Core" />
<AspNetCoreShippingAssembly Include="Microsoft.Net.Http.Headers" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Http.Abstractions" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Http.Extensions" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Http.Features" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Http.Results" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Http" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Metadata" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Routing.Abstractions" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Routing" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.WebUtilities" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Html.Abstractions" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Identity" />
<AspNetCoreShippingAssembly Include="Microsoft.Extensions.Identity.Core" />
<AspNetCoreShippingAssembly Include="Microsoft.Extensions.Identity.Stores" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Connections.Abstractions" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Server.HttpSys" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Server.IISIntegration" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Server.IIS" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Server.Kestrel.Core" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Server.Kestrel" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Server.Kestrel.Transport.NamedPipes" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Server.Kestrel.Transport.Quic" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Authentication.BearerToken" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Authentication.Cookies" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Authentication" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Authentication.OAuth" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Authorization" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Authorization.Policy" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.CookiePolicy" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Cors" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Diagnostics.Abstractions" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Diagnostics" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Diagnostics.HealthChecks" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.HostFiltering" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.HttpLogging" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.HttpOverrides" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.HttpsPolicy" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Localization.Routing" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Localization" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.OutputCaching" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.RateLimiting" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.RequestDecompression" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.ResponseCaching.Abstractions" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.ResponseCaching" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.ResponseCompression" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Rewrite" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Session" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.StaticFiles" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.WebSockets" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Razor.Runtime" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Razor" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Mvc.Abstractions" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Mvc.ApiExplorer" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Mvc.Core" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Mvc.Cors" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Mvc.DataAnnotations" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Mvc.Formatters.Json" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Mvc.Formatters.Xml" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Mvc.Localization" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Mvc.RazorPages" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Mvc.Razor" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Mvc.TagHelpers" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Mvc.ViewFeatures" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Mvc" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Http.Connections.Common" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Http.Connections" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.SignalR.Protocols.Json" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.SignalR.Common" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.SignalR.Core" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.SignalR" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Components.Authorization" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Components" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Components.Endpoints" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Components.Forms" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Components.Server" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Components.Web" />
<AspNetCoreShippingAssembly Include="Microsoft.Extensions.FileProviders.Embedded" />
<AspNetCoreShippingAssembly Include="Microsoft.Extensions.Configuration.KeyPerFile" />
<AspNetCoreShippingAssembly Include="Microsoft.Extensions.Localization.Abstractions" />
<AspNetCoreShippingAssembly Include="Microsoft.Extensions.Localization" />
<AspNetCoreShippingAssembly Include="Microsoft.Extensions.ObjectPool" />
<AspNetCoreShippingAssembly Include="Microsoft.JSInterop" />
<AspNetCoreShippingAssembly Include="Microsoft.Extensions.WebEncoders" />
<AspNetCoreShippingAssembly Include="Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions" />
<AspNetCoreShippingAssembly Include="Microsoft.Extensions.Diagnostics.HealthChecks" />
<AspNetCoreShippingAssembly Include="Microsoft.Extensions.Features" />
<AspNetCoreShippingAssembly Include="Microsoft.Extensions.Caching.SqlServer" />
<AspNetCoreShippingAssembly Include="Microsoft.Extensions.Caching.StackExchangeRedis" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.JsonPatch" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.DataProtection.EntityFrameworkCore" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.DataProtection.StackExchangeRedis" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.TestHost" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Hosting.WindowsServices" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Owin" />
<AspNetCoreShippingAssembly Include="Microsoft.Extensions.Http.Polly" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Identity.Specification.Tests" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Identity.UI" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Authentication.Certificate" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Authentication.Facebook" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Authentication.Google" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Authentication.JwtBearer" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Authentication.MicrosoftAccount" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Authentication.Negotiate" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Authentication.OpenIdConnect" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Authentication.Twitter" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Authentication.WsFederation" />
<AspNetCoreShippingAssembly Include="Microsoft.Extensions.ApiDescription.Client" />
<AspNetCoreShippingAssembly Include="Microsoft.Extensions.ApiDescription.Server" />
<AspNetCoreShippingAssembly Include="Microsoft.Extensions.Logging.AzureAppServices" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.ConcurrencyLimiter" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.HeaderPropagation" />
<AspNetCoreShippingAssembly Include="Microsoft.Extensions.Diagnostics.HealthChecks.EntityFrameworkCore" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.MiddlewareAnalysis" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.SpaProxy" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.SpaServices.Extensions" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Mvc.Testing" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.AzureAppServices.HostingStartup" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.AzureAppServicesIntegration" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.SignalR.Client.Core" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.SignalR.Client" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Http.Connections.Client" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.SignalR.Protocols.MessagePack" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.SignalR.Protocols.NewtonsoftJson" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.SignalR.Specification.Tests" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.SignalR.StackExchangeRedis" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Components.CustomElements" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Components.QuickGrid.EntityFrameworkAdapter" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Components.QuickGrid" />
<AspNetCoreShippingAssembly Include="Microsoft.Authentication.WebAssembly.Msal" />
<AspNetCoreShippingAssembly Include="Microsoft.JSInterop.WebAssembly" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Components.WebAssembly.Server" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Components.WebAssembly.Authentication" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Components.WebAssembly" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Components.WebView" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Grpc.JsonTranscoding" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.Grpc.Swagger" />
<AspNetCoreShippingAssembly Include="Microsoft.AspNetCore.OpenApi" />
</ItemGroup>
</Project>
1 change: 1 addition & 0 deletions eng/targets/ResolveReferences.targets
Original file line number Diff line number Diff line change
@@ -319,6 +319,7 @@
<IsPackable>$([MSBuild]::ValueOrDefault($(IsPackable),'false'))</IsPackable>
<ProjectFileRelativePath>$([MSBuild]::MakeRelative($(RepoRoot), $(MSBuildProjectFullPath)))</ProjectFileRelativePath>
<IsTrimmable>$([MSBuild]::ValueOrDefault($(IsTrimmable),'false'))</IsTrimmable>
<IsShippingPackage>$([MSBuild]::ValueOrDefault($(IsShippingPackage),'false'))</IsShippingPackage>

<!-- True if the project may be referenced using a @(Reference) item. -->
<IsProjectReferenceProvider>$([MSBuild]::ValueOrDefault($(IsProjectReferenceProvider),'false'))</IsProjectReferenceProvider>
4 changes: 0 additions & 4 deletions src/Framework/App.Ref/src/CompatibilitySuppressions.xml
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- https://learn.microsoft.com/en-us/dotnet/fundamentals/package-validation/diagnostic-ids -->
<Suppressions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Suppression>
<DiagnosticId>PKV004</DiagnosticId>
<Target>net7.0</Target>
</Suppression>
<Suppression>
<DiagnosticId>PKV004</DiagnosticId>
<Target>net8.0</Target>
4 changes: 0 additions & 4 deletions src/Framework/App.Runtime/src/CompatibilitySuppressions.xml
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- https://learn.microsoft.com/en-us/dotnet/fundamentals/package-validation/diagnostic-ids -->
<Suppressions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Suppression>
<DiagnosticId>PKV0001</DiagnosticId>
<Target>net7.0</Target>
</Suppression>
<Suppression>
<DiagnosticId>PKV0001</DiagnosticId>
<Target>net8.0</Target>
Loading

0 comments on commit 3546c16

Please sign in to comment.