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

Update branding to 3.1.8 #24709

Merged
merged 12 commits into from
Aug 12, 2020
Merged

Update branding to 3.1.8 #24709

merged 12 commits into from
Aug 12, 2020

Conversation

dougbu
Copy link
Member

@dougbu dougbu commented Aug 8, 2020

!!! Include code merge and baseline generation before merge !!!

Tratcher and others added 6 commits July 16, 2020 21:37
This is the 3.1 version of https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore/pullrequest/9014.

The concerns in 3.1 are slightly different than prior versions due to a significant redesign in how the response body was handled.

In 2.1 very few components implemented IHttpSendFileFeature, and most of those that did would eagerly terminate if the request aborted (e.g. HttpSys server). We mainly had to be concerned about the fallback code that did a copy loop when IHttpSendFileFeature wasn't available.

In 3.x the response body Stream, PipeWriter, and SendFileAsync were consolidated onto the new IHttpResponseBodyFeature. Now all servers and component shims support all three ways to send data and we can't make any assumptions about how eagerly they terminate. E.g. many components implemented SendFileAsync using a fallback copy loop, and these components don't have access to RequestAborted to eagerly terminate. This means that in 3.1 we need to pass the RequestAborted token when calling IHttpSendFileFeature.SendFileAsync, as well as any copy loops that have access to the token.

I've primarily fixed the HttpResponse.SendFileAsync extension methods and made sure the other affected components call through here.

[Infrastructure side note]
This commit needs to be rebased on internal/release/3.1 before merging. That branch can't be built locally so I developed this fix based on release/3.1 instead.
The 3.1 PR builds aren't working so I missed some new test failures caused by my prior change.
https://dev.azure.com/dnceng/internal/_build/results?buildId=734369&view=ms.vss-test-web.build-test-results-tab

HttpSys has some odd behavior when you call SendFileAsync multiple times on an aborted response. The first time throws an OperationCancelledException, but the second time throws an ObjectDisposedException. This only happens if you enable HttpSysOptions.ThrowWriteExceptions and pass in a cancelled token.
https://github.com/dotnet/aspnetcore/blob/472fc5058ecbddd4cd546a40628ec5a0545b8125/src/Servers/HttpSys/src/RequestProcessing/ResponseBody.cs#L577

I'm not aware of any scenarios where SendFileAsync is called multiple times like this, so for now I'm only fixing up the tests.
Create the GCHandle per operation and Free it when resetting the ValueTaskSource for re-use.
…g/internal/dotnet-aspnetcore-tooling

This pull request updates the following dependencies

[marker]: <> (Begin:7bf32a0c-3505-43af-42b0-08d79559e63d)
## From https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore-tooling
- **Subscription**: 7bf32a0c-3505-43af-42b0-08d79559e63d
- **Build**: 20200721.7
- **Date Produced**: 7/22/2020 4:18 AM
- **Commit**: 1c22292bc7fca352074d8862cf39fbdb8647f208
- **Branch**: refs/heads/internal/release/3.1
- **Updates**:
  - **Microsoft.AspNetCore.Razor.Language**: from 3.1.6 to 3.1.7
  - **Microsoft.CodeAnalysis.Razor**: from 3.1.6 to 3.1.7
  - **Microsoft.NET.Sdk.Razor**: from 3.1.6 to 3.1.7
  - **Microsoft.AspNetCore.Mvc.Razor.Extensions**: from 3.1.6 to 3.1.7

[marker]: <> (End:7bf32a0c-3505-43af-42b0-08d79559e63d)
…g/internal/dotnet-efcore

This pull request updates the following dependencies

[marker]: <> (Begin:Coherency Updates)
## Coherency Updates

