Commit Graph

14108 Commits

Author SHA1 Message Date
Gert Driesen 2081160678 Improve performance and reduce allocations of TemplateSegment (#856) 2018-10-22 08:35:35 +13:00
Gert Driesen 0f90a15cf1 Use Array.Clone() to copy arrays, and avoid copy where applicable (#855) 2018-10-22 08:34:11 +13:00
Gert Driesen 42914d93ca Declare out variables inline, and use discards (#873) 2018-10-21 14:05:05 +13:00
Chris Ross (ASP.NET) 277a5502fd Flush response headers #3031 2018-10-19 18:00:24 -07:00
Patrick Westerhoff ddbe0fef26 Allow custom handling of antiforgery failures
To enable custom handling of antiforgery validation failures, use an
`AntiforgeryValidationFailedResult` which is just a `BadRequestResult`
but allows to be identified explicitly inside always-running result
filters using the `IAntiforgeryValidationFailedResult` marker interface.
2018-10-19 13:47:08 -07:00
Pranav K 8a183bb4f4 Allow serving Razor files with leading underscore
Fixes https://github.com/aspnet/Mvc/issues/8617
2018-10-19 13:43:35 -07:00
Pavel Krymets f1ce94a2cf
Add support for building 2.1 based Server.IIS package (#1534) 2018-10-19 12:42:16 -07:00
Pavel Krymets d3216a66c1
Create a build configuraition to build OOB logging site extension package (#3643) 2018-10-19 12:19:33 -07:00
Chris Ross (ASP.NET) 23a4e11261 Send RST for canceled HTTP/2 writes #3007 2018-10-19 11:03:44 -07:00
Nate McMaster 36add43f11
Merge branch release/2.1 into release/2.2 2018-10-18 16:53:03 -07:00
Justin Kotalik b92c82e97f
Add static shim test (#1505) 2018-10-18 13:58:56 -07:00
dotnet-maestro-bot 31849575f1 Upgrade to .NET Core 2.1.6-servicing-27017-02 2018-10-18 13:48:06 -07:00
Pavel Krymets 293d165a80
Fix flaky disconnect test (#1533) 2018-10-18 12:37:13 -07:00
Chris Ross (ASP.NET) d3f2ca9c9a Do not inherit socket handles #2789 2018-10-18 12:19:58 -07:00
Justin Kotalik 6dc4673881
Revert restarting was when installing ANCM (#3662) 2018-10-17 22:44:41 -07:00
Chris Ross (ASP.NET) 1d3090f056 Only reset the request body pipe for HTTP/1 #3006 2018-10-17 16:28:33 -07:00
James Newton-King e51da32e9d
Prefer StringComparison over StringComparer when not using comparers (#870) 2018-10-18 11:55:33 +13:00
Nate McMaster d991c50c82
Merge release/2.1 and aspnet/WebSockets release/2.2 2018-10-17 15:47:04 -07:00
Pranav K 27e75e7a51
Add a switch to allow turning on ValidationVisitor shortcircuiting (#8599) 2018-10-17 15:47:01 -07:00
Nate McMaster 24f85a200c
Reorganize source code in preparation to move into aspnet/AspNetCore
Prior to reorganization, this source code was found in a036f920b8
2018-10-17 15:34:25 -07:00
Nate McMaster b1427c759b
Remove the WebSockets submodule 2018-10-17 14:53:22 -07:00
Nate McMaster 9e952a22ed
Merge source code from aspnet/WebSockets 2018-10-17 14:30:38 -07:00
Nate McMaster 5d84c92b74
Reorganize source code in preparation to move into aspnet/AspNetCore
Prior to reorganiziation, this source code was found in 67f2c3149e
2018-10-17 14:27:00 -07:00
Gert Driesen 5c31f1f455 Add Remove(string key, out object value) overload to RouteValueDictionary (#858)
* Add Remove(string key, out object value) overload to RouteValueDictionary.

* Consistently use _count field instead of Count property in Remove overloads.
Added comment on EnsureCapacity call.
Added test for removing first/middle/last entry.
2018-10-17 13:24:07 -07:00
Nate McMaster 80d3bbfcc9
Update code signing config to exclude .js files in template packages 2018-10-17 11:13:02 -07:00
John Luo 97acb95715 Set default protocol to HTTP/1.x 2018-10-17 11:11:02 -07:00
Chris Ross (ASP.NET) c21cee940a Specify culture to int.TryParse #356 2018-10-17 09:24:49 -07:00
itminus a43587290f fix : DefaultFilesMiddleware serve with unicode path (#257) 2018-10-17 08:07:37 -07:00
Justin Kotalik b951ac9b64
Fix path to aspnetcoreca.dll for signed output (#1513) 2018-10-16 15:55:15 -07:00
Pavel Krymets 8f99140f30
Add client disconnect logs (#1521) 2018-10-16 15:30:19 -07:00
Nate McMaster e75dc56327
Sign Newtonsoft.Json with AssemblySigning3rdPartyCertName 2018-10-16 14:29:10 -07:00
Nate McMaster 6366deb193
Update dataprotection to 2.2.0-rtm 2018-10-16 11:33:17 -07:00
Nate McMaster b64e64d9e5
Merge branch 'namc/merge-dp-22' into release/2.2 2018-10-16 11:32:28 -07:00
Justin Kotalik 92baa4a75b
Cleanup ANCM installers/ Sign AspNetCore custom action (#1499) (#1502) 2018-10-15 17:46:36 -07:00
Ryan Nowak a2a8a5ce36
Merge pull request #8598 from aspnet/rynowak/compat-version-docs
Update docs for compat switch value
2018-10-15 17:04:17 -07:00
Ryan Brandenburg 73f161cc60 Set crossorigin anonymous for integrity 2018-10-15 15:51:46 -07:00
Pavel Krymets 24e2e5ad52
Port startup tests to IIS (#1513) 2018-10-15 11:44:51 -07:00
Nate McMaster 6a14b47ccd
Add infrastructure changes to src/DataProtection can build on its own 2018-10-15 11:17:06 -07:00
Ryan Brandenburg bd375fc9ee Fix audit failure 2018-10-15 10:49:40 -07:00
Pavel Krymets b0deed05be
Add server abort tests (#1510) 2018-10-15 10:33:14 -07:00
Nate McMaster 489a88d21e
Merge aspnet/DataProtection release/2.2 into this repo 2018-10-15 10:21:02 -07:00
Nate McMaster a673bfd741
Add build script and CI config for the DataProtection folder 2018-10-15 10:13:04 -07:00
Nate McMaster 4dfd351c84
Remove DataProtection submodule and update path to DP source code to local folder 2018-10-15 09:46:20 -07:00
Nate McMaster c355f10074
Merge source code from aspnet/DataProtection 2018-10-15 09:40:44 -07:00
Ryan Nowak c421178a22 Update docs for compat switch value 2018-10-15 07:43:18 -07:00
David Fowler defbadb26b
Various timer cleanup (#3129)
This change does 2 things:
- It disables the websocket keep alive since SignalR has its own bidirectional pings. This should remove a significant timer overhead per WebSocket connection that we end up with today. We have a single timer that sends to all connection on an interval.
- Don't pass the CancellationToken to ReadAsync in the handshake since the Pipe implementation holds onto the token for longer than it 
needs to which keeps Timer objects alive (see dotnet/corefx#32806)

I found this when reading the source code and looking at dumps of a couple of SignalR applications.
2018-10-13 11:43:20 -07:00
Pavel Krymets 0b5973e501
Enable auth tests on IIS (#1511)
* Enable auth tests on IIS

* FB
2018-10-13 10:54:20 -07:00
Nate McMaster c37a332a6a
Merge branch 'release/2.1' into release/2.2 2018-10-12 16:56:47 -07:00
Pranav K fb57810f29 Shortcircuit validation when using default validator providers and no validation metadata is discovered
Fixes https://github.com/aspnet/Mvc/issues/5887
2018-10-12 14:47:06 -07:00
Justin Kotalik dbc1d38a58
Move ANCM installers to Universe (#1456) 2018-10-12 14:32:12 -07:00
Pranav K a40c1f2d02 Use compat flag to drive XML ProblemDetails formatting 2018-10-12 14:15:28 -07:00
Pranav K 164d14064c Use casing for ProblemDetails that specified by RFC
* Use JsonProperty.MemberName to specify lowercase casing for ProblemDetails properties -
  https://tools.ietf.org/html/rfc7807#section-3
* Use XML NS and lowercase for Xml elements specified by RFC -
  https://tools.ietf.org/html/rfc7807#appendix-A

Fixes https://github.com/aspnet/Mvc/issues/8501
2018-10-12 14:15:28 -07:00
Nate McMaster fb3f5d95c2
Backport infrastructure changes and source reorganization
* Add build definition for Azure DevOps
* Put code for metapackages in a subfolder
* Update targets to prepare for submodules merging into this repo
* Add source code for windows installer
* Add source code for Debian installers
2018-10-12 13:59:43 -07:00
Stephen Halter 1f2e704dd3
Implement MinResponseDataRate for HTTP/2 (#3003)
#2807
2018-10-12 13:15:46 -07:00
Nate McMaster f4026cc100
Reorganize source code from aspnet/DataProtection into a subfolder
Prior to reorg, this source existed at 3f5f419df8
2018-10-12 13:14:22 -07:00
Peter Blazejewicz 98162cb7df Remove `launchsettings.json` entry from `.gitignore`. Closes #760 (#761)
Do not ignore launchsettings.json. Closes #760

As discussed in:
https://github.com/github/gitignore/pull/2705
https://github.com/github/VisualStudio/issues/1405
2018-10-12 12:58:50 -07:00
Pavel Krymets 642e8e9d7c
Add Basic auth tests and fix Windows auth tests (#1502) 2018-10-12 12:03:11 -07:00
Hao Kung 44f00013cd
Merge 2.1 -> 2.2 (#2009)
* Fix login.cshtml
2018-10-12 11:34:54 -07:00
Nate McMaster 4f14cda425
Reorganize source code from aspnet/DataProtection into a subfolder
Prior to reorg, this source existed at b62bb5778b
2018-10-12 10:07:51 -07:00
Doug Bunting d3c8d171bd
Fix builds that do real signing e.g. UniverseCoherence 2018-10-11 21:13:23 -07:00
James Newton-King fbf0708f19
Fix DfaGraphWriter ISuppressMatchingMetadata check (#850) 2018-10-12 16:08:50 +13:00
Pranav K e6bdf128f2 Log when a request is an OPTIONS request but not a preflight request
Fixes https://github.com/aspnet/AspNetCore/issues/2375
2018-10-11 16:30:22 -07:00
Doug Bunting 8c58fdb755 Add Newtonsoft.Json.dll to Microsoft.Extensions.ApiDescription.Design package
- also remove dotnet-getdocument.runtimeconfig.dev.json file
2018-10-11 15:51:20 -07:00
Javier Calvarro Nelson f5b5018d66 [Fixes #1958] Add and generate docs for the default UI 2018-10-11 14:46:57 -07:00
Chris Ross (ASP.NET) 081cef0934 Track aborted streams for a given grace period #2832 2018-10-11 12:55:26 -07:00
Ryan Brandenburg 04552f4005
Update Jquery.validation.Unobtrusive (#1999)
Update Jquery.validation.Unobtrusive
2018-10-11 12:29:52 -07:00
Ryan Brandenburg df394051d0 JQuery Unobtrusive to 3.2.11 2018-10-11 12:29:32 -07:00
Pranav K 2690a3f621 Remove filtering from CorsService
* Add browser based integration tests
2018-10-11 12:23:40 -07:00
Pavel Krymets 1132cad70b
public const string AuthenticationScheme (#1496) 2018-10-11 10:54:00 -07:00
Justin Kotalik 0e04527fb4
General cleanup for client disconnect handling. (#1446) 2018-10-11 08:44:03 -07:00
Ben Adams 800c79c0e4 Fast-path async in HttpResponseStreamWriter 2018-10-10 18:13:58 -07:00
Günther Foidl 773aa6e6ff Http{Request|Response}Stream.ValidateState made inlineable 2018-10-10 17:45:05 -07:00
BrennanConroy 3f5f419df8
Add Redis 2.0 package (#325) 2018-10-10 16:40:52 -07:00
BrennanConroy 286e4bebf7
Add StackExchange.Redis 2.X.X package (#3089) 2018-10-10 16:40:27 -07:00
Doug Bunting 5cd86977ed
Rename client code generation components
- #8523
- main project / package --> `Microsoft.Extensions.ApiDescription.Design`
- tasks assembly and namespace --> `Microsoft.Extensions.ApiDescription.Tasks`
- tool namespace --> `Microsoft.Extensions.ApiDescription.Tool`
- targets --> verbs e.g. `GenerateTypeScriptNSwag` and `GenerateDocumentDefault`
- `@(ServiceProjectReference)` metadata -> align with common MSBuild project properties
  - exception: `$(MSBuildProjectExtensionsPath)`; it's readonly and `%(ProjectExtensionsPath)` is unambiguous
    - use `%(ProjectExtensionsPath)`
  - also add `%(Targets)` metadata and remove unused `%(ProjectRuntimeIdentifier)`
- `@(<ServiceProjectReferenceMetadata)` metadata -> align with MSBuild project properties
  - exceptions: `$(MSBuildProjectDirectory)`, `$(MSBuildProjectExtensionsPath)` and `$(MSBuildProjectName)`
    - readonly properties and names already unambiguous
2018-10-10 14:52:57 -07:00
Doug Bunting d3442f3590
Create a single Microsoft.Extensions.ApiDescription.Client package
- #8428
- add signing-related and PackageVerifier configuration for new package
- remove packaging configuration from dotnet-getdocument project
- adjust `dotnet-getdocument` invocation to its new location
- remove use of nonexistent (ignored) `dotnet-getdocument --no-build` option

Remove `--uri` feature from `dotnet-getdocument`
- reduce dependencies from Microsoft.AspNetCore.TestHost to Microsoft.AspNetCore.Hosting.Abstractions
  - assume web site depends on that
- merge `DownloadFileCore` into `DownloadFile`
- remove other unecessary code e.g. `WrappedException` was never `throw`n

Correct issues in `DownloadFile`
- e.g. dispose of `responseStream`, use `await` more, support FIPS-compliant machines

nits:
- clean up `Project` and the metadata it fetches
- remove unnecessary `.props` and `.targets` files
2018-10-10 14:52:56 -07:00
Doug Bunting 5a58f81d8d
Use Internal.AspNetCore.Sdk as an MSBuild SDK in new projects
- follow-up to 5bddd226a3
2018-10-10 14:52:56 -07:00
Doug Bunting ea80199e53
Fix a few issues with Microsoft.Extensions.ApiDescription.Client targets
- follow-ups to 1646345955 and 9d109f5956
- fix `%(Command)` updates in `DefaultDocumentGenerator` target
  - later references to metadata values set within an item are not up-to-date
- qualify values for `%(SourceProject)`, `%(SourceUri)` and `%(SourceDocument)` when setting that metadata
  - MSBuild can't distinguish unqualified metadata references unless using `<X Update="@(X)">`
- fix `@(CurrentServiceFileReference)` items
  - was a copy 'n paste error in `_ServiceFileReferenceGenerator_Core` target
- remove per-language default namespace values
- do not add TypeScript files to `@(Compile)`; generally enhance final item additions
  - use `$(DefaultLanguageSourceExtension)` to help here
  - exclude generated source files with `%(OutputPath)` that does not match `$(DefaultLanguageSourceExtension)`
  - really support `%(OutputPath)` directories
- stick with current `$(TargetFramework)` when building `...ReferenceGenerator_Inner` targets
  - `%(ProjectTargetFramework)` will not exist for all `@(ServiceFileReference)` items
  - building the current project, not a service project; `%(ProjectTargetFramework)` may not be supported

nits:
- shorten a few more long lines in Microsoft.Extensions.ApiDescription.Client.targets
- reduce logging from that file
- do not include `%(SerializedMetadata)` in `%(SerializedMetadata)`
  - caused extra-long serialization of items that were originally `@(ServiceProjectReference)`s
- add more info to various comments
- always use element syntax for metadata additions
2018-10-10 14:52:55 -07:00
Doug Bunting fb9393febf
Correct metadata additions and add errors about metadata
- related to #8419 and (more generally) #7947
- add errors for missing required metadata
- add errors for duplicate `%(DocumentPath)` and `%(OutputPath)` metadata
- remove `[Required]` for task inputs that may be `null` or empty
- correct `%(DocumentPath)`s generated in `GetProjectReferenceMetadata` task
  - use this task
2018-10-10 14:52:55 -07:00
Doug Bunting 87e304334d
Remove batching requirements placed on code and document generator providers
- #8419
- perform batching and `@(ServiceFileReference)` and `@(Compile)` additions in common code
  - take advantage of new simplicity in `DefaultDocumentGenerator` target
- add metadata serialization / deserialization in support of passing items into `<MSBuild />`
  - also ensure metadata values are escaped before calling `ITaskItem.SetMetadata(...)`
- correct typos in Microsoft.Extensions.ApiDescription.Client.* e.g. in comments and metadata names
- move last remaining `GenerationTasks` file

nits:
- combine `_ServiceProjectReferenceGenerator_Restore` and `_ServiceProjectReferenceGenerator_Build` targets
  - only build web sites projects once
- remove unused `buildMultiTargeting` targets
- remove qualification of metadata listed in an `<ItemDefinitionGroup />`; will always exist
- add / remove a few `Condition`s that were missing / redundant
- move properties users won't normally set to Microsoft.Extensions.ApiDescription.Client.targets
- shorten lines in MSBuild files
2018-10-10 14:52:55 -07:00
Doug Bunting 3f001750ad
Rationalize code sharing between the three code generation projects
- #8417
- just two files needed to be moved&hellip;
2018-10-10 14:52:54 -07:00
Doug Bunting a76ca293ef
Add missing license headers to src files
- #8415
- also correct a typo in Microsoft.AspNetCore.Mvc.Testing files' headers
2018-10-10 14:52:54 -07:00
Doug Bunting d0325ef264
Remove `CodeAnnotations`
- #8416
- turns out this required little on top of dougbu/remove.custom.tool
2018-10-10 14:52:54 -07:00
Doug Bunting 6ffcf3571e
Remove T4 custom tool
- use same generator as most other projects in aspnet repos
  - were not using named arguments to resource methods anyhow
- update resources to use regular (numbered) format parameters
- adjust to new `Resources` namespace; no need for separate `using`
- use `Format...(...)` methods as necessary
2018-10-10 14:52:54 -07:00
Doug Bunting e19c036f11
Fix up MSBuild files
- correct filenames
- remove NSwag-specific files
2018-10-10 14:52:53 -07:00
Doug Bunting 25d0916b49
Use one namespace for the three client code generation projects
- also cleared out most uses of `GetDocument` and `GenerationTasks` in MSBuild and strings
- temporarily fixed up T4 templates, adding Resources.tt (will remove custom generation soon)
2018-10-10 14:52:53 -07:00
Doug Bunting 95b4dc8ca0
Add first cut of Microsoft.Extensions.ApiDescription.Client package / project
- WIP in a number of ways
2018-10-10 14:52:36 -07:00
Hao Kung 5c174a3d7d Fix login.cshtml 2018-10-10 14:49:57 -07:00
Pavel Krymets bfa583a9aa
Guard OnAsyncCompletion from completing request before OnExecuteRequestHandler exits (#1489) 2018-10-10 14:34:55 -07:00
Pavel Krymets ab124fc344
Fix applicationInitialization tests and disconnect handler (#1484) 2018-10-10 12:41:11 -07:00
Ryan Brandenburg 7d09ec6ccc
Low hanging fruit (#763)
Clean up low hanging fruit
2018-10-10 12:12:11 -07:00
James Newton-King f6e20a38e2 HostString throws ArgumentNullException for null host (#1045) 2018-10-10 08:27:33 -07:00
James Newton-King 9daf5ff7a4
Fix PageRouteTransformerConvention with custom page routes (#8576) 2018-10-10 18:33:30 +13:00
Pavel Krymets 7a09638afe
Modernize startup error pages (#1476) 2018-10-09 16:12:01 -07:00
Pavel Krymets f2fbd803b9
Flow request trace context to CreateApplication (#1480) 2018-10-09 16:11:52 -07:00
Pavel Krymets 27e4e1aca3
Remove RestoreOnPublish parameter (#1533) 2018-10-09 10:41:52 -07:00
Justin Kotalik 23db53eae6
Add more FREB events/ tests for FREB events (#1461) 2018-10-09 10:25:12 -07:00
Ryan Nowak 1f31e0556d
Add IHealthCheckPublisher for push-based checks (#498)
IHealthCheckPublisher allows you to configure and run health checks
regularly inside an application, and push the notifications elsewhere.

All publishers are part of a single queue with a configurable period and
timeout.
2018-10-08 17:58:45 -07:00
Stephen Halter 8bca6b3877
Add HTTP/2 keep-alive and request header timeouts (#2992) 2018-10-08 17:06:15 -07:00
Pavel Krymets 1be7cd1f74
Disconnect the disconnect handler when request processing ends (#1471) 2018-10-08 16:05:28 -07:00
Ryan Nowak 7b16053f27 Misc polishing
Rename `IEndpointFinder<>` -> `IAddressScheme<>`

Address the two 'marker' metadata types that I'm aware of.
2018-10-08 15:45:44 -07:00
David J. Quiroga 956441aa68 Ignore created URI if Assembly.CodeBase contains a fragment (#8556)
* Fixes #8367
2018-10-08 10:41:04 -07:00
Pavel Krymets 4347a45f29
Always add event source logger (#287) 2018-10-08 09:31:44 -07:00
Ryan Nowak 9722d89572 Adjust log levels 2018-10-06 16:18:55 -07:00
Ryan Nowak 67a1f2dda9 Add security text about Host header 2018-10-05 22:26:37 -07:00
Ryan Nowak ce9ace84fd
Merge pull request #839 from aspnet/rynowak/fix-837
Fix Routing#837
2018-10-05 22:26:27 -07:00
Ryan Nowak 81fb93a896 Fix Routing#837
Fixes a few issues with how we initialize the middleare.
- Always completes the intitialization task
- Avoids capturing the ExecutionContext
- Allows initialization to occur repeatedly when it fails
2018-10-05 21:24:57 -07:00
Ryan Nowak 9db2833fc2 Make endpoint selector policies per-candidate-set
This allows us to filter `IEndpointSelectorPolicy` instance based on
whether the apply to a given candidate set. This should allow us to
remove some HAXXX from MVC.

The idea here is the ESP becomes much more pay-for-play if you can
statically eliminate many of the cases where it would usually no op.
2018-10-05 21:03:59 -07:00
Ryan Nowak 384b814349 React to IEndpointSelectorPolicy changes 2018-10-05 21:03:53 -07:00
Ryan Nowak af47b27f0d Add blurb about Host header 2018-10-05 19:03:21 -07:00
John Luo 5b90028fe3 Expose status code of BadHttpRequestException 2018-10-05 16:08:33 -07:00
Chris Ross (ASP.NET) daf6e1ecd7 Http/2 response trailers #622 2018-10-05 12:50:46 -07:00
Chris Ross (ASP.NET) 89b0430bda Add IHttpResponseTrailersFeature and extensions 2018-10-05 11:46:52 -07:00
Pranav K 6f76189846
Normalize internationalized domain names when adding to CORS
Fixes https://github.com/aspnet/Home/issues/3353
2018-10-05 11:08:02 -07:00
George Drak e9eea50966 Implement #2230 - Consume BindingAddress instead of ServerAddress (#2975)
* #2230 Mark ServerAddress as obsolete

* #2230 suppress CS0618 errors for obsoleted ServerAddress class

* #2230 Use BindingAddress instead of ServerAddress
2018-10-05 10:34:00 -07:00
Luke Latham e30ae8cc3d Fix typo (#1559) 2018-10-05 08:11:04 -07:00
Stephen Halter f91ae20a3c
Improve RequestAborted token handling (#2977)
- Improve test reliability of tests verifying the RequestAborted token gets tripped
- Once the response body is completed, don't fire the token for that request even if it is accessed later on.
2018-10-04 16:48:50 -07:00
Andrei Amialchenia df2ad98743 Use logical 'or' instead of bitwise in IsConnectionReset method. (#2983) 2018-10-04 15:37:24 -07:00
Doug Bunting 5bddd226a3
Use Internal.AspNetCore.Sdk as an MSBuild SDK
- should resolve issues with occasional strange MSBuild caching issues in this repo
- modeled after aspnet/Scaffolding#905
- follows aspnet/BuildTools#729 recommendation to check in global.config file
  - see also Microsoft/msbuild#2914
- use newer KoreBuild
  - `.\build.cmd -update /t:noop`
2018-10-04 15:12:38 -07:00
Pranav K 153165f9ad
Handle OPTIONS requests without a handler in Razor Pages (#8528)
* Handle OPTIONS requests without a handler in Razor Pages

Fixes #7438
2018-10-04 12:25:36 -07:00
Chris Ross (ASP.NET) 35d35f22a3 Disallow any frames after a reset is received #2154 2018-10-04 09:40:21 -07:00
James Newton-King 94101a9cde
Add PageRouteTransformerConvention (#8541) 2018-10-04 17:34:26 +13:00
James Newton-King 7854d65c11
Support page parameter in attribute route (#8530) 2018-10-04 14:39:40 +13:00
Stephen Halter 5bd2a41517
Make transport logs for connection close more detailed and consistent (#2978) 2018-10-03 12:41:00 -07:00
Nate McMaster f2691ee4b6
Add a copy of scripts from dotnet-deb-tool 2.0.0 to this repo (#1442)
We currently build .deb files using dotnet-deb-tool, which comes from a package feed. We're not completely sure where the source code is for this tool, so this moves the scripts from the dotnet-deb-tool 2.0.0 package into this repo for safe keeping.
2018-10-02 14:32:12 -07:00
Alexej Timonin 70ddf15cbc MethodMatches 🚿 2018-10-02 12:57:18 -07:00
Pranav K a48e75dfb4
Implicitly set content type for ObjectResults containing ProblemDetails (#8512)
* Implicitly set content type for ObjectResults containing ProblemDetails

Fixes #8467
2018-10-02 10:24:38 -07:00
Nate McMaster 4c49d5ce80
Resolve flaky tests (#497)
1. Prevent an ObjectDisposedException in dotnet-watch on slower machines
2. Fix flakiness caused by PID reuse
3. Fix flakiness in tests that await the restart of dotnet-watch. The `.TimeoutAfter` method doesn't cancel the long-running task. This left 2 readers running on dotnet-watch output which caused indeterminate test outcome.
2018-10-02 09:17:04 -07:00
Nate McMaster 7d3628b8ac
Merge branch 'release/2.1' into release/2.2 2018-10-01 15:58:37 -07:00
Brian Chavez 78a0a68cd1 Typos/spelling errors in XML doc comments and source. #Hacktoberfest (#3039) 2018-10-01 14:41:05 -07:00
Ryan Nowak 014e7eb963 Add EFCore DbContext check 2018-10-01 13:33:00 -07:00
Justin Kotalik 3ddc86a428
Fix mof file (#1457) 2018-10-01 08:00:44 -07:00
Ryan Nowak 3227de8c0b Fix #629 - Add logging to DfaMatcther
Adds logging for the most common things that can prevent an endpoint
from matching.

Note that we already have good logging in other parts of the system, the
stuff here completes the story by providing details at the debug level.
2018-09-30 15:59:25 -07:00
Ryan Nowak 3667b0481a React to routing API changes
Reaction for: https://github.com/aspnet/Routing/pull/822
2018-09-30 14:26:06 -07:00
Ryan Nowak b7939328b8 feedback 2018-09-30 14:09:59 -07:00
Ryan Nowak a2f404f4d5 Perf improvements for EndpointSelector 2018-09-30 14:09:59 -07:00
Ryan Nowak ed15bad5fb Make CandidateState (publicly) immutable 2018-09-30 14:09:59 -07:00
Ryan Nowak 1f5eec1d55 Rename EndpointFeature -> EndpointSelectorContext 2018-09-30 14:09:59 -07:00
Ryan Nowak cb1393cbb1 Adding functional tests for LinkGenerator 2018-09-29 20:34:48 -07:00
Ryan Nowak 8b99832eaf Add ASCII optimized jump tables 2018-09-29 12:55:10 -07:00
James Newton-King d1f3b90a0e
RouteValuesAddressMetadata ctors and XML docs (#818) 2018-09-30 08:54:59 +13:00
Nate McMaster 72cd5eedcf
Prepare the 2.1.6 patch (#1434) 2018-09-28 17:57:33 -07:00
Nate McMaster 0eb57b2a29
automated: bulk infrastructure updates. Update bootstrapper scripts and remove unnecessary signing properties 2018-09-28 17:19:45 -07:00
Simon Cropp d4ab8b27a9 typos, inline outs, redundant usings (#2965) 2018-09-28 11:14:59 -07:00
Chris Ross (ASP.NET) 09a7b3bef5 Add logging to the response compression middleware #222 2018-09-28 11:05:20 -07:00
Nate McMaster 89fccf3ac5
Enable MicroBuild code signing (#1456)
Fixup the paths to files to be signed.
2018-09-28 10:37:18 -07:00
Nate McMaster ef21286792
Fix microbuild code signing configuration (#8511)
Fixup the paths to files to be signed.
2018-09-28 10:36:56 -07:00
Nate McMaster 47ae0c15cc
Fix microbuild signing configuration 2018-09-28 10:36:24 -07:00
Pranav K ccb6579cd7
Do not return ProblemDetails for < 4xx status codes
Fixes #8504
2018-09-28 10:33:45 -07:00
John Luo 7cf1cf2a54 Update API check baselines to 2.1.0 2018-09-28 10:30:50 -07:00
Unai Zorrilla fa961b003f Added execution time duration (HealthReportEntry TotalDuration) (#493)
* Added execution time duration into HealthReportEntry and TotalDuration on HealthReport

* review PR feedback from @rynowak.

* added the same duration into HealthReportEntry and log when the health check throw
2018-09-28 09:14:58 -07:00
Justin Kotalik 45a52ebff5
Move Log call before starting application (#1453) 2018-09-28 08:53:32 -07:00
BrennanConroy 1f91b523f7
Add error to negotiate (#2998) 2018-09-27 20:27:06 -07:00
Simon Cropp 8dcc011324 spelling, inline outs, redundant braces (#252) 2018-09-27 20:24:42 -07:00
Stephen Halter e9c2acf4dc
Add HTTP/2 response draining timeout (#2956)
* Move drain timeout to Http1Connection
* Add TimeoutControl class
2018-09-27 17:59:12 -07:00
Justin Kotalik fc39ea3bec
Make hosting bundle get prodcon runtime versions (#1435) 2018-09-27 16:44:40 -07:00
Nate McMaster 73062c89f6
Change spec test packages to depend on xunit.execution.core, not the xunit metapackage (#1979) 2018-09-27 16:40:38 -07:00
Nate McMaster 594b5fafe4
Enable MicroBuild code signing 2018-09-27 16:11:54 -07:00
Nate McMaster 4baa07ccae
Update code signing properties and configuration 2018-09-27 12:55:40 -07:00
andrewslavin cc610955db Support mime-type wildcards #121 @andrewslavin 2018-09-27 12:52:24 -07:00
James Newton-King 95753825ef
Comment registered key (#816) 2018-09-27 07:06:30 -07:00
John Luo f56b682b36 Impose integer decode limit in HPACK 2018-09-26 17:18:24 -07:00
Pranav K 8311fd870b
Include the response type in ProducesResponseType for client errors (#8490)
* Include the response type in ProducesResponseType for client errors

* Refactor ActualApiResponseMetadata discovery in to a separate more manageable type
* Annotate action result ctors and helper methods that specify the "object" value with attribute
* Modify the discovery of parameters to match ActionResultObjectValueAttribute and ActionResultStatusCodeAttribute by name
  to allow users to write and annotate custom helper methods and action results, a la NotNullAttribute.

Fixes #8345
2018-09-26 15:51:49 -07:00
Nate McMaster e4ebae107c
Fix the path to SignedPackageFile items and include the VSIX .dll in code signing 2018-09-26 15:19:28 -07:00
Nate McMaster 0157e38a23
Fix the path for SignedPackageFile and include the VSIX .dll in signing 2018-09-26 15:06:06 -07:00
Pavel Krymets bac0f44fa7 Revert "Disconnect the disconnect handler when request processing ends (#1413)"
This reverts commit f808bdc331.
2018-09-26 14:17:40 -07:00
Ryan Brandenburg b07338b618
Don't use depricated methods (#751)
Don't use depricated methods
2018-09-26 12:50:24 -07:00
Ryan Nowak 831937c86c Add LinkGenerator extensions for MVC 2018-09-26 09:37:46 -07:00
Ryan Brandenburg c6347f035f Conditionally include RootNamespace 2018-09-25 15:48:08 -07:00
Ryan Brandenburg 0745266c17 Razor->WebApp 2018-09-25 15:47:23 -07:00
Justin Kotalik 1eb5da31e5
Improve error messages and add static html pages for failure to start site. (#1421) 2018-09-25 15:40:15 -07:00
Chris Ross (ASP.NET) 3832019027 Update Facebook to v3.1 endpoints #92 2018-09-25 13:56:58 -07:00
Ryan Nowak 49c2317c14 Fix #810 2018-09-24 21:55:56 -07:00
Ryan Nowak 7c16c92317 Fix a bug in GetUriByRouteValues
Pride cometh before the fall...
2018-09-24 20:46:20 -07:00
Chris Ross (ASP.NET) 01b35bc391 Make HTTP/2 connection and stream windows configurable #2814 2018-09-24 15:31:50 -07:00
Pranav K 50cef4822a
Invoke FlushAsync before disposing the HttpResponseWriter in JsonResultExecutor
Fixes #8486
2018-09-24 13:00:56 -07:00
John Luo ceaa3c86fc Add configurability for max header field size in HPACK 2018-09-24 10:53:15 -07:00
Ryan Nowak 204ff0a785 Set cache headers in health check middleware 2018-09-24 10:43:57 -07:00
David Fowler f17142b2ec
Delay resolution until after application services are built (#1553)
- Resolve the logger from the right service provider to log duplicate hosting startup assemblies.
- Don't create a 3rd IServiceProvider if we resolved the default implementation.
2018-09-24 10:41:30 -07:00
Ryan Nowak 18145880fa Improved logging for health checks
- Add logging of description/data
- Add logging for aggregate begin/end
2018-09-24 10:29:23 -07:00
Ryan Nowak b642db5a47 Revised LinkGenerator 2018-09-22 15:47:50 -07:00
Ryan Nowak 89a962716f React to Routing LinkGenerator changes 2018-09-22 15:47:38 -07:00
Doug Bunting 5c8dfef15e
Change `CollectionModelBinder` and `ComplexTypeModelBinder` to enforce `[BindRequired]`
- #8180
- add an error when binding fails for top-level model
  - same case as when MVC creates "default" / empty model i.e. `ParameterBinder` can't detect this
- update `CollectionModelBinder` subclasses and the various providers as well
- controlled by existing `MvcOptions.AllowValidatingTopLevelNodes` option

smaller issue:
- change `ModelBinding_MissingBindRequiredMember` resource to mention parameters too
2018-09-21 11:08:16 -07:00
Pavel Krymets f808bdc331
Disconnect the disconnect handler when request processing ends (#1413) 2018-09-21 09:13:39 -07:00
Ryan Brandenburg a140f38810 Enhancments 2018-09-20 14:52:16 -07:00
Ryan Brandenburg 44c3e5d4ac
Titles in h1 (#1966)
Titles in h1
2018-09-20 14:51:41 -07:00
BrennanConroy 4dfd93c1d7
[TS] Wait for handshake response (#2983) 2018-09-20 14:23:43 -07:00
BrennanConroy f0a34a4ca4
Clone Windows Identity in LongPolling connections (#2985) 2018-09-20 13:39:25 -07:00
Pranav K a898f98a7f Print an error when using Razor build with an older version of the Sdk 2018-09-20 13:14:06 -07:00
melnikov77 6699804fe9 Do not compress response if it is already compressed (#305) (#365) 2018-09-20 12:01:06 -07:00
Ryan Nowak 8fb6c2a50a Allow cancellation to propagate 2018-09-20 11:04:35 -07:00
Ryan Nowak 5c4c746797 Reaction PR from routing rename 2018-09-20 10:15:50 -07:00
Ryan Nowak a657c3bdf2 Updates to Parameter Transformer
- Rename -> IOutboundParameterTransformer
- Make it operate on object
- Implementing caching for constraints/tranformers for link generation
(cached as part of TemplateBinder)
2018-09-20 10:15:42 -07:00
Pavel Krymets d28468ca8f
Override IIS headers in inproc (#1409) 2018-09-20 09:21:34 -07:00
Pavel Krymets 375d037946
Add applicationInitialization tests (#1402) 2018-09-19 16:32:24 -07:00
BrennanConroy 6ba5e87b45
Allow CancellationToken in streaming hub methods (#2818) 2018-09-19 15:21:07 -07:00
Ryan Nowak 4259b65c16
Use options for registering health checks (#479)
* Use options for registering health checks

This change pivots to use options for registering health checks. We get
a few pretty nice things out of this, and it unblocks some of our
requirements.

Now all registration methods support the application developer
configuring the name, failure-status, and tags for each health check.
This is a requirment, that we weren't really satisfying - which is what
led to this redesign. In support of this health checks now return pass/fail,
and the service is responsible for assigning the status.

----

Health check authors that need configuration data (connection string as
an example) now have three ways to do this depending on their
requirements.
1. Create an instance and register that (easiest)
2. Use Type Activation and pass parameters (middle)
3. Use named options (richest)

We expect most health checks to need/want some kind of configuration -
which 1) works pretty well to solve. However many other health checks
will need DI + configuration. It was also a gap that we didn't have a
good way to use named options, when it's such a good fit for our
scenarios.

Added new registration methods for type activation that allow you to
pass parameters for 2).

Added a context type that allows the running health check access to its
registration for 3).

----

Redesigned and renamed how status gets reported. Health checks return
pass/fail result, but the overall HealthReport includes entries of a
different type. This seems fine because there isn't really a way to
consume a HealthCheckResult directly - the service is the only consumer.

----

Added support for tags. This was easy to add now that we have a separate
registration type, and it's quite handy for building filters (see
sample).

* HARDER BETTER STRONGER FASTER
2018-09-19 14:48:34 -07:00
Pranav K 9c424b7b02
Use content-type specified by ProducesAttribute if no formatter supports it
This allows users to use `ProducesAttribute` to specify the content-type
for action results such as FileStreamResult where the result determines the content type
and the specified value is informational.

Fixes https://github.com/aspnet/Mvc/issues/5701
2018-09-19 13:51:31 -07:00
BrennanConroy 8be051ce34
Idempotentize AddSignalR (#2972) 2018-09-19 13:39:34 -07:00
Pranav K f7da3503d6 Allow Implicit 200 status codes to match Ok result 2018-09-19 12:51:13 -07:00
Mike Harder 3f7ee338d4 Change SelfHostDeployer to use dynamic ports by default (#1383)
* Should significantly reduce flaky test failures due to AddressInUse exceptions
* Addresses https://github.com/aspnet/Hosting/issues/1296
2018-09-19 12:35:51 -07:00
Pranav K f70df60435 Move RazorGenerate and RazorTagHelper tasks in to the Sdk
Loading multiple versions of a task assembly result results in MSBuild on .NET Core to fail.
Addressing this by moving the tasks in to the Sdk and renaming it. This should avoid
immediate issues for a 2.1 and 2.2 project co-existing and future proofs 2.2 and later.

Fixes https://github.com/aspnet/Razor/issues/2553
2018-09-19 10:09:56 -07:00
Pranav K 7144add4ad
Check for ITagHelper in tag helper feature provider (#2602)
Fixes #2482
2018-09-18 16:52:34 -07:00
Pavel Krymets b6c311c14d
Add client disconnect and connection abort support (#1388) 2018-09-18 16:36:52 -07:00
Ryan Brandenburg f63412f1bb Update package verions 2018-09-18 14:34:39 -07:00
Justin Kotalik ece5ad36e2
Implement ITlsConnectionFeature (#1390) 2018-09-18 14:22:56 -07:00
Pranav K fc86cc3ca1 Allow Invoke \ InvokeAsync methods for a ViewComponent to be defined in base types
Fixes https://github.com/aspnet/Mvc/issues/8397
2018-09-18 13:38:48 -07:00
Doug Bunting 47d6d4e82c
Update `FormFileModelBinder` to re-add prefix `ParameterBinder` removed incorrectly
- #7562 part 2
- add `OriginalModelName` to `ModelBindingContext`

nit: take VS suggestions, mostly to inline collection initialization in `FormFileModelBinderTest`
2018-09-18 11:44:48 -07:00
Doug Bunting c13e2498a8
Create model in `ComplexTypeModelBinder` if ANY property has a greedy binding source
- #7562 part 1
2018-09-18 11:44:37 -07:00
Stephen Halter f3b6430aab
Initialize Heartbeat in KestrelServer.StartAsync (#2939)
Fixes #2850 again
2018-09-17 16:43:30 -07:00
tiago-soczek a7e412ec80 Fix category logger for HttpsConnectionAdapter and LoggingConnectionAdapter. #2929 (#2935) 2018-09-17 16:01:14 -07:00
Daniel A. White 4a4dde182f replacing string interpolation with proper logging syntax (#363) 2018-09-17 15:33:17 -07:00
Chris Ross (ASP.NET) b8423b8530 Change how HTTP/2 frames are parsed and generated #2858 2018-09-17 14:48:43 -07:00
David Fowler 2999aa54cd
Remove calls to MemoryMarshal.GetReference (#2931)
- Spans can be pinned natively in C# 7.3
2018-09-17 14:47:04 -07:00
John Luo 69ff195f66 Enable hpack/4.2 - Maximum Table Size test
- Ensure dynamic tables size updates occur at the beginning of the header block
2018-09-17 12:46:51 -07:00
John Luo 025aca52df Port long Huffman encoding bug fix
https://github.com/dotnet/corefx/pull/32043
2018-09-17 12:41:36 -07:00
Pavel Krymets 5e896ca506
Implement IHttpBufferingFeature (#1391) 2018-09-17 12:04:12 -07:00
Justin Kotalik 2cd6ad6d50
Add windows auth tests for inproc (#1385) 2018-09-17 11:57:46 -07:00
Ryan Nowak 060698a52f Update to use non-capturing timer 2018-09-17 11:08:06 -07:00
Pranav K 4b83f7b510
Make FileVersionProvider repleacable
Fixes #6371
2018-09-14 09:14:02 -07:00
Pranav K 233140c33a
Allow IFormFile parameters annotated with [FromForm] to be correctly … (#8452)
* Allow IFormFile parameters annotated with [FromForm] to be correctly bound in ApiControllers

Fixes #8311
2018-09-14 09:06:32 -07:00
James Newton-King 412944e1f5
Transform parameters before lower casing in link generation (#793) 2018-09-14 17:19:43 +12:00
David Fowler 48b3f18642
Improve the handshake request parsing errors (#2953)
- Print out the raw handshake payload as utf8 text if it fails to parse as JSON or if we're missing properties. This should help flesh out potentially buggy clients.
2018-09-13 22:11:17 -07:00
Ryan Nowak 426a48a65a Performance improvments to LinkGenerator and TemplateBinder 2018-09-13 19:11:28 -07:00
Ben Adams 5e083c371b Don't capture asynclocals onto Timer 2018-09-13 17:28:30 -07:00
Ryan Nowak 35597db277 Fix #8451
Change tokens can call into your code IMMEDIATELY when you subscribe. I
reviewed our other usage of ChangeToken.OnChange in MVC and everything
looks good.
2018-09-13 15:38:42 -07:00
Ryan Nowak 9a68f48a5c Minor improvments to RVD perf 2018-09-13 14:55:00 -07:00
Ryan Brandenburg b8f7f967ce Normalize FSharp templates and don't check in site.min.js 2018-09-13 14:41:32 -07:00
Pranav K d0ddb068be
Return FormCollection.Empty when Content-Length is 0 (#1038)
* Return FormCollection.Empty when Content-Length is 0

Fixes https://github.com/aspnet/Mvc/issues/5631
2018-09-13 13:35:31 -07:00
Chris Ross (ASP.NET) 55e5e56422 Dispatch Http/2 write callbacks #2878 2018-09-13 11:53:30 -07:00
Justin Kotalik 3649f5bb81
Add OutOfProc logging tests/ merge all inproc test sites into a single site (#1384) 2018-09-12 23:20:52 -07:00
Pranav K cb88e906b2 Allow ProducesAttribute to apply along with conventions
Fixes #8389
2018-09-12 13:58:02 -07:00
Pranav K a73d073eea
Allow ApiControlelrAttribute to be applied to assemblies
Fixes #7343
2018-09-12 13:42:22 -07:00
Pranav K 13281613a5
Refactor DefaultPageApplicationModel to use conventions 2018-09-12 12:28:16 -07:00
Rick Anderson b9452868db Update IdentityServiceCollectionExtensions.cs docs (#1962) 2018-09-12 12:04:28 -07:00
Simon Cropp 43d4416a1d Fix typos (#8413) 2018-09-12 09:34:45 -07:00
James Newton-King dfae9c208a
Add IParameterTransformer support (#8329) 2018-09-12 21:46:41 +12:00
James Newton-King cee960f3c5
Add IParameterTransformer (#750) 2018-09-12 21:45:25 +12:00
James Newton-King 105f8b47a1
Fix endpoint support for area/controller/action in attribute route (#8447) 2018-09-12 21:16:50 +12:00
BrennanConroy 8dffc68cea
Cancel previous request on close (#2923) (#2942) 2018-09-11 15:50:00 -07:00
Ryan Nowak e5cc4564cb add docs for constructor 2018-09-10 16:55:39 -07:00
Ryan Nowak 5f172efa9d Add support Endpoint Name endpoint finding 2018-09-10 16:50:46 -07:00
Ryan Nowak 57cc8aea96 Various improvments to route values link APIs
- Add docs
- Add support for templates
- Remove undesirable constructor parameter
- misc cleanup
2018-09-10 16:50:46 -07:00
Chris Ross (ASP.NET) f38f60f8ce Map ListenOptions.Protocols from IConfiguration #2903 2018-09-10 16:27:51 -07:00
Ryan Nowak c683844817 Fix #553 - Add logging for new LinkGenerator
Adds logging for all of the failure cases of link generation.
2018-09-10 16:11:43 -07:00
James Newton-King 6e27a04bf3
No HttpContext to route constraints in MvcEndpointDataSource (#8436) 2018-09-11 10:12:09 +12:00
BrennanConroy 399ac267ca
Cancel previous request on close (#2923) 2018-09-10 15:09:05 -07:00
John Luo de5ccb5c78 PR feedback for https://github.com/aspnet/KestrelHttpServer/pull/2838 2018-09-10 13:58:46 -07:00
Ryan Brandenburg 14b1432481 Fix min.css files 2018-09-10 12:25:27 -07:00
BrennanConroy adc5706bcb
Add more redis logs (#2936) 2018-09-10 11:51:27 -07:00
Ryan Nowak f573b8840a Fix aspnet/Routing#782
Currently MVC is still running the IActionConstraint implementations for
features that we've already moved into the routing layer. This has a
significant perf cost associated with, and so we want to skip it because
it's redundant. However if anyone has implemented their own
`IActionConstraint`-based features, they still need to just work.

This change takes the approach of skipping the action constraint phase
at runtime unless we see something 'unknown'. This is an all or nothing
choice, and will run action constraints if **any** action constraint we
don't special case exists. This is the most compatible behavior (running
redundant constraints) when the application is using constraints that
the developer implemented.

Another approach I considered was to eliminate these constraints as part
of the process of building ADs. I don't think that's ideal because
people have written code that introspects action constraints. We should
consider something like this in 3.0.
2018-09-09 15:17:05 -07:00
Pranav K 013697ad89
Remove experimental analyzers 2018-09-07 16:03:06 -07:00
Glenn Condron 4bcfbe4d40
[REPL] Help improvements for repl (#478)
* Beginning of help additions. Fixed a nullref.
* Standardized help with options displayed as appropriate.
2018-09-07 15:21:42 -07:00
Joni 72f7e52e1e Remove blank line 2018-09-07 14:48:17 -07:00
Ben Adams db99baac35 Don't capture AsyncLocals onto Timers (#2904) 2018-09-07 14:08:08 -07:00
Sebastian d36dcca713 Handle IPv4ToIPv6 Mapped Addresses when checking known proxies/networks (#359)
* Un-Map IPv4-to-IPv6-Mapped ips before comparing to known proxies/networks. Addresses #358

* Checking both mapped and unmapped versions of IPv4toIPv6 ips. Addresses #358

* Confirm IPv4toIPv6 mapping/unmapping. Addresses #358
2018-09-07 14:02:31 -07:00
Nate McMaster aa93edcee2
Remove Microsoft.DotNet.GlobalTools.Sdk
These targets are now part of Microsoft.NET.Sdk
2018-09-07 10:01:52 -07:00
gqqnbig fd80509fef LocalizedHtmlString.Value doesn't include arguments (#8376)
* Clarify that Value is prior to formatting with any constructor arguments
2018-09-07 08:58:52 -07:00
Nate McMaster e3ba165baa
Update build.ps1 2018-09-06 23:04:43 -07:00
Casey O'Brien 74ba9898f4 [Fixes #8250] Improve the error message when TEntryPoint is not in an entry point assembly
Validates that the type used as a generic argument in WebApplicaitonFactory is contained within the entry point to assembly and throws InvalidOperationException otherwise
2018-09-06 18:02:21 -07:00
Pavel Krymets 2597a2e009
Merge QueryStatus and CreateHandler calls to make them atomic (#1359) 2018-09-06 15:42:18 -07:00
James Newton-King 863b1c2c97
Action endpoint metadata contains attributes from action and controller (#8395) 2018-09-07 10:01:40 +12:00
Justin Kotalik 2cc108b2e1
Write wide strings to stdout; cleanup logging providers; test utf8 (#1332) 2018-09-06 11:57:00 -07:00
Simon Cropp d3d7c55198 fix some spelling (#2888) 2018-09-06 11:48:25 -07:00
Ryan Brandenburg c2f15f4199 Don't use depricated constructor 2018-09-06 11:39:34 -07:00
Justin Kotalik 1fca011674
Fix output location for lib files (#1373) 2018-09-06 10:32:49 -07:00
Pranav K 07cc9e66c6
Add a feature to disable file watching in Razor pages (#8369)
* Add a feature to disable file watching in Razor pages

Fixes https://github.com/aspnet/Mvc/issues/8362
2018-09-06 10:16:31 -07:00
Pavel Krymets b1f0f173aa
Use ConnectionResetException with 'The client disconnected' message (#1364) 2018-09-06 10:10:07 -07:00
Chris Ross (ASP.NET) b8e56691cb Implement MaxRequestLineSize for HTTP/2 #2813 2018-09-06 10:01:28 -07:00
Chris Ross (ASP.NET) 384a518bda Implement MaxRequestHeadersTotalSize for HTTP/2 #2812 2018-09-06 09:07:16 -07:00
David Fowler edc1935475
Flow the cancellation tokens to ReadAsync and WriteAsync (#2865) 2018-09-06 09:04:39 -07:00
Simon Cropp cfb0d732b0 fix some spelling (#1035) 2018-09-06 08:46:34 -07:00
Simon Cropp b156dee4f1 Fix some spelling (#8378) 2018-09-06 07:39:01 -07:00
Takaaki Suzuki c0f3a46ffe
Don't call GetValidity method twice. 2018-09-06 07:33:48 -07:00
Ben Adams e174d277bd Inline 2018-09-05 20:53:06 -07:00
Ben Adams 337bc462de Fast-path async in PagedBufferedTextWriter 2018-09-05 20:53:06 -07:00
Ryan Nowak fabe189470 React to LinkGenerator changes 2018-09-05 20:52:37 -07:00
Ryan Nowak e3b704095b
Revisions to LinkGenerator (#770)
* Revisions to LinkGenerator

* PR feedback
2018-09-05 20:52:09 -07:00
James Newton-King dcfb63a768
Avoid RoutePattern allocating empty dictionaries (#772) 2018-09-06 14:00:52 +12:00
James Newton-King 1c74973c6a
Minor matcher builder allocation optimization (#771) 2018-09-06 13:47:34 +12:00
James Newton-King dbebdbecd6
Add flag for including label with DfaNodes (#769) 2018-09-06 13:38:17 +12:00
James Newton-King fe8c633224
Optimize builder and HTTP policy allocations (#768) 2018-09-06 13:25:35 +12:00
James Newton-King abc378d3dc
Avoid resizing large struct arrays (#767) 2018-09-06 13:10:17 +12:00
James Newton-King 0f5d471dfd
Create collections on DfaNode as needed (#779) 2018-09-06 12:58:57 +12:00
James Newton-King a777a4cdd5
Reuse collections in DfaMatcherBuilder (#778) 2018-09-06 12:25:45 +12:00
N. Taylor Mullen 3a281b8f58 Allow TagHelpers to occur after unclosed C# blocks without assert failures.
- This scenario wasn't considered previously.

#2566
2018-09-05 17:22:17 -07:00
Mike Harder 71b7bb50b2
Ensure external processes are killed when test process exits (#1371)
- Prevents locked files when stop debugging unit test
- Addresses #1279
2018-09-05 17:21:59 -07:00
Pavel Krymets 88d8571474
Add Trace level for request events, allow logging to eventlog (#1337) 2018-09-05 17:15:04 -07:00
Hassan Hashemi bca3160190 Remove redundant check
fixed https://github.com/aspnet/Mvc/issues/8374
2018-09-05 17:04:20 -07:00
Pavel Krymets 18a718d1f0
Catch all exception in native callbacks (#1369) 2018-09-05 16:48:10 -07:00
Pavel Krymets 613fbcc349
Enable code analysis on shim project (#1361) 2018-09-05 16:47:51 -07:00
Nate McMaster e23e8fff95
Install MicroBuild code signing plugin and set SignType = real (#1376) 2018-09-05 12:50:34 -07:00
Justin Kotalik 1b87f1e913 Merge branch 'merge/release/2.1-to-release/2.2' into release/2.2 2018-09-04 14:10:35 -07:00
Chris Ross (ASP.NET) 991cfa8bd8 Remove limits on SETTINGS_HEADER_TABLE_SIZE #2874 2018-09-04 12:01:13 -07:00
Pavel Krymets 0459b6d0d4
Fix dotnet.exe abort exception and startup/shutdown timeouts (#1352) 2018-08-31 09:05:46 -07:00
Justin Kotalik db01ae3717 Remove FreeConsole calls. (#1358) 2018-08-31 08:16:07 -07:00
Nate McMaster 7520ffa0ef
Fix up service scoping in the EF Core xml repository and update package version to 2.2 2018-08-30 16:22:43 -07:00
John Luo 153020ef8a Allow UTF8 encoded header values 2018-08-30 16:21:34 -07:00
Ryan Nowak 525fbf495b Fix #468 - all UseHealthChecks without a path 2018-08-30 15:33:49 -07:00
Nate McMaster a6a21351b6
Merge branch 'release/2.1' into release/2.2 2018-08-30 15:28:26 -07:00
Javier Calvarro Nelson bb1cd5ec09 Stop building dependent projects 2018-08-30 15:23:55 -07:00
Pranav K d8b7dbd1f3
Avoid null refs when IStatusCodeActionResult cannot be discovered 2018-08-30 15:17:09 -07:00
Ryan Nowak 945e798ca7 [Design] Set the endpoint feature only on success 2018-08-30 14:52:35 -07:00
BrennanConroy f42f4c56e6
Initialize HttpConnectionManager before registering callbacks (#2878) 2018-08-30 14:42:16 -07:00
Ben Adams 3dfa26f7e3 Resolve virtual ViewContext max once per method 2018-08-30 14:04:08 -07:00
Ryan Nowak 8395ad8340 remove references to ref emit packages 2018-08-30 13:26:22 -07:00
Justin Kotalik 729a98adfc
Call AllocConsole (#1351) 2018-08-30 12:20:53 -07:00
Justin Kotalik e7f3c7c62e
Remove bad rc files (#1355) 2018-08-30 12:18:30 -07:00
Justin Kotalik 922298bc90
Add rc file as an include for ANCMV1 (#1284) (#1344) 2018-08-30 12:00:13 -07:00
Pranav K f90a47c5af
Introduce ProducesErrorResponseTypeAttribute
Fixes https://github.com/aspnet/Mvc/issues/8288
2018-08-30 11:24:03 -07:00
Ryan Nowak 3e4a3d0b90
Allow health checks to use any DI lifetime (#466)
* Allow health checks to use any DI lifetime

This change allows registered IHealthCheck implementations to use any DI
lifetime. This is necessary for scenarios like using EF which requires a
scope.

The works by having the health check service create a scope for each
time it queries health checks. This scope does not overlap or share
state with other scopes (the request scope) so there is no crosstalk
between processing going on per-request in ASP.NET Core and the health
check operation.

* PR feedback and some logging cleanup
2018-08-30 10:51:48 -07:00
James Newton-King 927e7c8bfc
Support route data tokens with Endpoint Routing (#8360) 2018-08-30 15:14:34 +12:00
Ryan Nowak 8d053853bb Address PR feedback, I hit merge too soon. 2018-08-29 19:46:25 -07:00
Ryan Nowak 3511c8cef0 Add vectorized il-emit trie jump table
Add new futuristic jump table. Remove old experimental jump tables since
this is much much better.
2018-08-29 19:30:02 -07:00
Kristian Hellang ffdbea9dc1
Add analyzer support for status code methods and constructors 2018-08-29 18:23:52 -07:00
Ben Adams 2a426dfea5 Make ViewBuffer methods more inlinable (#8339)
* Make ViewBuffer methods more inlinable
2018-08-29 17:07:45 -07:00
Ryan Brandenburg afccb085a2 Fix links and formating 2018-08-29 16:22:42 -07:00
Ben Adams 22a40b6f2b Use Pages as List 2018-08-29 16:18:25 -07:00
Ben Adams 7bd9f9cc3e Reduce IList interface calls 2018-08-29 16:18:25 -07:00
Pavel Krymets 26710080fe
Set AspNetCoreHostingModel in templates (#716) 2018-08-29 16:08:58 -07:00
Pranav K 82a01a414d
Set trace id in ProblemDetalsClientErrorFactory 2018-08-29 16:03:08 -07:00
N. Taylor Mullen 852ad8df87 Allow content to be written after caught exception from child TagHelper.
- The issue was that the `executeChildContentAsync` call was stopping the invocation of the `_endTagHelperWritingScope`. Therefore, we'd never finish the TagHelper content scope and all following content would be ignored.
- Added two tests to validate the new functionality.

#2561
2018-08-29 16:00:15 -07:00
Ryan Brandenburg 75fa0cd6e8 Remove SpaServices where they're un-needed 2018-08-29 15:24:12 -07:00
Ryan Brandenburg ccb2c006aa Merge branch 'merge/release/2.1-to-release/2.2' into release/2.2 2018-08-29 15:21:15 -07:00
Hao Kung e38a307307
Allow cookie validation when stores don't support security stamp (#1941) 2018-08-29 14:41:51 -07:00
dan.s.ward 8f7d995508 Added Entity Framework Core backed IXmlRepository with tests and sample (#303) 2018-08-29 14:04:37 -07:00
James Newton-King b649133eec
Refactor KnownRouteValueConstraint to not require HttpContext (#8352) 2018-08-30 08:57:53 +12:00
Nate McMaster cf3d2f1299
Minor tweaks to meta-package descriptions (#1343)
Per feedback on #1320 which came in post-merge.
2018-08-29 12:03:24 -07:00
Patrick Westerhoff 208f6ff568 Fix #574: Set NoDefaultLaunchSettingsFile
When a project is created with ExcludeLaunchSettings enabled, set the
NoDefaultLaunchSettingsFile property to prevent Visual Studio from
creating a launchSettings.json.
2018-08-29 11:35:16 -07:00
James Newton-King 99c4f2f36a
Support policy arguments and resolving services by constructors (#753) 2018-08-29 14:51:34 +12:00
Pranav K d09c3c9e28
Polish ProblemDetails
* Add ability to set extended members on ProblemDetails
* Skip empty valued properties when serializing ProblemDetails

Fixes #8296
Fixes #8317
2018-08-28 16:21:39 -07:00
Gert Driesen 1a43e67542 Remove workaround for dotnet/corefx#24562 (#2863)
This issue caused a bind to a recently used endpoint to fail on macOS and Linux.

Addresses #2820
2018-08-28 15:59:17 -07:00
Pranav K 667ad4daff Use ClientErrorData to configure ClientErrorResultFilter
Fixes #8289
2018-08-28 13:35:32 -07:00
Massimiliano Donini 17d72c2b94 Fix msbuild targets to correctly copy deps.json 2018-08-28 13:32:48 -07:00
Ryan Nowak 96b77c8663 Fix aspnet/Routing#721 2018-08-28 12:26:13 -07:00
Stephen Halter 5ea537fbc4
Don't advance examined in Http1MessageBody.PumpAsync for canceled reads (#2847) 2018-08-28 11:28:17 -07:00
Stephen Halter 89f4850883
Avoid throwing the same exception instances in parallel (#2859) 2018-08-28 10:56:46 -07:00
Nate McMaster 5f89835420
Merge branch 'release/2.1' into release/2.2 2018-08-28 10:33:12 -07:00
Nate McMaster afa93f1852
Merge branch 'release/2.1' into release/2.2 2018-08-28 10:14:24 -07:00
BrennanConroy 04c606d55f LongPolling: Setting connection to inactive while there is still an active poll (#2769) 2018-08-28 09:44:50 -07:00
Ryan Brandenburg 9c28f95b12 Add Microsoft.AspNetCore.Razor.Design to templates (#674) 2018-08-28 09:41:15 -07:00
Justin Kotalik 037482829d
Add commit hash to V1 description (#1281) 2018-08-28 09:36:21 -07:00
Justin Kotalik 5f20f2a2dd
Update schema for ANCMv1 (#1276) 2018-08-28 09:35:49 -07:00
Justin Kotalik cc26d973ba
Remove early dereference of ASPNETCORE_PORT env var (#1274) 2018-08-28 09:34:54 -07:00
Justin Kotalik 338af6f07d
Reduce probability of startup port collisions (#1273) 2018-08-28 09:34:10 -07:00
David Fowler 6dc55a0462
Don't preserve the ExecutionContext when dispatching callbacks (#2861)
* Don't preserve the ExecutionContext when dispatching callbacks
- The layers up stack already preserve and restore the ExecutionContext, there's no need to capture and run for the scheduler callback and cancellation token callback
2018-08-28 09:32:33 -07:00
Nate McMaster 42fa04aa87
Add the latest version of Microsoft.AspNetCore.Razor.Design to the offline package cache (#1316) 2018-08-28 09:19:56 -07:00
Nate McMaster 6b1d22c581
Add package descriptions for Microsoft.AspNetCore.{App, All} (#1320) 2018-08-28 09:19:37 -07:00
Nate McMaster b206d59612
Prepare 2.1.5 patch 2018-08-28 09:14:43 -07:00
Ryan Nowak 0fcf2448c3 Fix aspnet/Routing#722
Exposes a separate change token that will be triggered after action
descriptors have been updated.
2018-08-27 17:24:21 -07:00
Justin Kotalik 2605b943f3
Use only one log file for stdout (#1334) 2018-08-27 16:50:16 -07:00
James Newton-King 8ed9d0aac2
Use Endpoint instead of RouteEndpoint where possible (#8331) 2018-08-28 11:00:11 +12:00
Ryan Nowak cb0627b28a Addressing a skipped test
I think something that was meant to be revisited in a PR got left
behing. I found this while fixing aspnet/Routing#772 and it seems worth
addressing.

This change removes the hardcoding of action/controller/area in the
data source, and corrects the behavior of required route values when
they aren't in that set.
2018-08-27 15:34:37 -07:00
David Fowler 04b365a22f
Don't hold onto the HttpContext in the HostingLogScope (#1531)
- Multiple things capture the ExecutionContext, reduce the changes of improperly rooting the HttpContext when we only need a few properties from the request.
2018-08-27 11:59:56 -07:00
Stephen Halter f70ba53253
Fix race when SystemClock is accessed before first heartbeat (#2851) 2018-08-27 10:59:29 -07:00
Matt Ward 9652fbd2b4 Fix default None items not being removed from ClientApp directory
Content MSBuild items from the ClientApp directory are removed from
the project using an MSBuild and then all files are added as None
items. None items that were added by the .NET Core SDK default MSBuild
items were not being removed from the ClientApp directory. This
resulted in duplicate files shown in Visual Studio for Mac. This
affected all the SPA project templates.

Fixes #559
2018-08-27 09:59:00 -07:00
Ryan Brandenburg a3b20c57ea Add appsettings.json to EmptyWeb 2018-08-27 09:52:47 -07:00
Pavel Krymets 9b68c5ce89
Add tests for processpath and arguments (#1331) 2018-08-24 22:20:28 -07:00
Pavel Krymets 6ddbfb64b9
Improve configuration file handling logic (#1317) 2018-08-24 20:20:26 -07:00
Justin Kotalik 2cbf5bd84e
Query event logs when verifying event log messages. (#1323) 2018-08-24 16:02:04 -07:00
Pranav K a7301120b1
Unwrap filter factories in TypeFilterAttribute & ServiceFilterAttribute
Fixes #7855
2018-08-24 14:15:40 -07:00
John Luo 64127e6c76 Implement MaxFrameSize and HeaderTableSize for HTTP/2 2018-08-24 11:07:41 -07:00
David Fowler d318d7b94d
Make tests less flaky (#2848)
- Re-order logs with completing the task
2018-08-23 22:29:56 -07:00
Stephen Halter fc3c2eef5e
Handle SocketError.ProtocolType as a connection reset on macOS (#2845)
* Handle SocketError.ProtocolType as a connection reset on macOS
* Make IsConnectionResetError and IsConnectionAbortError stricter
2018-08-23 19:16:44 -07:00
Stephen Halter e5a1101239
Improve exception handling in SocketConnection (#2844)
- Avoid race where a connection reset observed by both DoSend() and DoReceive()
  resulted in a ConnectionAbortedException being thrown from the input Pipe
  instead of a ConnectionResetException.
2018-08-23 16:59:02 -07:00
Javier Calvarro Nelson dfb579d45c [Fixes #8021] Copy the request headers before sending the request on the RedirectHandler
If another handler modifies the request headers the modified headers get
applied on subsequent requests, which is not correct. This change copies
the headers before sending the request and uses the original headers for
the redirect request instead of the potentially modified ones.
2018-08-23 16:09:05 -07:00
Javier Calvarro Nelson b3a6bda45a Sync Identity UI default layout with the templates layout 2018-08-23 15:15:54 -07:00
James Newton-King 40fb13a021
Fix DfaMatcher to work with non-RouteEndpoint (#739) 2018-08-24 09:11:13 +12:00
Justin Kotalik 1d4d882c0d Spelling mistake in debug log 2018-08-23 13:45:10 -07:00
Pranav K 8eea0ad44c Update tests to latest compat switch 2018-08-23 08:09:02 -07:00
James Newton-King e2de54a92d
Update MvcEndpointDataSource to use RoutePattern (#8249) 2018-08-23 21:42:42 +12:00
James Newton-King 15e46ad323
Change RoutePattern to not throw when inline and arg default value are the same (#747) 2018-08-23 21:39:23 +12:00
David Fowler 68a0863524
General connection management (#2834)
This change makes the handling of graceful shutdown work for more than just http scenarios. This should allow us to move TLS further out and should also allow us to start moving things to connection middleware instead of connection adapters.
Summary of the things changed/added:
- Added IConnectionLifetimeNotificationFeature that represents an attempt to gracefully close the connection that isn't being aborted. This feels pretty awful but we may have to do it.
- Moved connection management to the ConnectionDispatcher and out of the HttpConnectionMiddleware
- Removed Http from the names of the ConnectionManager and Heartbeat
2018-08-22 20:35:28 -07:00
Ryan Nowak a0aa61fd10 Improvements for IEndpointSelectorPolicy
These changes are based on our discussion earlier this week. Adding
async, and making it possible to short circuit, which should be better
aligned with the requirments of versioning.
2018-08-22 19:26:13 -07:00
Justin Kotalik 3b3f128306
Enable app verifier on VSTS; Fix debug log handle use (#1291) 2018-08-22 15:39:59 -07:00
James Newton-King 03da30f3bf
Replace remaining references to global routing (#8312) 2018-08-23 10:23:29 +12:00
Javier Calvarro Nelson de0932961b Default Identity UI to Bootstrap4 2018-08-22 13:40:38 -07:00
Javier Calvarro Nelson 110d835434 Fix layout and login partial issues 2018-08-22 13:33:01 -07:00
Javier Calvarro Nelson 3ed89516ba Update precedence for 2.2 templates 2018-08-22 13:31:59 -07:00
Pavel Krymets eebbb6a602
Support portable.exe apps and better error reporting (#1287) 2018-08-22 12:04:04 -07:00
Ryan Brandenburg 11c6ebea2e Add comments regarding HSTS max age 2018-08-22 11:45:56 -07:00
Ryan Brandenburg d9e71527e8 Fix copyright year 2018-08-22 11:44:46 -07:00
BrennanConroy f8a46faf9d
Detect ASP.NET SignalR server connection attempt (#2820) 2018-08-22 11:17:04 -07:00
BrennanConroy db3f3f2a53
Tweak some Redis log levels (#2838) 2018-08-22 10:35:43 -07:00
Pavel Krymets 36e5aceb3c
Serve 503 if server process is shutting down (#1293) 2018-08-22 09:53:25 -07:00
Pavel Krymets e26231b613
Cleanup application manager (#1250) 2018-08-22 08:23:40 -07:00
James Newton-King 1680b9f4fc
Change endpoint invoker to RequestDelegate, Endpoint/EndpointMetadataCollection namespaces, split out IRouteValuesFeature (#712) 2018-08-22 17:15:57 +12:00
James Newton-King cbe1526763
React to routing changes (#8303) 2018-08-22 17:15:09 +12:00
James Newton-King 08a0a7fadb
Remove MatchProcessor, add IParameterPolicy (#734) 2018-08-22 15:24:34 +12:00
David Fowler 0b471f2b2f Sockets: do 0 byte reads to avoid allocating memory for idle connections
- Do not do 0 byte reads on OSX due to potential sockets bug
2018-08-21 18:07:15 -07:00
Javier Calvarro Nelson ac744d8adb Support Bootstrap 3 and Bootstrap 4 on idenity UI 2018-08-21 17:46:13 -07:00
Pranav K 5bd818bd64
Introduce ProblemDetailsFilter
Fixes https://github.com/aspnet/Mvc/issues/6786
2018-08-21 17:29:12 -07:00
Justin Kotalik e23d9cb4ac
Fix a few leaked handles (#1260) 2018-08-21 15:45:42 -07:00
James Newton-King 4f33362ab5
Minor RVD and EndpointMetadataCollection refactors (#708) 2018-08-22 10:30:25 +12:00
James Newton-King 967afc3b0f
Optimize RoutePattern allocations (#706) 2018-08-22 10:01:52 +12:00
Justin Kotalik 9ccd3addc3
Synchronizes copyrights between V1 and V2. (#1283) 2018-08-21 14:13:33 -07:00
Justin Kotalik 135da118d1
Add rc file as an include for ANCMV1 (#1284) 2018-08-21 14:12:15 -07:00
Pavel Krymets 26964b2687
Macrosify out-of-proc (#1268) 2018-08-21 14:11:34 -07:00
Justin Kotalik 2778570f0b
Redirect native logs into stdout and pipe (#1154) 2018-08-21 14:03:26 -07:00
Mike Harder 2d61889e5e
Support empty value for ASPNETCORE_PORT (#1280)
- Addresses #1264
2018-08-21 13:44:34 -07:00