Commit Graph

14108 Commits

Author SHA1 Message Date
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
Nate McMaster 28d4064cba
Add a build definition for compiling Universe in VSTS 2018-08-20 16:02:43 -07:00
Nate McMaster b67a141263
Add code for building the Windows Hosting Bundle and ASP.NET Core runtime installers into this repo
This code previously was in private repos because it had references to internal locations and drop shares. This code has been modified to remove these internal-only pieces.
2018-08-20 15:56:22 -07:00
Mike Harder 6da64c6d55
Fix process start error message (#1267)
- Addresses #1261
2018-08-20 14:13:55 -07:00
Mike Harder de32a08ae7
Fix typo in process start error message (#1266) 2018-08-20 14:11:51 -07:00
Mike Harder cc4bbd1cef
Fix typos in portsetup error message (#1265) 2018-08-20 14:11:18 -07:00
Nate McMaster 86b7d5162a
Merge branch 'release/2.1' into release/2.2 2018-08-20 08:28:58 -07:00
Christer van der Meeren e85c36fa8c Clarify CORS policy result log messages (#177)
Fixes https://github.com/aspnet/Home/issues/3419
2018-08-20 08:25:45 -07:00
John Luo 6f7a841374 Fire OnStreamCompleted after all pipes are closed 2018-08-17 17:45:47 -07:00
Justin Kotalik a1e8b3a9af
Free environment variable table in inprocess application (#1254) 2018-08-17 16:29:30 -07:00
Chris Ross (ASP.NET) aa9dde2457 Extract bitshift helper code, Frame cleanup #2773 2018-08-17 15:48:16 -07:00
Nate McMaster 84d4627b8b Upgrade build tools to use the 2.1.400 SDK (#1249) 2018-08-17 15:23:18 -07:00
Justin Kotalik 5fc59b2331
Free ALLOC_CACHE_HANDLER on dll unload (#1253) 2018-08-17 14:26:53 -07:00
Hao Kung d040dabc03 Allow QR AuthenticatorIssuer to be configurable 2018-08-17 12:56:49 -07:00
Nate McMaster b4538831b7
Add package descriptions for Microsoft.AspNetCore.{App, All} 2018-08-17 12:06:25 -07:00
Nate McMaster 16164689dc
Update documentation on the various package archive formats (#1324) 2018-08-17 10:42:26 -07:00
Kiran Challa 731767837a Introducing new **catchAll parameter to allow generating links with unencoded values 2018-08-16 15:52:09 -07:00
Pranav K 522006d2c8
[Design] Add a MaxValidationDepth option to ValidationVisitor
Fixes #7357
2018-08-16 15:01:18 -07:00
Thomas Levesque 373a9c5eb2 Update default UI and samples to use provider display name 2018-08-16 13:40:10 -07:00
Thomas Levesque fec946759c Fix SignInManager to return correct external provider display name 2018-08-16 13:38:23 -07:00
Wilson 87cfd540ce Fixed documentation typo (#1862)
Corrected a typo on the XML documentation of the UserId property that made it read "... sets the of the ..."
2018-08-16 13:38:09 -07:00
David Fowler 83488886e0
Clean up some remants of the past (#2827)
- Remove Application from HttpConnectionContext and Http*ConnectionContext (it's no longer required)
2018-08-15 23:41:32 -07:00
Ryan Nowak 730646c301 Perf for EMC 2018-08-15 22:08:58 -07:00
Ryan Nowak 4fa0b068b8 Fix #710 - add support for data tokens 2018-08-15 21:43:50 -07:00
Ryan Nowak 97f54c532b Support supression of matching for endpoints 2018-08-15 21:36:08 -07:00
Stephen Halter 5becb72107
Improve test logs (#2826)
- Include hosting logs in some tests that where previously missing them
- Prevent duplicate logs from Mock CallBase an CompositeKestrelTrace
- Log ports used by transport functional tests
- Add file logging to HTTP/2 "unit" tests
2018-08-15 18:31:56 -07:00
Pavel Krymets 6440545c4a
Add hosting model switch tests (#1245) 2018-08-15 16:47:47 -07:00
Chris Ross (ASP.NET) 0c2923135b Limit concurrent HTTP/2 Streams per connection #2815 2018-08-15 15:58:57 -07:00
Pavel Krymets 60ca38ab56
Fix deployment parameters override (#1241) 2018-08-15 12:15:21 -07:00
Ryan Nowak 085a0b808e Use RoutePattern in TemplateBinder 2018-08-15 12:12:52 -07:00
Pranav K af770ede87 Ignore parameters that specify a model binder type 2018-08-15 12:12:04 -07:00
Ryan Brandenburg 200a70bb86 Update doc comments 2018-08-15 11:42:50 -07:00
Mike Harder 1328162052
Remove early dereference of ASPNETCORE_PORT env var (#1225)
- Addresses #1119
- Includes workaround for #1237
2018-08-14 16:53:13 -07:00
Pranav K 7e25d7908a
Warn when the parameter name for a model bound complex parameter has the same name as a top level property
Fixes #7753
2018-08-14 15:44:48 -07:00
Ryan Nowak e09b88ebd6 Tokenize Less 2018-08-14 15:31:38 -07:00
Pavel Krymets 1104564797
Throw when web config action is added without publish (#1234) 2018-08-14 15:08:20 -07:00
Justin Kotalik 0d91dde270
Dynamically link ucrt for release builds (#1230) 2018-08-14 12:32:39 -07:00
Pavel Krymets 8dbe564263
Add commit hash to V1 description (#1229) 2018-08-14 12:24:49 -07:00
kishanAnem 5e20c313d9
Array or List in query string does not get parsed #7712 (#7967)
- exclude collections when detecting complex types in `ApiBehaviorApplicationModelProvider`
- add test cases
2018-08-14 12:06:27 -07:00
Marcin Burak 04e58d6ee4 Changed /* */ style comments to // style comments 2018-08-14 11:21:51 -07:00
Ryan Brandenburg a431f8efa1
Don't publish too much of ClientApp (#672)
* Don't publish too much of ClientApp

* Fix scripts and remove extra publish items
2018-08-13 16:21:50 -07:00
Kristian Hellang 2421ae8c83 Add IStatusCodeActionResult (#8265)
* Add IStatusCodeActionResult
* Add unit test for explicitly implemented property on StatusCodeResult
2018-08-13 15:39:20 -07:00
Ryan Nowak 585e6cd3fe Introduces a 'formatter' for formatting the IR
The new Formatter is used in debugger display, to resolve #2264

The next iteration (assuming we like this) will be to replat our testing
baseline infrastructure on top of this, and then start sharing that with
Blazor - related to #2265.

I found when implementing debugger display that I was duplicating a lot
of details between testing and this.

I also want to convert the Blazor tests to use shared infrastructure.
Right now the Blazor tests use a modified version of the Razor
infrastructure that has different features.
2018-08-13 13:09:49 -07:00
Pavel Krymets d725972355
Start adding configuration reload tests (#1212) 2018-08-13 13:02:57 -07:00
Chris Ross (ASP.NET) 43398482a5 Implement MaxRequestBodySize for HTTP/2 #2810 2018-08-13 12:06:21 -07:00
Stephen Halter cd6de2fa18
Improve HTTP/2 stream abort logic (#2819)
- Fix race where headers frame could be written after an abort was observed
- Fix Http2StreamTests to verify expected abort-related exceptions
2018-08-13 11:45:17 -07:00
Pavel Krymets f1c1f82e8b
Fix is_regular_file again (#1218) 2018-08-13 10:32:39 -07:00
Pavel Krymets 36add746d7 General cleanup 2018-08-13 08:51:03 -07:00
Pavel Krymets a8be2bf25b
Add common retry helper for SeverManager (#1207) 2018-08-10 14:52:29 -07:00
Ryan Brandenburg b029f79b4d
Import styles in correct order (#668)
In the `angular-cli.json` file, the styles.css file should be imported last in the styles section, so the developer can override styles from third party libraries (bootstrap, in this case).
2018-08-10 14:45:12 -07:00
Nate McMaster af616d9b99
Remove KoreBuild-isms from project templates (#667)
Removing MSBuild properties and items are for our build infrastructure, not for customers.
2018-08-10 11:01:56 -07:00
Pranav K 9da8e2c908 Ensure UnsupportedContentTypeFilter runs before ModelStateInvalidFilter
Both UnsupportedContentTypeFilter and ModelStateInvalidFilter use ModelState to
determine the response. UnsupportedContentTypeFilter returns a more specific
response and should execute earlier than the latter filter.

Fixes #8236
2018-08-10 10:39:13 -07:00
Nate McMaster ecb353ab2a
Merge branch 'release/2.1' into release/2.2 2018-08-10 09:49:37 -07:00
BrennanConroy b82fcc0b21 log when WebSocketTransport has started (#2752) 2018-08-10 09:49:17 -07:00
Nate McMaster 9534c08142
Change versioning of Microsoft.AspNetCore.DataProtection.Redis to 2.2 (#320) 2018-08-10 09:13:02 -07:00
Nate McMaster a85d99ab8e
Add the 2.1.3 archive baselines and a target to ensure this test is run on PR builds 2018-08-10 09:08:55 -07:00
John Luo 62a30a731d Fix bug in graceful shutdown 2018-08-10 00:17:29 -07:00
Pavel Krymets 4628525301
Start W3SVC if it is stopped (#1197) 2018-08-09 17:30:26 -07:00
Chris Ross (ASP.NET) b078521f17 Hold open the nginx dynamic port 2018-08-09 12:30:32 -07:00
John Luo cef46fdaa7 Merge branch 'johluo/more-graceful' into release/2.2 2018-08-09 12:00:36 -07:00
John Luo 7c9e234457 Gracefully wait for streams to complete when pipe completes 2018-08-09 11:59:47 -07:00
Pavel Krymets 8361b8cfa9
Split handler resolution from application info (#1177) 2018-08-09 11:32:51 -07:00
Günther Foidl c8418c6de8 Derive SocketAwaitable from SocketAsyncEventArgs (#2592)
* SocketSenderReceiverBase as baseclass for SocketSender and SocketReceiver
* Made SocketAwaitable.GetResult inlineable
* SocketAwaitable renamed to SocketAwaitableEventArgs and inherited from SocketAsyncEventArgs

Thus saving an extra object (`SocketAwaitable`) and two int-fields, so less allocations.
2018-08-09 11:24:06 -07:00
Pavel Krymets e6330ab19b
Fix win7 test again (#1187) 2018-08-09 10:08:44 -07:00
Pavel Krymets dd429e9597
Catch exceptions thrown by is_regular_file (#1179) 2018-08-09 09:45:28 -07:00
Pavel Krymets d6f410bf42
Add locked app_oflline file test and remove retrying client (#1178)
* Add locked app_oflline file test and remove retrying client

* Write bytes to file
2018-08-09 09:21:02 -07:00
Ryan Nowak 12cb35894e Add support for GraphViz
Adds **internal** support for dumping a route table to GraphViz DOT
notation. This allows us to dump the DFA graph for a route table and
visualize it.

Example:
https://gist.github.com/rynowak/2b24e4a6a602ca6f9c4de3ec227d621b
2018-08-08 21:36:39 -07:00
Pavel Krymets 433dd42909 Use web.config for ASPNETCORE_DETAILEDERRORS 2018-08-08 17:14:46 -07:00
BrennanConroy a550ae6cc3
Provide a better error message when invoking a non-existant hub method (#2768) 2018-08-08 15:55:33 -07:00
Kristian Hellang da1189e6f1 Use StatusCodes constants instead of literals in the ProducesResponseType code fix (#8234)
* Use StatusCodes constants instead of literals
2018-08-08 14:41:30 -07:00
BrennanConroy 2265acde78
Don't start stream if already canceled (#2764) 2018-08-08 14:04:05 -07:00
Pavel Krymets d153bab4a1
Use configurationRedirection for IIS Deployer (#1170) 2018-08-08 11:25:44 -07:00
Stephen Halter c0557cfca7
Improve exception handling in Http2Connection.ProcessRequestsAsync (#2787) 2018-08-08 11:20:49 -07:00
Chris Ross (ASP.NET) 5378900e0c Ack settings before window updates #2772 2018-08-08 11:19:23 -07:00
Ryan Brandenburg f868277373 Experience review feedback 2018-08-08 10:57:45 -07:00
Chris Ross (ASP.NET) c73d513289 Add Http2 frame logging 2018-08-08 09:46:42 -07:00
David Fowler 5e7f63b096
Make un-graceful shutdown a bit more graceful (#2748)
* Make un-graceful shutdown a bit more graceful
- Change how graceful shutdown is done to ensure there are no errors on shutdown.
- Avoid closing pipes from under other components that own those pipes.
- Close the application output so that the application's read loop ends gracefully. For websockets, we cancel the token, for other transports, we close the output directly.
2018-08-07 21:39:09 -07:00
Mike Harder 7431892e64
Replace "std::experimental::filesystem" with "std::filesystem" (#1153)
* Continuation of #1082
2018-08-07 16:37:11 -07:00
Mike Lorbetske b53d50f6f0
Fix incorrectly resolved cross-document pointers 2018-08-07 16:16:33 -07:00
Stephen Halter 0e99235d59
Add in-memory functional test project (#2780)
- Run AddressRegistrationTests independently to avoid port conflicts
- Only run tests that verify transport behavior for each transport
2018-08-07 15:34:11 -07:00
Chris Ross (ASP.NET) 0cf53e7d34 Show HTTP/2 status on requests #106 2018-08-07 14:39:27 -07:00
Kiran Challa 9585084258 Using Routing feature branch versions 2018-08-07 13:38:36 -07:00
John Luo 8a74cf3ed5 Gracefully shutdown HTTP/2 connections on server and client initiated shutdown 2018-08-07 10:59:29 -07:00
James Newton-King dce72c9553
Remove public extension methods for registering endpoint routing (#697) 2018-08-07 17:49:31 +12:00
BrennanConroy e403de7fbf
Solve LongPolling races by moving Cts disposal to connection disposal (#2731) 2018-08-06 19:17:29 -07:00
James Newton-King 39c5700148
Add docs to RouteValuesAddress (#695) 2018-08-07 13:14:35 +12:00
Pavel Krymets c6830afa55
Add default debug log file name and dll information to debug log (#1149) 2018-08-06 17:20:44 -07:00
Ryan Brandenburg 647f0f81c2 CompatibilityVersion -> 2.2 2018-08-06 16:22:05 -07:00
Ryan Brandenburg e47a08612b JQuery-validate-unobtrusive version 3.2.10 2018-08-06 15:21:46 -07:00
Mike Harder 60a559719f
Reduce probability of startup port collisions (#1136)
- GetTickCount() is limited to the resolution of the system timer, which is typically 10-16 ms.  If two apps in separate app pools are started within this time window, it's possible GetTickCount() will return the same value, which causes the apps to try the same random port(s).
- Addresses #1124
2018-08-06 14:41:11 -07:00
James Newton-King 47f2f451e3
EnableEndpointRouting documentation (#8220) 2018-08-07 09:22:33 +12:00
Pavel Krymets 4e7cbb1931
Initialize logging under exclusive lock (#1161) 2018-08-06 12:30:58 -07:00
Ryan Brandenburg c5a5134e46 Revert "Rename Web Application to Starter Web Application"
This reverts commit 01ce77da56.
2018-08-06 12:10:14 -07:00
Ryan Brandenburg 41d648fcc1 Fully-qualify model name 2018-08-06 12:03:22 -07:00
Chris Ross (ASP.NET) ea7e53cab0 Send Resets for unhandled app exceptions #2733 2018-08-06 11:35:42 -07:00
BrennanConroy e78e3db6f4
Honor InherentKeepAliveFeature for server timeout (#2727) 2018-08-06 10:37:12 -07:00
Artak 3ee57ff81a
Merge pull request #659 from aspnet/dev/mkArtakMSFT/issue579
Removed the `layout=null` assignment from the page
2018-08-06 10:35:26 -07:00
Ryan Brandenburg 71c15fb76a Use bootstrap4 for templates 2018-08-06 10:16:35 -07:00
Pavel Krymets 959771e73a
Fix incrementality checks for test projects (#1145) 2018-08-06 09:46:40 -07:00
Pavel Krymets c2f5101b73
Split managed application status and IApplication status (#1148)
Split managed application status and IApplication status
2018-08-06 09:41:56 -07:00
Artak 14512a714f
Removed the `layout=null` assignment from the page 2018-08-06 08:55:51 -07:00
Ryan Brandenburg d95f971693 Fix broken tests 2018-08-06 07:22:55 -07:00
Mike Lorbetske 43c74cfa53
Respond to much of the feedback from review
Default to requerying swagger for each exec

Auto-set the content-type if not yet set for requests based on swagger

Fix swagger UI command

Make error and warning colors configurable

Allow aliases to be specified in structured input based commands

Have delete not require a body

Show allowed methods for . and ..

Show verbs on the announced path after CD

Issue a request on set base and warn if there's a socket error
2018-08-03 20:58:07 -07:00
Ryan Nowak e53a9f57db adding more docs 2018-08-03 18:55:57 -07:00
James Newton-King 5ee3ae9002
Add XML docs to data sources and metadata (#692) 2018-08-04 13:34:25 +12:00
Javier Calvarro Nelson 16a933a0a4 Update static content 2018-08-03 17:18:32 -07:00
Kiran Challa c16f86f0ef React to Routing repo's api changes 2018-08-03 16:25:41 -07:00
Mike Harder d199de2c80
Revert "Replace "std::experimental::filesystem" with "std::filesystem" (#1153)"
This reverts commit 2a761d635c.
2018-08-03 15:44:35 -07:00
James Newton-King d4472f08ed
Remove legacy EnableGlobalRouting option (#8214) 2018-08-04 09:58:00 +12:00
Ryan Nowak ebafbcdae3 Add filtering by port
This adds UseHealthChecks overloads that configure the health checks
middleware to listen on a preconfigured port.

This is sugar for MapWhen, but it's important because a significant set
of users will want to use Health Checks in this way.
2018-08-03 14:37:27 -07:00
Mike Harder 2a761d635c
Replace "std::experimental::filesystem" with "std::filesystem" (#1153)
* Continuation of #1082
2018-08-03 14:04:32 -07:00
Pavel Krymets f867367b56
Use V2 schema for V1 outputs, do not pack pdb's (#1152) 2018-08-03 13:55:25 -07:00
Javier Calvarro Nelson 4b2dc59979 [Fixes #1835] Move the default Identity UI to use Bootstrap 4 2018-08-03 13:48:30 -07:00
Kiran Challa 4d706f045f rebase changes 2018-08-03 12:45:31 -07:00
Kiran Challa 09ce9c3041 Api clean up 2018-08-03 12:37:37 -07:00
James Newton-King 091cb94094 Change metadata namespace
Change EndpointOptions visibility to internal
Add IRequiredValuesMetadata
2018-08-03 12:37:37 -07:00
Kiran Challa c8946a40e4 Created LinkGenerationTemplate and friends 2018-08-03 12:33:34 -07:00
Mike Lorbetske 8a9b407761
Use netcoreapp2.1 instead of 2.2 2018-08-03 12:27:02 -07:00
Pranav K a375cba359
Copy action constraints and EndPointMetadata when setting up a PageActionDescriptor (#8208)
* Copy action constraints and EndPointMetadata when setting up a PageActionDescriptor

Fixes #8207
2018-08-03 12:04:44 -07:00
Ryan Nowak 4549b84cb5
Remove JSON output (#457)
* Remove JSON output and convert to sample

GlennC and I made the decisison to turn the JSON output into a sample
rather than something we support out of the box. We wouldn't tell
customers to definitely use it and we don't want to introduce more
coupling to JSON.NET.
2018-08-03 09:40:45 -07:00
Mike Lorbetske af5d8a8244
Address most code review comments
Pagination hasn't been dealt with yet

mac keybindings may be able to be simplified, pending some additional verification

Fix 3rd party signing cert

Bind a few common bash/zsh mappings

Check for output redirection

Make package version variable name consistent

Add --help option for the command line

Remove regions

Remove old pointer resolution code

Make command not found message more friendly

Fix issue where base address was required for requests to absolute URIs

Add options to suppress response formatting and streaming

Turn off packing for the REPL project
2018-08-03 09:18:39 -07:00
James Newton-King ac410b76d9
Change MvcEndpointInfo to internal (#8210) 2018-08-03 16:30:57 +12:00
Pavel Krymets 05eb6a7f7c
Add ERROR_SHARING_VIOLATION to retry list for IISDeployer.Start (#1147) 2018-08-02 16:51:00 -07:00
David Fowler bc13fd5450
Write websocket header directly to the repsonse headers (#253) 2018-08-02 16:45:29 -07:00
Pranav K ce8fc29728 ConsumesAttribute accepts requests without content type
Fixes #8174
2018-08-02 16:27:23 -07:00
Kiran Challa b177ba5309 Changed api of LinkGenerator 2018-08-02 16:10:56 -07:00
Pranav K 0989231ed5 Make structs readonly 2018-08-02 15:44:09 -07:00
BrennanConroy 810c7cf9ad
Fix ODE race with cancellationtokensource (#2721) 2018-08-02 15:24:26 -07:00
Ryan Nowak 9cea167cfa
Add docs - EndpointFeature and related types (#687)
* Add docs - EndpointFeature and related types

* Add docs for route patterns
2018-08-02 15:24:00 -07:00
BrennanConroy 90606338fb
Log when closing connection due to timeout (#2722) 2018-08-02 15:21:24 -07:00
Pranav K e2b6f07778 Respect LowercaseUrls in ApiExplorer
Fixes #8006
2018-08-02 14:58:41 -07:00
BrennanConroy 768d2a023e
Add Origin validation to WebSockets middleware (#252) 2018-08-02 14:43:11 -07:00
Pranav K 5a20037965
Move API convention analyzers to Microsoft.AspNetCore.Mvc.Api.Analyzers
Fixes #8153
2018-08-02 13:53:33 -07:00
Artak Mkrtchyan 6d9aa281c5
Render `maxlength` attribute for an input tag, when MaxLength or StringLength validation attributes are applied to the model class. 2018-08-02 13:44:19 -07:00
Chris Ross (ASP.NET) beca0259c2 Verify request Content-Length #2733 2018-08-02 13:23:57 -07:00
Pavel Krymets 477fd1d90d
Aquire exclusive lock when creating application info (#1142) 2018-08-02 13:17:17 -07:00
Pranav K b7335ac768
Add a code fix that applies ProducesResponseTypeAttributes 2018-08-02 09:40:18 -07:00
Pavel Krymets 1d1b2155c4
Merge pull request #1117 from aspnet/shirhatti/updatemodulename
Update module version property to match exact name of the module
2018-08-02 08:57:10 -07:00
Ryan Nowak 64124e9c85 Add filtering to Health Checks middleware
This allows each middleware to be configured with a specific set of
checks (by name). See the comments in the sample for how this is
frequently used.

This is also addresses aspnet/Home#2575 - or at least the part that we
plan to do. We think that any sort of built-in system of metadata or
tags is vast overkill, and doesn't really align with the primary usage
of health checks.

We're providing building blocks, and these can be put together to
build more complicated things like what's described in aspnet/Home#2575.
2018-08-01 19:07:58 -07:00
Ryan Nowak 2b289d2f2c Use MatcherPolicy for Consumes 2018-08-01 19:05:04 -07:00
Ryan Nowak 47f427d5ac Updating Health Checks for 2.2
A bunch of small changes and updates for 2.2 focused at making our main
scenarios more streamlined and focused. Also adds samples for
extensibility we support so far.

A list of changes:

Clearing baselines for these projects. We didn't ship anything in 2.1 so
there should be nothing in the baselines.

--

The middleware now uses Map for path matching. This makes the actual
`HealthCheckMiddleware` more standalone. This will make it easy to use
with Dispatcher/Endpoint Routing in the future.

This also manifests by removing Path from HealthCheckOptions - the path
is an explicit argument to the UseHealthChecks middelware - this
streamlines the design for 3.0.

--

Added extensibility for customizing the status codes (aspnet/Home#2584)

--

Added extensibility for writing the textual output (aspnet/Home#2583)

--

Changed the default output to be `text/plain`. The most common use cases
for health checks don't include a detailed status.

The existing output format is still available as an option.
2018-08-01 18:49:44 -07:00
James Newton-King 8c4f187c22
Endpoint routing rename and API review changes (#684) 2018-08-02 13:38:08 +12:00
James Newton-King 44f5b54f5f
React to routing API review (#8194) 2018-08-02 13:37:43 +12:00
Wraptor a080301b89 Removed CorsConstats.Simple* variables 2018-08-01 16:02:13 -07:00
Flying Wraptor 2db11051d8 Removed Simple request filtering 2018-08-01 16:02:13 -07:00
Pavel Krymets 8ea2cd9081
Ship shim with integration testing (#1129) 2018-08-01 15:40:45 -07:00
Mike Lorbetske 7487da155f
Switch signing certificate for Newtonsoft.JSON to Microsoft3rdPartyAppComponentDual 2018-08-01 12:42:16 -07:00
Mike Lorbetske 7f8f210a24
Add license headers to all files
Bump version of JSON.NET to 11.0.2
2018-08-01 12:37:35 -07:00
Mike Lorbetske 89ab0cfde8
Initial commit of the HTTP REPL 2018-08-01 12:37:34 -07:00
Pranav K 814a803ed8
Use local instances of MemoryCache in script, link and image tag helper 2018-08-01 10:14:31 -07:00
Kiran Challa f4ff537a31 Fix flaky test by using a different instance of contract resolver
[Fixes #8175] FlakyTest: ExecuteAsync_ErrorDuringSerialization_DoesNotCloseTheBrackets
2018-08-01 07:33:37 -07:00
James Newton-King 046af405b6
Rename global routing to endpoint routing (#8179) 2018-08-01 15:05:49 +12:00
Mike Harder ff0a5bbbdf Update resources.h (#1134) 2018-07-31 19:21:32 -07:00
BrennanConroy c8eedb3540
Fix race when connection is canceled and new poll comes in (#2697) 2018-07-31 16:36:54 -07:00
Pavel Krymets 658906bf7c
Add TestApplication to allow publish output caching (#1511) 2018-07-31 16:36:31 -07:00
BrennanConroy 651b39bc90 Revert "Merge branch 'master' into release/2.2"
This reverts commit 785200877a, reversing
changes made to 3d6e1e69fd.
2018-07-31 15:24:33 -07:00
Kiran Challa e19b0b738c PR Feedback 2018-07-31 14:51:55 -07:00
Kiran Challa 85c7bd8fac Discard ambient values during link generation if the values do not match explicit values
[Fixes #544] Link generation: Discard ambient values unless routing to the same address
2018-07-31 14:50:04 -07:00
Kiran Challa ef2c127459 Show route name 2018-07-31 14:08:24 -07:00
Kiran Challa f62877b9db Show default values in CompositeEndpointDataSource's debugger display string 2018-07-31 12:39:37 -07:00
Ajay Bhargav Baaskaran a4b91d6dce Flatten AggregateExceptions in rzc 2018-07-31 11:11:43 -07:00
Pranav K 0726b8b98b
Make publicly exposed Roslyn types internal 2018-07-31 11:08:22 -07:00
Pranav K e094d2579e
Suppress obsolete warnings 2018-07-31 11:06:30 -07:00
Mikael Mengistu 785200877a
Merge branch 'master' into release/2.2 2018-07-31 10:22:09 -07:00
BrennanConroy 3d6e1e69fd
Close LongPolling connection on poll exception (#2701) 2018-07-31 09:52:10 -07:00
Pranav K ddde149792
Cleanup some IDE warnings 2018-07-30 15:06:43 -07:00
Pranav K b2a1a7c9de
Ensure parent is a MethodDeclarationSyntax 2018-07-30 14:59:27 -07:00
Pavel Krymets 5d4fedaeac
Remove extra logic from file watcher (#1107) 2018-07-30 14:37:33 -07:00
Pranav K d346255db6
Add analyzer and codefix that suggests removing unnecessary invalid model state validity checks
Fixes #8146
2018-07-30 13:14:20 -07:00
Justin Kotalik 7a4a945fd6
Stop site and app pool before restoring config (#1112) 2018-07-30 12:58:48 -07:00
Stephen Halter 6d46410a76
Don't ACK ACKs (#2767) 2018-07-30 12:25:32 -07:00
Justin Kotalik 367717760b
Handle subtype with suffix being a subtype without a suffix (#8170) 2018-07-30 12:05:41 -07:00
Justin Kotalik 80b6ae4eb4
Handle subtype with suffix being a subtype without a suffix (#1027) 2018-07-30 12:05:35 -07:00
Pranav K 0102d4efab
Introduce ApiConventionMethodAttribute
Fixes #8147
2018-07-30 11:13:25 -07:00
N. Taylor Mullen cb557cf771 Changed `GetDesiredIndentation` to be resilient to our SyntaxTree which occasionally has gaps.
- Added a test to cover the scenario.

#2489
2018-07-30 10:45:18 -07:00
Sourabh Shirhatti 132a382838
Update Microsoft.AspNetCore.Server.IISIntegration.targets 2018-07-30 09:51:17 -07:00
Sourabh Shirhatti 6a29b5296b
Update Microsoft.AspNetCore.Server.IIS.targets 2018-07-30 09:50:14 -07:00
Justin Kotalik 41493f01e3
Don't stop redirect stdout/stderr after startup is done. (#1067) 2018-07-29 23:25:32 -07:00
Ryan Nowak fbae57cde1 React to the removal of EndpointConstraint 2018-07-28 19:03:16 -07:00
Ryan Nowak f8b3b73ca7 Remove EndpointConstraints
Adds IEndpointSelectorPolicy so that MVC can plug in to the
EndpointSelector to run action constraints.
2018-07-28 19:03:12 -07:00
James Newton-King c01c7075be
Add EndpointMetadata to ActionDescriptor and hookup CORS (#8158) 2018-07-28 16:12:54 +12:00
Justin Kotalik 0af3bef0fe
Fix win7 test failures. (#1109) 2018-07-27 17:32:01 -07:00
James Newton-King f870503cdd
Fix HttpMethodMetadata debug string (#666) 2018-07-28 11:13:30 +12:00
Chris Ross (ASP.NET) 647e7c3266 Add new ConfigureKestrel extensions #2760 2018-07-27 15:25:18 -07:00
Justin Kotalik f901bca8a7
Fixing jenkins agents. (#1106) 2018-07-27 15:00:04 -07:00
N. Taylor Mullen 38e145389e Fix BackgroundDocumentGenerator flaky tests.
- Some time spans were too aggressive for parsing a Razor file on a slow environment.
- Fixed an obvious race where we'd expect 0 pending notifications when it was possible to be in the process of clearing notifications.

#2506
2018-07-27 14:49:12 -07:00
Chris Ross (ASP.NET) c7dd9ff68a Enable Http/2 by default #2720 2018-07-27 12:51:12 -07:00
Justin Kotalik 6efdf78fb5
IIS ANCM support in test matrix (#1509) 2018-07-27 11:48:57 -07:00
Stephen Halter 94cfc01fbf
Implement HTTP/2 input flow control (#2740) 2018-07-27 10:47:27 -07:00
Pavel Krymets 5875ff40b1
Add UseIIS to CreateDefaultBuilder (#278) 2018-07-27 10:18:56 -07:00
Ryan Nowak 54e5370e8f Add CORS support to HttpMethodMatcherPolicy
Also removes HttpMethodEndpointConstraint, since it's been fully
replaced.
2018-07-26 23:01:11 -07:00
Nate McMaster fed2eb1cdf
More robust username discovery on Linux in NginxDeployer (#1508)
VSTS does not have the LOGNAME env var set. This adds some fallbacks (USER and USERNAME) and `whoami` if they are not present.
2018-07-26 17:07:24 -07:00
Pavel Krymets 7067d92c75
Limit RH native assets to netcoreapp2.2 (#1105) 2018-07-26 14:15:50 -07:00
Doug Bunting 556880872d
Ensure later validations of `null` models do not overwrite `Invalid` state
- #8078
2018-07-26 13:49:22 -07:00
Pavel Krymets afa5d60821
Add content/webroot and currect directory tests (#1103) 2018-07-26 12:12:12 -07:00
Ajay Bhargav Baaskaran 8e23eb38b4 Honor NoBuild flag during publish 2018-07-26 11:40:38 -07:00
Doug Bunting 498fa2d72f
Avoid `InvalidOperationException` when serializing `SerializableError`
- #8055
- provide unique name (`<Empty-Key>`) for XML elements that would otherwise be nameless

nits:
- remove now-useless Mono special case in updated test class
- extend updated tests to involve square brackets as well as empty keys
2018-07-26 08:56:02 -07:00
Pavel Krymets 61b4473abe
Fix another shutdown race and appofline race (#1071) 2018-07-26 08:12:08 -07:00
Hao Kung c4e8dd3664
Rename WebHostBuilderFactory (#1505) 2018-07-25 16:44:20 -07:00
James Newton-King c68c5befc7
Remove ChangeToken from EndpointDataSource (#662) 2018-07-26 11:06:54 +12:00
James Newton-King f31ab716ee
Change MvcEndpointDataSource to use GetChangeToken (#8137) 2018-07-26 09:20:26 +12:00
BrennanConroy 34a7fc4d99 Merge branch 'merge/release/2.2-to-master' 2018-07-25 11:45:32 -07:00
Nate McMaster 2e96271e69
Merge branch 'release/2.1' into release/2.2 2018-07-25 09:29:48 -07:00
Kiran Challa 10ce77b9ca Updated MvcEndpointDataSource to create endpoints with SuppressLinkGenerationMetadata 2018-07-25 06:41:57 -07:00
Ryan Nowak 19f24cad16 fix silly constructor 2018-07-24 21:54:24 -07:00
James Newton-King 1340f9c26b
Add EndpointSelectorCandidate ctor to not break MVC (#661) 2018-07-25 16:03:26 +12:00
James Newton-King fdff66054f
Missing ChangeToken -> GetChangeToken updates (#660) 2018-07-25 14:35:41 +12:00
James Newton-King c08504b08a
MVC startup experience (#8131) 2018-07-25 14:30:51 +12:00
Ryan Nowak 147c9527f3
Implement EndpointSelector and MatcherPolicy (#646)
Implement EndpointSelector and MatcherPolicy

This change makes the EndpointSelector API more concrete, and is the
beggining of removing EndpointConstraint by making it obsolete.

To that end, I'm introducing MatcherPolicy, which is a
feature-collection API for registering policies that interact with the
DfaMatcher. The two policies that we'll need to start are:
- ability to order endpoints
- ability to append 'policy' nodes to the graph

These two concepts together replace EndpointConstraint. Extending our
graph representation is a really efficient way to processing most common
scenarios.

---

In general this helps with common cases where 4 or so endpoints match
the URL, but with different HTTP methods supported on each. Today we
have to process route values and call into some 'policy' to make a
decision about which one is the winner. This change pushes this
knowledge down into the graph so that it's roughly as cheap as a
dictionary lookup, and can be done allocation-free.

The big savings here is ability to remove more candidates *before*
collecting route data.

---

Along with this change, I also built 'rejection' into the DFA node
model, you can see an example with the HTTP Method handling that I
implemented. I implemented a policy that can treat failure to resolve an
HTTP method as a 405 response by returning a failure endpoint. This is
at the heart of much of the feedback we've gotten in this area around
versioning and http method handling. We also have a version of this
feature in MVC for [Consumes].
2018-07-24 17:31:51 -07:00
Kiran Challa f37ca0d2e9 Show list of endpoints in CompositeEndpointDataSource's DebuggerDisplayString
[Fixes #633] Show list of registered endpoints as debugger display string
2018-07-24 17:22:43 -07:00
Kiran Challa 6f4c10a664 PR feedback 2018-07-24 17:17:08 -07:00
Kiran Challa 71cb933a08 Show a flattened tree in LinkGenerationDecisionTree's DebuggerDisplayString
[Fixes #636] Flatten the LinkGenerationDecisionTree to show as debugger display string
2018-07-24 17:11:53 -07:00
Kiran Challa 34499dbe24 Added support for suppressing link generation for endpoints 2018-07-24 16:47:34 -07:00
Justin Kotalik 5bd475ef90
Add event logs for some startup failure cases (#1081) 2018-07-24 13:17:05 -07:00
Nate McMaster 0435add47a
Merge branch 'release/2.1' into release/2.2 2018-07-24 11:59:30 -07:00
Nate McMaster 1f3524787e
Merge branch 'release/2.1' into release/2.2 2018-07-24 11:43:13 -07:00
Nate McMaster 31eaaac4a8
Merge branch 'release/2.1' into release/2.2 2018-07-24 10:34:53 -07:00
Kiran Challa 7da1baf9d8 Do not use decision tree for named routes in RouteValuesBasedEndpointFinder 2018-07-24 05:33:19 -07:00
Kiran Challa 3df34dbbfe React to Routing repo's LinkGenerator api changes 2018-07-24 05:20:53 -07:00
Kiran Challa 5f1631ab46 Added support for configuring route options with LinkGenerator 2018-07-24 04:45:33 -07:00
Doug Bunting 684e7855a6
Handle `null` entries correctly for `IsEmptyOrWhiteSpace`
- #2497

nits:
- take VS suggestions
- un-scramble `IsEmptyOrWhiteSpaceCore(...)` for readability
2018-07-23 15:25:41 -07:00
Sindhudweep Sarkar feceb3ddea
Lowercase scheme and host to better align with RFC 6454. 2018-07-23 12:22:15 -07:00
Alexej Timonin 52c1e942c6
Added UseCamelCasing and UseMemberCasing extension methods to MvcJsonOptions (#7256) 2018-07-23 10:11:04 -07:00
Pavel Krymets fba4e3ec4e
Switch to non-experimental filesystem (#1082) 2018-07-23 08:57:43 -07:00
Ryan Nowak 2c325440de Remove AddDispatcher/UseDispatcher 2018-07-22 20:35:10 -07:00
Ryan Nowak 196e3f109f React to Routing branding
This is a reaction PR for the branding changes in progress in Routing.

This can be merged after the changes to in to Routing.
2018-07-22 19:47:15 -07:00
James Newton-King 1e807240ea
Add GetChangeToken to EndpointDataSource (#649) 2018-07-23 13:46:22 +12:00
Ryan Nowak b9df95831d Change Branding
For preview one the branding is:

new thing = UseGlobalRouting/UseEndpoint
old thing = UseRouter

We're going to drop the name Dispatcher everywhere and make sure that we
position our new work as 'new and improved routing' instead of
introducing a new product/concept name.

We're not totally sure of the term Global yet, but it's what we're doing
for preview 1. Suggestions welcome for dicussion after we do the first
preview :)
2018-07-22 16:41:59 -07:00
kishan.anem c0ba374549 Custom error messages with validation message tag helper #8035
#8035
PR #8087
https://github.com/aspnet/Razor/issues/2497
2018-07-22 17:55:06 +05:30
Justin Kotalik c3545c18eb
Add api sets to IntegrationTesting.IIS (#1083) 2018-07-20 17:32:57 -07:00
Remco 28c0c4d128
Add ability to override the testing web content root using environment variables 2018-07-20 16:56:24 -07:00
Alexej Timonin d4beab5d09
CompositeValidationAttribute
- Add abstract CompositeValidationAttribute.
- Change DataAnnotationsMetadataProvider.CreateValidationMetadata to
populate ValidatorMetadata with validation attributes from CompositeValidationAttribute.
2018-07-20 15:31:14 -07:00
Ryan Nowak f1c060bf3d RoutePattern everywhere 2018-07-20 13:04:34 -07:00
Ryan Nowak 5c488bf09c make feature branch build 2018-07-20 12:57:43 -07:00
Ryan Nowak 3ba6f35495 React to RoutePattern changes in Routing 2018-07-20 12:57:43 -07:00
James Newton-King 90395c933d
Implement IRoutingFeature on EndpointFeature for back-compat (#641) 2018-07-20 18:23:14 +12:00
Justin Kotalik 256aed8369
Make IISExpress shutdown gracefully. (#1066) 2018-07-19 23:20:13 -07:00
Kristian Hellang 53930af0e3 Set ProblemDetails status field during ObjectResult formatting 2018-07-19 17:57:55 -07:00
Nate McMaster f1e66b5a6f
Reset LZMA to only include the implicit package version (#1266) 2018-07-19 16:50:53 -07:00
Chris Ross (ASP.NET) 612fcca729 Validate Http/2 pseudo headers #2205 #2263 #2659 2018-07-19 16:25:10 -07:00
BrennanConroy 433eeb6943
Abort connection on protocol error (#2654) 2018-07-19 14:50:14 -07:00
Stephen Halter 603cd03bfa
Stop writing responses after the unexpected end of request content (#2734) 2018-07-19 14:18:57 -07:00
David Fowler b934e46161
Complete the transport pipes after connection middleware runs (#2735) 2018-07-19 11:49:46 -07:00
Justin Kotalik 89fda83bbd
Move config operations from helpers to functions on the deployment parameters (#1063) 2018-07-19 11:14:07 -07:00
Kiran Challa 41f56dbbed Minor fix to DefaultLinkGenerator and enabled constraint related tests in DefaultLinkGeneratorTest 2018-07-19 09:11:50 -07:00
James Newton-King ec8976ffaf
Update MvcEndpointDataSource on raised change token (#8108) 2018-07-19 16:43:24 +12:00
Ryan Brandenburg 01ce77da56 Rename Web Application to Starter Web Application 2018-07-18 16:18:49 -07:00
Justin Kotalik 21d9ec64f0
Add copy constructor to deployment parameters (#1497) 2018-07-18 14:28:48 -07:00
Nate McMaster 55b697ab05
Revert "Add package version to Microsoft.AspNetCore.App in project templates"
This reverts commit 727bd52b64.
2018-07-18 13:11:01 -07:00
Ryan Nowak 477296a3cc Make DFA matcher the default 2018-07-18 07:50:27 -07:00
Pavel Krymets 0634e1183e
React to hosting changes (#1072) 2018-07-17 21:06:03 -07:00
Pavel Krymets 19839ed308
Revert "Merge pull request #1494 from aspnet/revert-1493-pakrym/useiis" (#1496)
This reverts commit 7a0a1ee50b, reversing
changes made to ec0b7ab2cd.
2018-07-17 21:05:59 -07:00
James Newton-King badbcb9437
Add MvcEndpointDataSource benchmarks (#8104) 2018-07-18 15:48:18 +12:00
Pavel Krymets 54471a2930
Add client abort tests (#1051) 2018-07-17 20:26:57 -07:00
Ryan Nowak 400d243f42
Fix remaining feature gaps in DfaMatcher (#621)
* Fix remaining feature gaps in DfaMatcher

* addressed minor feedback

* missed one
2018-07-17 19:22:46 -07:00
Ajay Bhargav Baaskaran 7f6b05149d Generate deterministic unique ids for tag helpers 2018-07-17 14:01:42 -07:00
Pavel Krymets 65f8cfc55b Revert "Remove IISExpress deployer (#1493)"
This reverts commit ec0b7ab2cd.
2018-07-17 12:07:42 -07:00
Ajay Bhargav Baaskaran 21f2edce16 Generate and verify baselines for ClassifiedSpans and TagHelperSpans
- Moved GetClassifiedSpans and GetTagHelperSpans logic to Razor.Language
2018-07-17 10:54:42 -07:00
Pavel Krymets ec0b7ab2cd
Remove IISExpress deployer (#1493) 2018-07-17 10:16:50 -07:00
Pavel Krymets 074264cd3a
Use less global variables (#1064) 2018-07-17 08:56:18 -07:00
Kiran Challa 1196349bf4 [Fixes #583] Handle change events in RouteValueBaseEndpointFinder 2018-07-17 05:54:11 -07:00
Kiran Challa 0caacb8217 React to LinkGenerator api changes 2018-07-17 05:24:27 -07:00
Kiran Challa aed2e24483 Allow to pass in HttpContext when generating links 2018-07-17 05:16:57 -07:00
James Newton-King 42218d5fb5
Versioning with endpoint constraint (#8098) 2018-07-17 16:37:45 +12:00
Ryan Nowak 02e1d78319 Minor fixes for MatchProcessorFactory
Fixing minor issues found doing DFA integration.
2018-07-16 21:06:35 -07:00
Pranav K b62499e02c
Ensure PageContext.ViewData and ViewContext.ViewData are the same instance
Fixes #7675
2018-07-16 11:16:03 -07:00
Pranav K 9d951325b2
Re-organize shared src packages so we can do true IVT between src assemblies 2018-07-16 11:15:58 -07:00
Chris Ross (ASP.NET) 429bcfe216 Sending and receiving RST frames. #2462 2018-07-16 09:13:11 -07:00
Ryan Nowak b2e4743c7d
Change benchmarks (#612)
Add benchmarks that include some HTTP method matching.

Clean up names and name like-kinded benchmarks alphabetically.

Matcher*Benchmark -> E2E including HTTP method selection
MatcherSelectCandidates*Benchmark -> Focused on just URL path processing
2018-07-14 17:21:05 -07:00
James Newton-King 497a38035d
Add application startup check that dispatcher is added to request pipeline (#614) 2018-07-15 11:50:55 +12:00
James Newton-King 73e4d55d7b
Check dispatcher services registered (#610) 2018-07-14 18:20:42 +12:00
Justin Kotalik c657e31b94
Fix Console invalid handle issues. (#1029) 2018-07-13 21:32:20 -07:00
Ryan Nowak 9e114b547d
Introduce RoutePattern (#585)
* Introduce RoutePattern

Introduces RoutePattern - a new parser and representation for routing
templates, defaults, and constraints.

This is a new representation for all of the 'inputs' to routing that is
immutable and captures 'out of line' information for defaults and
constraints.

This will allow us to unify the handling of constraints and values from
attribute style routes and conventional style routes.
2018-07-13 18:01:46 -07:00
N. Taylor Mullen cfd63e1e2e Change HTML splitting logic to not split on surrogate pairs.
- When a surrogate pair is about to be split down the middle we reduce the size of our split by 1 character. This way we split right before a surrogate pair. In the case of zero width joiners, if we split on a zero width joiner we still render valid bytes because the zero width joiner by itself can stand alone.
- Added tests for the various split cases.

#2470
2018-07-13 17:18:56 -07:00
John Luo 6551eae321 Consolidate HTTP charset validation logic 2018-07-13 16:47:28 -07:00
Kiran Challa bc79a47959 Temporary change to prevent cross repo breaking change: Added ooverload for MatcherEndpoint 2018-07-13 14:24:11 -07:00
Kiran Challa 42708bec91 Added support for route constraints in Dispatcher world 2018-07-13 14:18:54 -07:00
Doug Bunting 35fad0881b
Mark unused `ParameterBinder.BindModelAsync(...)` overloads as `[Obsolete]`
- #7660
- also addresses part of #7317, only in `ComplexTypeModelBinderIntegrationTest`
2018-07-13 13:26:56 -07:00
Doug Bunting f2608c2ff4
Do not suppress `ModelValidationState.Invalid` entries
- #7992, #7963
2018-07-13 13:21:43 -07:00
Pranav K dfbdb37979
Refactorings for codefix (#8067)
* Refactorings for codefix

- Move some common code in SymbolApiResponseMetadataProvider
- Don't run diagnostics for 1006 if we are unable to parse a return type
2018-07-13 13:05:49 -07:00
Justin Kotalik b359d6bed1
Fix CI test failures (#1045) 2018-07-13 11:35:52 -07:00
Kiran Challa 1c7f53ae39 Fix TemplateBinder to consider null and empty string values the same 2018-07-13 10:21:55 -07:00
Ryan Nowak 7209cab5e9
Productize JumpTable (#594)
* Productize JumpTable
2018-07-12 23:28:51 -07:00
James Newton-King f12f9b46ed
Add startup filter to set MiddlewareFilterBuilder.ApplicationBuilder 2018-07-13 12:23:30 +12:00
Justin Kotalik 36d7c8ec42
Add startup event log for ANCM inproc (#1047) 2018-07-12 16:03:06 -07:00
Hao Kung a5083d525b
Fix regression with Authorize + IPolicyProvider (#8068) 2018-07-12 15:36:03 -07:00
James Newton-King 0cf972cc43
Error message on no dispatcher middleware in endpoint middleware (#600) 2018-07-13 10:16:21 +12:00
Pranav K 46189abda7 Refactoring for ApiConvention analyzers 2018-07-12 14:26:27 -07:00
Tim Hess c9122a8428 Include AuthenticationTicket.Properties in AuthenticationTicket success result handling #1765 (#1767) 2018-07-12 13:58:49 -07:00
Pranav K 74667eda9c
Don't specify MainEntryPoint when compiling Razor assembly 2018-07-12 13:05:10 -07:00
Pranav K 174c5eaa6c Make fewer public API changes 2018-07-12 12:46:49 -07:00
Pranav K 4f1b7ccca6 Use ModelMetadata from actual types for validation
Fixes https://github.com/aspnet/Mvc/issues/7952
2018-07-12 12:46:49 -07:00
Stephen Halter f179339a79 Combine BufferWriter and CountingBufferWriter 2018-07-12 11:58:49 -07:00
Pavel Krymets 6bed0b7206
Add Microsoft.AspNetCore.Server.IntegrationTesting.IIS package (#1037) 2018-07-12 11:56:33 -07:00
Stephen Halter 864cfeb2aa Merge branch 'release/2.1' into release/2.2 2018-07-12 11:18:41 -07:00
Justin Kotalik e5dfea5725
Adds project properties and project capabilities to IIS and IISIntegration (#969) 2018-07-12 11:00:01 -07:00
Pavel Krymets c81f379045
Normalize file extensions and project structures (#1038) 2018-07-12 09:30:50 -07:00
Kiran Challa 3a022107dc Revert "Added support for route constraints in Dispatcher world"
This reverts commit 85e92ab3cc.
2018-07-12 06:24:37 -07:00
Nate McMaster 85e92ab3cc Added support for route constraints in Dispatcher world 2018-07-12 05:06:22 -07:00
Nate McMaster 128eefdef3
Remove usage of the Microsoft.Extensions.Buffers.Sources package, copy the source into Kestrel
This moves source code that used to be in aspnet/Common. It was only used here, so this simplifies the process of working with these internal-only APIs.

cref https://github.com/aspnet/Common/pull/386
2018-07-11 22:31:23 -07:00
Nate McMaster 11ca4e46f6
Remove unused .Sources packages 2018-07-11 21:36:50 -07:00