The following updates ensure that dependencies with a *CoherentParentDependency*
attribute were produced in a build used as input to the parent dependency's build.
See [Dependency Description Format](https://github.com/dotnet/arcade/blob/master/Documentation/DependencyDescriptionFormat.md#dependency-description-overview)

[DependencyUpdate]: <> (Begin)

- **Coherency Updates**:
  - **Microsoft.AspNetCore.Analyzer.Testing**: from 3.1.6-servicing.20316.5 to 3.1.7-servicing.20371.8 (parent: Microsoft.EntityFrameworkCore)
  - **Microsoft.AspNetCore.BenchmarkRunner.Sources**: from 3.1.6-servicing.20316.5 to 3.1.7-servicing.20371.8 (parent: Microsoft.EntityFrameworkCore)
  - **Microsoft.Extensions.ActivatorUtilities.Sources**: from 3.1.6-servicing.20316.5 to 3.1.7-servicing.20371.8 (parent: Microsoft.EntityFrameworkCore)
  - **Microsoft.Extensions.Caching.Abstractions**: from 3.1.6 to 3.1.7 (parent: Microsoft.EntityFrameworkCore)
  - **Microsoft.Extensions.Caching.Memory**: from 3.1.6 to 3.1.7 (parent: Microsoft.EntityFrameworkCore)
  - **Microsoft.Extensions.Caching.SqlServer**: from 3.1.6 to 3.1.7 (parent: Microsoft.EntityFrameworkCore)
  - **Microsoft.Extensions.Caching.StackExchangeRedis**: from 3.1.6 to 3.1.7 (parent: Microsoft.EntityFrameworkCore)
  - **Microsoft.Extensions.CommandLineUtils.Sources**: from 3.1.6-servicing.20316.5 to 3.1.7-servicing.20371.8 (parent: Microsoft.EntityFrameworkCore)
  - **Microsoft.Extensions.Configuration.Abstractions**: from 3.1.6 to 3.1.7 (parent: Microsoft.EntityFrameworkCore)
  - **Microsoft.Extensions.Configuration.AzureKeyVault**: from 3.1.6 to 3.1.7 (parent: Microsoft.EntityFrameworkCore)
  - **Microsoft.Extensions.Configuration.Binder**: from 3.1.6 to 3.1.7 (parent: Microsoft.EntityFrameworkCore)
  - **Microsoft.Extensions.Configuration.CommandLine**: from 3.1.6 to 3.1.7 (parent: Microsoft.EntityFrameworkCore)
  - **Microsoft.Extensions.Configuration.EnvironmentVariables**: from 3.1.6 to 3.1.7 (parent: Microsoft.EntityFrameworkCore)
  - **Microsoft.Extensions.Configuration.FileExtensions**: from 3.1.6 to 3.1.7 (parent: Microsoft.EntityFrameworkCore)
  - **Microsoft.Extensions.Configuration.Ini**: from 3.1.6 to 3.1.7 (parent: Microsoft.EntityFrameworkCore)
  - **Microsoft.Extensions.Configuration.Json**: from 3.1.6 to 3.1.7 (parent: Microsoft.EntityFrameworkCore)
  - **Microsoft.Extensions.Configuration.KeyPerFile**: from 3.1.6 to 3.1.7 (parent: Microsoft.EntityFrameworkCore)
  - **Microsoft.Extensions.Configuration.UserSecrets**: from 3.1.6 to 3.1.7 (parent: Microsoft.EntityFrameworkCore)
  - **Microsoft.Extensions.Configuration.Xml**: from 3.1.6 to 3.1.7 (parent: Microsoft.EntityFrameworkCore)
  - **Microsoft.Extensions.Configuration**: from 3.1.6 to 3.1.7 (parent: Microsoft.EntityFrameworkCore)
  - **Microsoft.Extensions.DependencyInjection.Abstractions**: from ...
@dougbu dougbu added the area-infrastructure Includes: MSBuild projects/targets, build scripts, CI, Installers and shared framework label Aug 8, 2020
@dougbu dougbu requested a review from a team August 8, 2020 21:24
Copy link
Member

@wtgodbe wtgodbe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This needs to be combined with the code merge, on Tuesday

@dougbu
Copy link
Member Author

dougbu commented Aug 8, 2020

This needs to be combined with the code merge, on Tuesday

Yup. Also needs the "skip the "Host" AddressRegistrationTests on macOS in release/3.1" fix @halter73 suggested. Working on that to be ready for Tuesday…

@dougbu dougbu force-pushed the dougbu/update.branding branch from 75f36f4 to dbc7a8d Compare August 8, 2020 23:31
@dougbu dougbu force-pushed the dougbu/update.branding branch from dbc7a8d to d248a95 Compare August 8, 2020 23:38
@dougbu dougbu added * NO MERGE * Do not merge this PR as long as this label is present. tell-mode Indicates a PR which is being merged during tell-mode labels Aug 9, 2020
@dougbu dougbu force-pushed the dougbu/update.branding branch from d248a95 to 3209cb6 Compare August 9, 2020 01:17
dougbu added 4 commits August 11, 2020 10:45
- build targeting pack to pick up NuGet/Home#8599 fix
    - dotnet/extensions#2750 and #24200 2/2
    - requires follow-up after next official extensions build
- fake the baseline update
    - remainder must be done after the 3.1.7 release
@wtgodbe
Copy link
Member

wtgodbe commented Aug 11, 2020

@dougbu please update w/ the code merge

@dougbu dougbu force-pushed the dougbu/update.branding branch from 3209cb6 to f338018 Compare August 11, 2020 23:35
@dougbu dougbu removed the * NO MERGE * Do not merge this PR as long as this label is present. label Aug 11, 2020
@dougbu
Copy link
Member Author

dougbu commented Aug 11, 2020

This PR is no longer blocked

@dougbu dougbu force-pushed the dougbu/update.branding branch from f338018 to 95386ff Compare August 12, 2020 01:08
@dougbu
Copy link
Member Author

dougbu commented Aug 12, 2020

Just waiting on you @wtgodbe

@dougbu dougbu merged commit a8e8fe2 into release/3.1 Aug 12, 2020
@dougbu dougbu deleted the dougbu/update.branding branch August 12, 2020 16:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-infrastructure Includes: MSBuild projects/targets, build scripts, CI, Installers and shared framework tell-mode Indicates a PR which is being merged during tell-mode
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants