Commit Graph

12927 Commits

Author SHA1 Message Date
Kiran Challa b22c88b567 Fix CDN urls to match the fallback source folders' versions 2018-04-02 12:12:15 -07:00
Justin Kotalik 6e957e436a
Support inprocess hosting in IISExpressDeployer via switching the HostingModel property. (#1368) 2018-04-02 12:01:53 -07:00
BrennanConroy 5ce672dfe6
ThreadStatic MemoryBufferWriter (#1821) 2018-04-02 11:25:04 -07:00
BrennanConroy 6640f14e35
Detailed errors enabled for functional tests (#1822) 2018-04-02 10:42:26 -07:00
Pranav K 07a1907918
Introduce ViewDataAttribute
Allow properties on controllers, Razor Page and Razor Page models annotatted with [ViewDataAttribute]
to populate ViewDataDictionary

Fixes https://github.com/aspnet/Mvc/issues/6525
2018-04-02 10:31:16 -07:00
Nate McMaster 6d4a632b96
Fix race condition in test code waiting for dotnet-watch to restart 2018-04-02 10:10:57 -07:00
David Fowler e9d58154ec
Added TCP client sample to HubSample (#1805)
- Ripped of Kestrel's SocketConnection to make a TcpConnection
IConnection implementation.
- Fixed issue with SignalR assuming there will always be a non-null user
on the ConnectionContext.
2018-04-02 09:50:50 -07:00
Pranav K c515cece8e Use ModelMetadataProvider to infer BindingSource on application model 2018-04-02 09:48:49 -07:00
Kristian Hellang a16504b941 Added failing test for #7546 2018-04-02 09:48:49 -07:00
Jass Bagga 56fc40dbca
Revert "Revert "Update jquery-validation-unobtrusive (#421)"" (#426)
This reverts commit e6112a0911.
2018-04-01 23:29:52 -07:00
David Fowler ef30e2e2df
Clean up the SSE client side transport (#1816)
- Renamed StreamPipeConnection to PipeReaderFactory
- Flow the transport cancellation token to the CopyToAsync routine 
- Other small cleanup and nits to make the style consistent with the other pipe reader loops
- Return a cancelled ValueTask from PipeWriterStream.WriteAsync
- Move event stream request to start itself
- We no longer need to pass the tcs through.
- It also cleans up handling failure in start since the application pipe hasn't been read or written to
2018-04-01 21:11:59 -07:00
David Fowler bb7cb14a1c
Clean up the logging style for HttpConnectionManager (#1819)
- Remove nameof usage
2018-04-01 19:34:11 -07:00
David Fowler 82bda4a9c8
Added micro benchmarks for SSE parsing and Writing (#1818) 2018-04-01 09:19:07 -07:00
David Fowler a37fa83aee
Fixed a parser bug found when trying out the array pool (#2450)
- When using the array pool, we get terrible block density and as a result
the header parser was failing.
- This fixes the case where the parser needed to skip 2 blocks at the end
(which is unrealistic). Comparing the current index to the reader index is incorrect
since we may end up at the same index in another segment.
2018-04-01 00:04:02 -07:00
James Newton-King ca161e9bc8
Improve writing single characters with UTF8 text writer (#1814) 2018-04-01 17:34:19 +12:00
David Fowler e6e45cea05
Change how HttpConnection sets headers (#1806)
- Removed SendUtils.PrepareRequst and instead used HttpClient.DefaultRequstHeaders to set the common headers to apply HttpOptions to all outbound requests
- Modified how we check for the user agent request testing
2018-03-31 22:23:09 -07:00
James Newton-King 04a22f23dd
Deserializing ISO formatted strings in method arguments (#1812) 2018-04-01 12:26:30 +12:00
Pavel Krymets a76d51c46b Revert "Update jquery-validation-unobtrusive (#421)"
This reverts commit ac9addabcc.
2018-03-31 16:24:07 -07:00
David Fowler ac5dfcf909
Merge pull request #1810 from aspnet/release/2.1
Change default handshake timeout (#1808)
2018-03-31 12:27:46 -07:00
David Fowler dc86690f04
Change default handshake timeout (#1808)
- 5 seconds seems to be too low for long polling's RTT. We often see super flaky tests and it seems like this is the best fix. Ideally, we would do something more sophisitcated than just timeout the entire time to parse.
2018-03-31 12:27:23 -07:00
David Fowler 7382198356
Copy connection middleware when using ListenLocalHost (#2447)
- Connection middleware got removed during Clone when using ListenLocalhost
2018-03-31 07:29:35 -07:00
BrennanConroy 90aa48c09f
Merge pull request #1798 from aspnet/release/2.1
Use IBufferWriter in IHubProtocol (#1791)
2018-03-30 17:30:30 -07:00
BrennanConroy 903a9ea6a0
Use IBufferWriter in IHubProtocol (#1791) 2018-03-30 17:30:08 -07:00
Pavel Krymets 6ca61a8fc7 Merge release/2.1 to dev 2018-03-30 16:33:44 -07:00
Kiran Challa 4105ee67e9 [Fixes #1643] Add third party notice to identity UI package 2018-03-30 16:05:42 -07:00
David Fowler 0293e53e11
Handle uninitialized connections in disposal (#1786) (#1794)
- We made a change to not initialize pipes up front
on connection creation. That change make it null ref in disposal because we didn't check if the pipes were initialized.
- Added a test
- Also fixed the EchoConnectionHandler in the functional ts tests.
2018-03-30 15:51:48 -07:00
Kiran Challa 0a95aebcb5 Reacting to templating repo's script changes 2018-03-30 15:51:01 -07:00
David Fowler eb7dc14c39
Handle uninitialized connections in disposal (#1786)
- We made a change to not initialize pipes up front
on connection creation. That change make it null ref in disposal because we didn't check if the pipes were initialized.
- Added a test
- Also fixed the EchoConnectionHandler in the functional ts tests.
2018-03-30 15:44:30 -07:00
Andrew Stanton-Nurse a92b3a7288 Merge branch 'release/2.1' into dev 2018-03-30 15:26:44 -07:00
Andrew Stanton-Nurse 2c2a8dae01
Merge pull request #2445 from aspnet/release/2.1
Add IConnection to Connections.Abstractions (#2444)
2018-03-30 15:21:48 -07:00
David Fowler 67cb8a0e11 Add IConnection to Connections.Abstractions (#2444) 2018-03-30 15:20:31 -07:00
Andrew Stanton-Nurse 6b3a27e73c
Bedrock Renames (#1777) 2018-03-30 15:09:19 -07:00
Jass Bagga ac9addabcc
Update jquery-validation-unobtrusive (#421)
Addresses #15
2018-03-30 15:04:50 -07:00
Pranav K 30f0883319 Target a lower TFM 2018-03-30 14:45:42 -07:00
Justin Kotalik fd6c217336 Revert "Build runtime specific metapackages"
This reverts commit ec184bc361.
2018-03-30 13:02:45 -07:00
James Newton-King 569fb79776
Merge pull request #1789 from aspnet/release/2.1
Re-enable ConnectionCanSendAndReceiveMessages + logging (#1778)
2018-03-31 08:46:32 +13:00
James Newton-King 0362905a70
Re-enable ConnectionCanSendAndReceiveMessages + logging (#1778) 2018-03-31 08:45:33 +13:00
Pranav K 6f03496448 Make Microsoft.AspNetCore.Mvc depend on Microsoft.AspNetCore.Mvc.Analyzers 2018-03-30 12:33:45 -07:00
BrennanConroy ec66d236ac
Merge pull request #1785 from aspnet/release/2.1
Add detailed error option (#1763)
2018-03-30 11:30:44 -07:00
BrennanConroy 44b667b3e6
Add detailed error option (#1763) 2018-03-30 11:30:07 -07:00
David Fowler 9eb41ca571
Remove buffer size argument (#232)
- We're removing the buffer arugment from the API as a result of a mini review. This is a pre-emptive reaction to avoid breakage when the change comes in.
2018-03-30 10:47:12 -07:00
Kiran Challa 1e7ca96b51 [Fixes #1618] Consider returning a 404 in the DownloadPersonalData.OnGet 2018-03-30 07:35:08 -07:00
Kiran Challa 971f727ea2 [Fixes #1690] AddDefaultUI() throws when using IdentityUser<T> 2018-03-30 07:02:04 -07:00
David Fowler c29c1b3ec6
Merge pull request #1783 from aspnet/release/2.1
Release/2.1
2018-03-30 02:33:28 -07:00
David Fowler b5a2fcb96a
Dispose the http client in DisposeAsync (#1780)
- This layer of the stack is no longer reusable and
this disposable was removed (I assume by mistake) in the big refactoring
2018-03-30 01:57:14 -07:00
David Fowler a26e6f5a30
Make shutdown logic for SSE and LongPolling more similar to WebSockets (#1779)
- Cancel reading from the application when initiating a transport stop
- Complete each side of the pipe in the place where the pipe is being consumed
- Errors from sending end up getting sent to the application
- The Running task never throws
- Removes ContinueWith
2018-03-30 01:50:30 -07:00
Ryan Nowak f20bf9ea02 Fix #7503 change to model name for IValidableObject
This change undoes a breaking change introduced by the 2.1 model
validation changes. Now an implementation of IValidableObject on a
top-level model will be called correctly with the 'empty' prefix instead
of the parameter name.

When fixing this we undid a workaround for another issue.

When validating a parameter that didn't bind we didn't correctly compute
the model name for 'fallback to empty prefix' cases.

(cherry picked from commit 7a1096a72b)
2018-03-29 21:35:59 -07:00
Pranav K 264f9c871e Add an analyzer to warn against the use of IHtmlHelper.Partial and IHtmlHelper.RenderPartial
Fixes https://github.com/aspnet/Mvc/issues/7417
2018-03-29 21:25:54 -07:00
BrennanConroy 5cfc03ffe9
Merge pull request #1775 from aspnet/release/2.1
Fix internal HubConnection state when handshake fails (#1774)
2018-03-29 16:35:55 -07:00
BrennanConroy 46f27cdd0b
Fix internal HubConnection state when handshake fails (#1774) 2018-03-29 16:35:31 -07:00
Jass Bagga cb7942abe4
Add no-https option for all templates (#413)
Addresses #322
2018-03-29 13:59:47 -07:00
Jass Bagga aca30fe8a2
--no-https option for RazorPagesWeb-CSharp template (#362) 2018-03-29 13:49:20 -07:00
Ajay Bhargav Baaskaran a2a920dde5 Normalize the tool assembly path before using it as the base for pipe name 2018-03-29 12:50:51 -07:00
David Fowler 80b842e987 Merge branch 'release/2.1' into dev 2018-03-29 10:05:30 -07:00
David Fowler 7a53e07623
Parse data as it comes in off the wire in the .NET client and server (#1766)
- Change websockets and the POST end point to send data unbuffered.
- Update tests to handle partial frames
2018-03-29 10:03:59 -07:00
Ryan Nowak d360886b78 Fix #7558 infer [FromRoute] with parameter in ANY route
This changes the logic for when we infer [FromRoute] on an action
parameter from *ALL* to *ANY*.

This means that if a parameter occurs in any route on an ApiController,
we will treat it as [FromRoute]. We think this is the best decision
because it's less ambiguous. If a parameter appears in a route, it won't
be eligible to be bound from query. I think that's good.

If for some reason you want this kind of behavior (route or query) then
we suggest breaking up the actions. This isn't very documentation
friendly (swagger) so we don't suggest it.
2018-03-29 07:54:39 -07:00
Doug Bunting fc3a815e57
Restore `ModelMetadata.PropertyName != null` behaviour
- #7413 part 2 of 2
- add `ModelMetadata.Name` and `ParameterName`
  - use `Name` instead of `PropertyName` in most cases
- update `ModelMetadata.ContainerType` and other property use
  - choose using `MetadataKind` almost everywhere; support all possibilties
    - usually parameter metadata was possible but not handled
    - worst case was one or two potential NREs, especially `ContainerType.*` dereferences
  - improve `MvcCoreLoggerExtensions` metadata handling
    - add three new debug messages, one for type metadata and two for parameter metadata
- update `ModelMetadata.ContainerMetadata`, `ContainerType` and `PropertyName` doc comments
- no changes needed in Microsoft.AspNetCore.Mvc.ViewFeatures because parameters aren't viewed

nits:
- add missing `TestModelMetadataProvider.ForParameter(...)` method
- remove unused `EmptyModelMetadataProvider` instances in `ModelMetadataTest`
- refactor `ModelValidationResultComparer` out of DataAnnotationsModelValidatorTest`
- take VS suggestions, mostly related to variable inlining and object initializers
2018-03-29 07:22:00 -07:00
James Newton-King 2f9942e1f2
Merge pull request #1765 from aspnet/release/2.1
Make HubConnection write messages directly to the PipeWriter (#1762)
2018-03-29 20:27:14 +13:00
James Newton-King cddf46c0cd
Make HubConnection write messages directly to the PipeWriter (#1762) 2018-03-29 20:26:09 +13:00
James Newton-King a4dd4da7a2
Merge pull request #1760 from aspnet/release/2.1
Handshake and negotiation optimization (#1731)
2018-03-29 17:51:40 +13:00
James Newton-King 7f86b92f7e
Handshake and negotiation optimization (#1731) 2018-03-29 17:50:45 +13:00
Ajay Bhargav Baaskaran 03938dfd95 Handle Mutex creation exceptions 2018-03-28 18:23:30 -07:00
Mikael Mengistu 2bf962d362
Merge pull request #1757 from aspnet/release/2.1
Always flush in WebSocketsTransport (#1756)
2018-03-28 18:12:31 -07:00
BrennanConroy d5dafae2cc Always flush in WebSocketsTransport (#1756) 2018-03-28 18:03:48 -07:00
James Newton-King 6de4ac2880
Merge pull request #1754 from aspnet/release/2.1
Message writing optimization (#1683)
2018-03-29 11:08:13 +13:00
James Newton-King 8c84518ecc
Message writing optimization (#1683) 2018-03-29 11:03:40 +13:00
David Fowler db3441cf93 Merged release/2.1 2018-03-28 14:10:45 -07:00
Hao Kung c7711c2515
Reenable APICheck (#1715) 2018-03-28 12:23:22 -07:00
David Fowler 19b9dca268
Change IHubProtocol interface to support partial parsing (#1745)
- These are the finishing touches before we disable batching on the
C# client and on the server. We're changing the IHubProtocol interface to
modify the input buffer with what was consumed. We're also changing it
to parse a single message at a time to be match what output writing does.
- Added TryParseResponseMessage and made it look like TryParseRequestMessage
2018-03-28 12:08:16 -07:00
Hao Kung e0e69525e2
Update new security stamp logic (#1714) 2018-03-28 11:55:09 -07:00
Pranav K f8e315d03d
CompiledPageRouteModelProvider should de-dup descriptors
Fixes #7543
2018-03-28 11:24:49 -07:00
David Fowler 4c6c0aa8a4 Merge branch 'release/2.1' into dev 2018-03-27 23:12:00 -07:00
Andrew Stanton-Nurse cfaa123eb8 IConnection refactoring (#1718)
- IConnection is now single-use and HubConnection creates a new instance
for reconnecting
- IConnection is just a Pipe now, no more events
2018-03-27 23:02:07 -07:00
Javier Calvarro Nelson ecafbe7f7a [Fixes #11] Add functional tests for the libraries 2018-03-27 21:33:13 -07:00
Ryan Nowak c93c168df3 Add mapping service for action results
This allows the use of custom 'envelope' types like ActionResult<> with
a corresponding API Explorer implementation.

Basically this PR services to decouple a bunch of infrastructure from
ActionResult<>.
2018-03-27 17:13:41 -07:00
Pranav K 62881a2cc4 Disable APICheck on precompilation to workaround failure 2018-03-27 16:54:27 -07:00
Pranav K ad724f6b0a
Use x64 binaries when project's targeting AnyCPU (#255)
* Use x64 binaries when project's targeting AnyCPU

Fixes https://github.com/aspnet/MvcPrecompilation/issues/240
2018-03-27 12:27:46 -07:00
Pranav K 927af3125e
Use RazorCompiledItemMetadataAttribute to calculate route 2018-03-27 12:24:37 -07:00
Chris Ross (ASP.NET) f25f411b68 Add HostFiltering configuration to templates 2018-03-27 12:13:24 -07:00
Pranav K 62fec52a9f Add a framework specific reference to Microsoft.DiaSymReader.Native
Fixes https://github.com/aspnet/Mvc/issues/7478
2018-03-27 12:08:46 -07:00
David Fowler d598a909a2 Merge branch 'release/2.1' into dev 2018-03-27 10:26:57 -07:00
David Fowler 185453908f
Remove HubConnectionContext parameter from IHubProtocolResolver (#1735) 2018-03-27 10:25:00 -07:00
Pranav K ade5ae534d Set DebugType=full for .NET Framework projects 2018-03-27 08:59:54 -07:00
Kiran Challa 0c084fa28a [Fixes #7518] NullReferenceException thrown when Controller method uses Guid parameter default value 2018-03-27 05:22:20 -07:00
David Fowler dcd773d10d Merged release/2.1 2018-03-27 03:03:10 -07:00
David Fowler 46ab09ca36 Merge branch 'release/2.1' into dev 2018-03-27 02:08:35 -07:00
David Fowler 7a9160f3e0
React to https://github.com/aspnet/KestrelHttpServer/pull/2428 (#1734) 2018-03-27 02:02:29 -07:00
David Fowler be04ccac6e
Move DuplexPipe into Kestrel.Core as internal (#2428) 2018-03-27 02:02:15 -07:00
David Fowler 434147fe8e Merge branch 'release/2.1' into dev 2018-03-27 00:00:13 -07:00
David Fowler b78e70fadb
Use more pooled Utf8BufferTextReaders (#1728)
- Use it in the HandshakeProtocol
- Move CreateJsonTextReader to JsonUtils
2018-03-26 23:32:43 -07:00
Javier Calvarro Nelson a8246e2a99 [Fixes #327] Replace AAD template code with packages
* Add Microsoft.AspNetCore.Authentication.AzureAD.UI package.
* Add Microsoft.AspNetCore.Authentication.AzureADB2C.UI package.
* Remove AccountController.
* Remove Pages/Views related to authentication.
2018-03-26 20:37:46 -07:00
unknown 678265259d Merge remote-tracking branch 'origin/release/2.1' into dev 2018-03-26 17:30:38 -07:00
James Newton-King 79b51ad642
Added logging of .NET client HTTP requests (#1723) 2018-03-27 12:57:13 +13:00
Pranav K 804eeede11 Use the correct application part factory by default
Fixes https://github.com/aspnet/Mvc/issues/7543
2018-03-26 16:40:45 -07:00
Tornhoof e80d0b000a Make BufferedReadString public and add doc (#1011) 2018-03-26 16:03:16 -07:00
Stephen Halter 68ff406862 Merge branch 'release/2.1' into dev 2018-03-26 14:51:21 -07:00
David Fowler b8285b8356
Don't create the span on netstandard (#1721)
- Directly pin the char[]
- Changed Utf8BufferTextReader to use the Utf8Decoder
- It copies whatever it can into the char buffer allocated in a stateful way (it's more efficient).
- Added tests for unicode and ascii reading
- Added a thread static cache
2018-03-26 14:36:08 -07:00
Pranav K 1e11b5fa95 Make PreserveCompilationContext=true 2018-03-26 14:23:29 -07:00
Doug Bunting 5e245da326
Add compatibility switch controlling parameter metadata and top-level validation
- #7413 part 1 of 2
- made all `ModelMetadataProvider` and `ObjectModelValidator`-specific code conditional
  - fortunately, `MvcOptions` easy to get; affected code is primarily `internal` or pub-`Internal`
  - remove unnecessary `ModelMetadataProvider` use in `ApiBehaviorApplicationModelProvider`
- run integration and functional tests with `CompatibilityVersion.Version_2_1`
  - functional test change depends on @javiercn's recent #7541 fix
  - remove test code now redundantly turning compatibility switches on

nits:
- correct spelling errors in `CompatibilitySwitch`
- take VS suggestions, mostly in test code
- rename methods in `ControllerBinderDelegateProviderTest` to match current API
- slightly refactor in `ApiBehaviorApplicationModelProvider`
2018-03-26 12:29:04 -07:00
Hao Kung e1cb3f25ac Switch to AddDefaultIdentity 2018-03-26 12:18:01 -07:00
Stephen Halter a1de323ff4
Make LibuvTransport(Factory) pubternal (#2426) 2018-03-26 11:39:51 -07:00
David Fowler 65204ec6f2
Small changes (#1714)
- Don't allocate for empty arrays.
- Don't allocate the list of pre-serialized messages until writing
2018-03-25 12:38:51 -07:00
Damir Ainullin dd9369ece8 Removed excessive null check because string.Join can't return null (#1716) 2018-03-25 10:13:07 -07:00
Javier Calvarro Nelson 51784bb2d6
[Fixes #7541] Per-test class customization should not remove global (per-fixture) customization 2018-03-24 18:33:48 -07:00
David Fowler cb05ce4e0b
Progress towards deleting Sockets.Abstractions (#1705)
* Progress towards deleting Sockets.Abstractions
- Moved our custom DefaultConnectionContext to Sockets.Http and renamed it to HttpConnectionContext.
- Renamed ConnectionManager to HttpConnectionManager
- Use DefaultConnection in tests and benchmarks
- Delete ConnectionMetadata
2018-03-24 04:21:47 -07:00
David Fowler f0629dcbe4 Merge branch 'release/2.1' into dev 2018-03-24 03:14:59 -07:00
David Fowler 6701339835
Expose DefaultConnectionContext POCO (#2421)
- Made TransportConnecton derive from ConnectionContext
- Less objects, less opinions about what the ConnectionContext is. This diverges from what we do with HttpContext but it seems better overall.
- Made DefaultConnectionContext
 - Usable for unit testing
 - Usable for benchmarking
2018-03-24 03:12:53 -07:00
Ajay Bhargav Baaskaran 7bc54b99e0 Use tool assembly path for computing default pipe name 2018-03-23 16:50:20 -07:00
Nate McMaster 7e13e83348
Remove PackageArtifactCategory 2018-03-23 16:34:43 -07:00
N. Taylor Mullen e94d77c47f Add model attribute for PartialTagHelper.
- The model attribute is used to define any object based model to be passed to a `TagHelper`. It enables scenarios when users want to pass in `new` poco types.
- Added unit tests for the new `ResolveModel` method in `PartialTagHelper`.
- Added a single functional test to verify the end-to-end.

#7374
2018-03-23 16:13:55 -07:00
John Luo 2dc1858f90 Merge branch 'release/2.1' into dev 2018-03-23 16:02:42 -07:00
pan-wang 731f05df38
call exit to force shutdown in case of timeout (#726) 2018-03-23 15:19:00 -07:00
John Luo 26578f5079 Reenable API check 2018-03-23 15:01:50 -07:00
Ryan Nowak 1ff5bdca79 Set model prefix for [ApiController]
Infers the 'empty' model prefix for complex types that are read from the value
providers. This gives us better defaults when using the parameter object
pattern with respect to swagger/API explorer.
2018-03-23 14:49:54 -07:00
Chris Ross (ASP.NET) 0e7f12bfb3 Add HostFiltering to the default web host 2018-03-23 14:41:22 -07:00
Ryan Nowak 14429721d9 Make handler selector more flexible
Some details of this pending discussion, but this is a new 2.1 change
and compatibility switch in the spirit of making pages handler selection
less error-prone.

In particular we don't want anyone to have to define HEAD to do the
trivial thing. This currently routes all 'safe' HTTP methods to the GET
handler and all other HTTP methods to the POST handler.

This is technically not the correct thing to do for OPTIONS and TRACE,
so we might still do something different.

The tests will change a little depending on exactly what we decide to
do, but this is the main idea of the change.
2018-03-23 14:22:48 -07:00
John Luo ec184bc361 Build runtime specific metapackages 2018-03-23 13:40:27 -07:00
John Luo 63fd1e1a4d Re-enable api check
- Disable api check for Transport.Libuv due to breaking change
- Add empty baseline files for unreleased packages
2018-03-23 12:55:06 -07:00
Ajay Bhargav Baaskaran adc7184d98 Register missed directives in RazorPageGenerator 2018-03-23 12:36:23 -07:00
Javier Calvarro Nelson f49270d9d6 Add Azure AD package + tests 2018-03-23 12:25:17 -07:00
John Luo e3894a4609 Remove EF.Tools reference 2018-03-23 12:09:46 -07:00
Chris Ross (ASP.NET) 05d1a6eb0e Refactor Generic Host lifetimes to work better with ServiceBase #1347 2018-03-23 12:02:44 -07:00
Pranav K f1abe24c76 React to Mvc changes 2018-03-23 09:38:48 -07:00
Pranav K 1d6c09ab31 Make the use of Assembly.CodeBase more robust 2018-03-23 09:35:55 -07:00
Pranav K 56501cb8a0 Cleanup ApplicationPartFactory 2018-03-23 09:35:55 -07:00
Chris Ross (ASP.NET) 49b447d626 Merge branch 'release/2.1' into dev 2018-03-23 09:19:06 -07:00
Chris Ross (ASP.NET) 3d9a19d865 Merge branch 'release/2.1' into dev
# Conflicts:
#	build/dependencies.props
#	korebuild-lock.txt
2018-03-23 09:16:55 -07:00
Patrick Westerhoff 72210e4078 Add AuthenticationProperties.Parameters (#1008)
Add a `Parameters` bag to the authentication properties that allow
passing arbitrary parameters to an authentication handler. These values
are not intended for serialization of persistence, only for flowing data
between call sites.

Also make existing `Items` collection helpers protected to allow them to
be reused in subclasses, make string-based helpers public as a public
way to work with the collection, and add helper methods to interact with
the `Parameters` dictionary.
2018-03-23 09:13:02 -07:00
David Fowler 2e63e5afe3
The rename games part 1 of many (#1696)
- React to rename of EndPoint to ConnectionHandler
- Rename UseSockets to UseConnections
- Rename MapEndPoint to MapConnectionHandler
- Rename HttpSocketOptions to HttpConnectionOptions
2018-03-22 22:35:55 -07:00
David Fowler 0753f4b4f4 Merged release/2.1 2018-03-22 21:56:29 -07:00
David Fowler abdcb47b8f
Renames from API review (#2413)
* Renames from API review
- Rename Microsoft.AspNetCore.Protocols.Abstractions to Microsoft.AspNetCore.Connections.Abstractions.
- Renamed IConnectionHandler to IConnectionDispatcher (and related properties and types)
- Added ConnectionHandler and UseConnectionHandler extension method to Connections.Abstractions.
-  Use ActivatorUtilties to create the ConnectionHandler
2018-03-22 21:38:14 -07:00
Javier Calvarro Nelson 8f42ce8492 Application parts cleanups 2018-03-22 20:13:10 -07:00
Ajay Bhargav Baaskaran 77200410d6 Updated Razor views 2018-03-22 19:17:31 -07:00
Patrick Westerhoff 06c93669d6 Allow overwriting parameters on challenge requests
Add a way to overwrite query arguments that are passed as part of the
challenge request to the external authentication provider in OAuth-based
authentication providers, including OpenID Connect.

This uses the new `AuthenticationProperties.Parameters` collection to
pass parameters to the authentication handler which will then look for
special items within that property bag, overwriting previously
configured values within the authentication options.

This can be used for example to overwrite the OAuth scopes that are
requested from an authentication provider, or to explicitly trigger a
reauthentication by requiring a login prompt with OpenID Connect. By
being able to specify this on individual challenge requests (using
`HttpContext.ChallengeAsync`), this is independent from the global
scheme configuration.

Custom ~ChallengeProperties types, e.g. `OAuthChallengeProperties` for
OAuth-based authentication providers, provide assistance in setting the
challenge request parameters but are not required to make the handlers
use the overwritten values.

- Adjust authentication handlers to respect the custom parameters, and
  add ~ChallengeProperties types.
- Introduce `OAuthHandler.FormatScope(IEnumerable<string>)` to format a
  custom set of scopes. Subclasses requiring a different scope format
  should override this method instead of the parameterless overload.
  Overriding just `FormatScope()` will prevent handlers from supporting
  overwriting the OAuth `scope` in a challenge request.
- Refactor GoogleHandler to support parameterization through both the
  `Parameters` and the `Items` collection (former is preferred) to keep
  compatibility with the old behavior.
- Add an OpenIdConnect sample to overwrite the prompt argument in a
  challenge request.
- Add extensive tests.
2018-03-23 02:09:05 +01:00
Pranav K 954a62c075 Remove EnableDefaultCompiledViewAssemblyLoadBehavior and add a switch to disable generating application part factory attribute 2018-03-22 17:09:53 -07:00
Jass Bagga 4acda9dd9b
Set userBrowserLink to false for VS host file (#395)
Addresses #394
2018-03-22 17:04:09 -07:00
Pavel Krymets ed801f0e88 Do not return 200 for exceptions 2018-03-22 16:43:11 -07:00
BrennanConroy a47e1051e8
Add protocol version to handshake (#1666) 2018-03-22 15:54:35 -07:00
David Fowler f1a3775247
Copy HttpContext properties for long polling transport (#1684)
- The long polling transport simulates a persistent connection
over multiple http requests. In order to expose common http request
properties, we need to copy them to a fake http context on the first poll
and set that as the HttpContext exposed via the IHttpContextFeature.
2018-03-22 15:24:35 -07:00
Ryan Brandenburg 8590bb9367 Updating baselines 2018-03-22 14:39:58 -07:00
Javier Calvarro Nelson 9e61d6bd98 Update application parts implementation 2018-03-22 14:31:21 -07:00
Javier Calvarro Nelson de86071b2c React to changes in Virtual schemes 2018-03-22 13:39:45 -07:00
Javier Calvarro Nelson af05248042 [Fixes #4] Adds an Azure Active Directory B2C package
* Adds extension methods to configure Azure Active Directory B2C
  authentication for Web applications and APIs.
* Adds all the supporting controllers/pages to support handling UI
  flows.
* Adds a sample using B2C to authenticate in a web application.
2018-03-22 13:22:13 -07:00
Mikael Mengistu b5c46f35b3
Check for actual start in SSE (#1681) 2018-03-22 19:03:48 +00:00
Justin Kotalik f1058f8575
Cleanup ReadAsync calls, make IISHttpContext private (#696) 2018-03-22 11:13:06 -07:00
Jass Bagga b24e3b2e78
Use applicationUrl instead of ASPNETCORE_URLS (#390)
Addresses #328
2018-03-22 10:32:20 -07:00
Pranav K ccb6793126
Introduce LifecycleProperty
Update TempDataAttribute infrastructure to use LifecycleProperty
2018-03-22 10:18:36 -07:00
David Fowler b111c91cb0
Don't copy the array for incoming msgpack reads (#1686)
* Don't copy the array for incoming msgpack reads
- Don't use ToArray on the already sliced msgpack data.
- Turns out msgpack is self describing enough to not require the count, it just needs the buffer and start offset.
2018-03-22 08:47:06 -07:00
Nate McMaster 12abcd2f68
Merge branch 'release/2.1' into dev 2018-03-21 22:16:12 -07:00
Nate McMaster 54e538dcb5
Remove dotnet tool install from instructions on using dotnet-dev-certs 2018-03-21 22:10:48 -07:00
Nate McMaster 899a298534
Fix package metadata to match default settings for aspnetcore (#389) 2018-03-21 18:10:31 -07:00
Nate McMaster d61d723cba
Update package metadata to include commit hash (#713) 2018-03-21 17:42:18 -07:00
Chris Ross (ASP.NET) 90064ce9df Add ClaimActions for bulk add and remove. #1609 2018-03-21 16:35:37 -07:00
James Newton-King 3f84eee116
Detect availability of web sockets on client and server (#1682) 2018-03-22 12:35:31 +13:00
Pranav K aa49e6990c React to application part changes 2018-03-21 15:42:17 -07:00
Pranav K d6176ac7de ApplicationPartFactory: The works 2018-03-21 15:40:15 -07:00
Ryan Brandenburg 1bac12716d Updating baselines 2018-03-21 15:32:09 -07:00
Ryan Brandenburg 45a0b24680 Updating baselines 2018-03-21 15:31:17 -07:00
Ryan Brandenburg c8f5b2e3ae Set 2.0 baselines 2018-03-21 15:20:30 -07:00
Ryan Brandenburg bb52bcf11b Set 2.0 baselines 2018-03-21 14:54:59 -07:00
pan-wang ffeebfc8b9
support shutdown timeout for inprocess application (#703) 2018-03-21 13:37:26 -07:00
Ryan Brandenburg 46e62b2b67 Set 2.0 baselines 2018-03-21 11:46:17 -07:00
Ajay Bhargav Baaskaran a7178a66bd Show error if page directive is not at the top of file 2018-03-21 11:22:01 -07:00
Ryan Brandenburg f1d965e5e4 Set 2.0 baselines 2018-03-21 10:52:15 -07:00
David Fowler 6053a34cf3
Don't expose HubConnectionContext on the Hub (#1674)
- Made HubCallerContext an abstract class
- Made DefaultHubCallerContext that gets data from the HubConnectionContext.
- Removed IP address
- Removed Connection property
2018-03-21 10:07:41 -07:00
Chris Ross (ASP.NET) e5cffe685b Do not rely on the implicit StringValues to array converter. 2018-03-21 09:42:20 -07:00
David Fowler 6583e5fb47
Improved allocations and throughput for broadcast scenarios (#1660)
- Don't allocate when enumerating connections
- Don't allocate tasks unless we truly go async
- Don't get the timestamp, just write the pings always (if there's no ongoing write)
- Track the time since last keep alive write instead of the last write
- ValueTask all the things!
- Renamed HubConnectionList to HubConnectionStore
2018-03-21 09:03:36 -07:00
David Fowler 5748898fc4
Make the RequestServicesContainerMiddleware thinner (#1360) (#1362)
- Today the request services middleware is responsible for making sure there are request scoped services.
This PR tries introduces some breaking changes that are hopefully acceptable in order to gain some performance.
- Here are the assumptions this PR makes:
 - Since this middleware is first in the pipeline, the only thing that can
  set a default service provider would be the server itself. Since we have no servers that do that
  I removed that code that tries to noop if there's an existing service provider.
 - This PR no longer restores the previous service provider feature since it gets replaced every request
 anyways. Kestrel also clears out the feature on each request so it shouldn't be a problem (in theory).
 Once again, since this middleware is first, it is the last thing that runs before the server re-gains
 control on the way out so there's no need to restore anything.
 - We use the RegisterForDispose method to dispose of the IServiceProvider instead of doing it inline.
2018-03-21 08:58:03 -07:00
Pranav K 8631f287d9 Add a few more Razor Sdk fixes
* UseSharedCompilation to determine the default value of UseRazorBuildServer
* Generate AssemblyDescriptionAttribute
2018-03-21 08:44:55 -07:00
pan-wang 5baa53393f
fixing fowarding handler for AsyncCompletion (#669)
to make sure ANCM does not release IIS pipeline until all WinHttp handlers get closed.
2018-03-20 15:56:16 -07:00
Kiran Challa 431a8e195a [Fixes #2144] Incorrect target element of nested tag helper 2018-03-20 15:25:07 -07:00
N. Taylor Mullen c874f84c3d Revert "Revert "Make Razor HTML Comments aware (#2178)""
This reverts commit 1f3f4b79da.
2018-03-20 15:23:53 -07:00
Jass Bagga 586c4ff780
Move layout and partial script to Shared dir (#368)
Addresses #340
2018-03-20 15:17:50 -07:00
Ryan Brandenburg f38ebee489 Set 2.0 baselines 2018-03-20 14:46:34 -07:00
Ryan Brandenburg 7dd0424825 Set 2.0 baselines 2018-03-20 14:44:10 -07:00
Kiran Challa 69f52cc3b6 Removing Microsoft.AspNetCore.SpaTemplates project and friends 2018-03-20 13:46:11 -07:00
Ryan Brandenburg 9e7291d18d Set 2.0 baselines 2018-03-20 13:34:12 -07:00
N. Taylor Mullen 1f3f4b79da Revert "Make Razor HTML Comments aware (#2178)"
This reverts commit b58986414e.
2018-03-20 11:54:09 -07:00
Ryan Brandenburg 424c0b0209 Set 2.0 baselines 2018-03-20 11:50:45 -07:00
Ryan Brandenburg f91db5b794 Set 2.0 baselines 2018-03-20 11:49:29 -07:00
Ryan Brandenburg a5ffd9b7e6 Set 2.0 baselines 2018-03-20 11:49:13 -07:00
Ryan Brandenburg 07db6cc038 Set 2.0 baselines 2018-03-20 11:48:38 -07:00
Jass Bagga f786df9dc9
Use partial tag helper (#375)
Addresses #338
2018-03-20 10:36:08 -07:00
Hao Kung 56666e349c Add AddDefaultIdentity 2018-03-20 09:53:34 -07:00
Pavel Krymets f1d8ca3045
Add CommitHash to file info (#700) 2018-03-20 09:20:37 -07:00
David Fowler 885679c8bd
Made HubEndPoint derive from EndPoint (#1658)
* Made HubEndPoint derive from EndPoint
2018-03-20 08:31:35 -07:00
James Newton-King 4f10560087
Rename negotiate to handshake, add handshake response, add close frame (#1591) 2018-03-20 17:40:22 +13:00
Pranav K 2bc3466e3d Do not write generated files to disk if the input has parser errors
Fixes #2169
2018-03-19 21:30:47 -07:00
Ajay Bhargav Baaskaran c934bd08ac Merge branch 'rel/vs15.7' into release/2.1 2018-03-19 19:14:51 -07:00
Jass Bagga 910da89882
Use partial tag helper (#1696) 2018-03-19 18:07:45 -07:00
Stephen Halter 5fa658c800
Never run continuation inline in SocketAwaitable.OnCompleted (#2407) 2018-03-19 17:29:49 -07:00
Ajay Bhargav Baaskaran 9dc7c65205 Fix: Missing Html intellisense after directives 2018-03-19 17:16:11 -07:00
Jass Bagga cbdc7bd3b8
Remove tools references and explicit EF.Design reference (#370)
Addresses #99 and #357
2018-03-19 16:27:54 -07:00
Kiran Challa fa8fcc9a62 Made wwwroot 'copyOnly' to avoid modifications in it's files 2018-03-19 16:15:34 -07:00
Ajay Bhargav Baaskaran fab70c81ec Merge branch 'rel/vs15.7' into release/2.1 2018-03-19 15:57:46 -07:00
Ajay Bhargav Baaskaran 79e744f691 Handle unreadable import items in design time 2018-03-19 15:39:25 -07:00
pan-wang 2bb9a8aaf9 Adding handlerSettings configuration to aspnetcore schema for future use (#689) 2018-03-19 15:30:55 -07:00
Ryan Nowak d72e914fe9 Merge branch 'rel/vs15.7' into release/2.1 2018-03-19 15:11:49 -07:00
Ryan Nowak d1bf120c54 Make 2.1 MVC the default for uninitialized projects 2018-03-19 15:06:57 -07:00
Ryan Nowak 130a751dfa Add an experimental Language Version
Adding a secret language version for Blazor and other experiments.
2018-03-19 14:10:33 -07:00
Ryan Brandenburg 3edca24004 Set 2.0 baselines 2018-03-19 13:43:59 -07:00
Jass Bagga 9fda68e9db
Update jQuery (#1692) 2018-03-19 13:39:03 -07:00
Ryan Nowak be53b64fc1 Add an experimental Language Version
Adding a secret language version for Blazor and other experiments.
2018-03-19 13:21:06 -07:00
Ryan Nowak 6e4a968e12 Fix #2149 give generated files distinct extension
Gives our generated a files an extension that isn't used for any other
purpose (that we know of). This is handy for tooling to be able to
quickly know if a file is 'ours'. This comes up in places like
IVsSymbolicNavigationNotify (go to definition).
2018-03-19 12:59:16 -07:00
Doug Bunting 390ebbb258
Do not bind `"[index]"` in `CollectionModelBinder` subsetting feature
- #7091
- add `IKeyRewriterValueProvider` to remove rewritten keys or value providers containing such keys
  - similar to `IBindingSourceValueProvider` except `CompositeValueProvider` keeps non-implementers around
- remove `after.Order == before.Order` special cases
  - a premature optimization that could lead to lost inner provider replacements
  - rework `EnumerableValueProviderTest` to ease test override in `CompositeValueProviderTest`
- add `EmptyValueProvider` fields to reduce `CompositeValueProvider` allocations

nits:
- remove Linq use in `CompositeValueProvider`
- do not create an unnecessary dictionary in `CompositeValueProvider.Filter(...)` methods
- accept VS suggestions, mostly pattern matching
2018-03-19 12:53:05 -07:00
Jass Bagga ed18a8f975
Seal ActionResultOfT (#7507) 2018-03-19 12:52:31 -07:00
Pranav K 7ff56dadf4 CodeGen RouteTemplate as a RazorCompiledItemAttribute 2018-03-19 12:37:04 -07:00
Javier Calvarro Nelson 908e7a863b Improvements to the MVC testing package
* Clean up unnecessary workarounds on the build project.
* Remove the need to specify the content root relative to the solution
  and use a solution based on an assembly level attribute on the test
  assembly created at build time.
* Remove non parameterless constructors.
* Add support for creating specialized factories from the base factory
  and keep track of "child" factories for disposal.
* Add support for creating clients that handle cookies and redirects
  automatically.
2018-03-19 12:19:45 -07:00
Kiran Challa e2b6975bff Marked PageArgumentBinder type as Obsolete 2018-03-19 11:50:20 -07:00
Kiran Challa 09b5ff7b72 Use ParameterInfo for getting metadata of a parameter to show the correct information in ApiExplorer
[Fixes #7435] 2.1-Preview 1: IsBindingRequired and IsRequired still false with RequiredAttribute on controller parameter.
2018-03-19 11:50:19 -07:00
Ajay Bhargav Baaskaran 767e5a12c3 Display errors from build server as part of MsBuild output 2018-03-19 10:49:00 -07:00
Ryan Brandenburg 7a7cc5ab1e Set 2.0 baselines 2018-03-19 10:46:23 -07:00
Artak b58986414e
Make Razor HTML Comments aware (#2178)
* Merging changes (from dev branch; doing manually to squash them really)of HTML Parser to be aware of HTML Comments so TagHelpers don't complain about comments as content.
2018-03-19 10:18:29 -07:00
Jass Bagga 79b4cafe68
Remove BOM from json files (#369)
Addresses #276
2018-03-19 10:11:00 -07:00
Ryan Brandenburg 5e9dd7a5fc Set 2.0 baselines 2018-03-19 10:10:50 -07:00
Ryan Brandenburg dc07aba935 Set 2.0 baselines 2018-03-19 09:27:10 -07:00
Ryan Brandenburg 7c50704c69 Set 2.0 baselines 2018-03-19 09:26:55 -07:00
richardhopton f6f89554c9 Fix trimming line if CR not directly before LF (#1006)
If the line contains a CR in any location than directly before the LF it would detect a valid line and then trim 2 characters from the end of the line, losing a "real" character.
2018-03-19 09:09:57 -07:00
hede f85be6a0c0 fix typo in ApiController XMLDoc 2018-03-19 08:09:10 -07:00
Ryan Nowak 4875856974 Fix #4604 for good 2018-03-19 08:04:27 -07:00
David Fowler cf7c8629ff
Use ActivatorUtlities.CreateFactory instead of CreateInstance (#1643)
* Use ActivatorUtlities.CreateFactory instead of CreateInstance
- Turns out CreateFactory is much much faster
- Added a benchmark for hub activation
2018-03-19 00:19:54 -07:00
David Fowler d4d5a08bc2
The payload property was never used (#1641) 2018-03-18 22:34:02 -07:00
David Fowler 7df5c87815 Add copyright headers to new files 2018-03-18 15:39:20 -07:00
David Fowler b792fcb4ef
Reduce the per message read allocations (#1635)
- Introduced Utf8BufferTextReader that writes buffers directly into
the char[] allocated by JSON.NET when reading via the JsonReader.
- Use IArrayPool implementation over ArrayPool<char> when reading
incomming messages.
- Replaced JToken parsing with manual parsing using JsonTextReader.
- Added tests for parsing incoming JSON messages with out of order
properties.
- Make access to message headers lazy
- Changed IHubProtocol.TryParseMessage to be ReadOnlyMemory<byte> instead of ReadOnlySpan<byte>
2018-03-18 15:16:03 -07:00
Justin Kotalik cf4874997e
Heap allocate HTTP_DATA_CHUNK if the size of the response is too large. (#683) 2018-03-16 16:56:23 -07:00
BrennanConroy db0dc0f960
Ignore writeasync failures when sending to multiple connections (#1589) 2018-03-16 16:48:05 -07:00
Pranav K 5cb31f6082 Hardcode extension .PrecompiledViews 2018-03-16 16:19:49 -07:00
BrennanConroy 0e38ee3e63
Create connectionIds using RNGCrypto (#1606) 2018-03-16 16:16:34 -07:00
David Fowler 079a56be1a
Small optimizations (#1617)
- Return ValueTask instead of Task from WriteAsync helpers
- Use TryGet instead of foreach to avoid enumerator (though it's just a stack allocation here)
2018-03-16 16:08:11 -07:00
Ryan Brandenburg 2fb65200ee Set 2.0 baselines 2018-03-16 16:08:10 -07:00
BrennanConroy c640f422e0
Pascal case formatted log parameter names (#1615) 2018-03-16 12:13:27 -07:00
Ajay Bhargav Baaskaran d8e363d99c Added parameter validation to RazorTagHelper and RazorGenerate tasks 2018-03-16 12:02:51 -07:00
BrennanConroy 9839e6b07b
Perf in MessageParsers (#1616) 2018-03-16 11:40:15 -07:00
Chris Ross fbc5b64cd8
React to new SocketHttpHandler (#434) 2018-03-16 10:56:36 -07:00
Ryan Brandenburg ca15b2fbf6 Set 2.0 baselines 2018-03-16 10:50:27 -07:00
Ryan Brandenburg 8553647ce8 Set 2.0 baselines 2018-03-16 10:50:18 -07:00
Ryan Brandenburg 3584e5f2ab Set 2.0 baselines 2018-03-16 10:50:05 -07:00
Ryan Brandenburg 4cf0b5d033 Set 2.0 baselines 2018-03-16 10:49:52 -07:00
Pranav K 3919d18c62 React to Razor Sdk changes
Assembly attributes are autogened by Razor Sdk and results in duplicates
2018-03-16 10:18:09 -07:00
Justin Kotalik 5e74b36c53
Verify read/write buffers, use offset parameter when reading. (#652) 2018-03-16 10:11:20 -07:00
Jass Bagga 641dfe3b62
Use RefreshSignInAsync (#1655)
Addresses #1616
2018-03-16 10:05:13 -07:00
Chris Ross (ASP.NET) 2b80c90554 Add host filtering middleware 2018-03-16 10:05:09 -07:00
David Fowler 227c6b8133
Use the array unpacker instead of the Stream unpacker (#1619)
- This reduces allocations and improves throughout of msgpack
2018-03-16 09:41:34 -07:00
Justin Kotalik 8ff9ce70c9
Fixes spelling (#679) 2018-03-16 09:27:40 -07:00
Ben Adams 2527face16 Query EndPoints once during reset (#2398) 2018-03-15 23:55:51 -07:00
Javier Calvarro Nelson acf7584d13 Reenable API Check 2018-03-15 21:44:34 -07:00
James Newton-King 2d6077db4a
Removed params from proxy's SendAsync and rename to SendCoreAsync (#1605) 2018-03-16 14:05:22 +13:00
David Fowler 181dc0de24 React to pipelines changes 2018-03-15 16:58:53 -07:00
pan-wang e5661a46b7
do cleanup inside inprocessapplication destrutor (#676) 2018-03-15 16:47:21 -07:00
pan-wang 8e54e792fb
do shutdown check before processing request (#677) 2018-03-15 16:46:50 -07:00
N. Taylor Mullen 4e7d1a5a32 Rename PartialTagHelper `asp-for` to `for`.
#7379
2018-03-15 16:07:13 -07:00
Pavel Krymets 3ef9dd1640
Fix http_stop_calls_into_managed typo (#673) 2018-03-15 15:59:57 -07:00
Pranav K b74582e101 Ensure PreserveCompilationContext is set if we're targeting precompilation tool
PreserveCompilationContext must be set for precompilation tool to work, even when
the app has no views.

Fixes #2168
2018-03-15 12:49:56 -07:00
Pranav K 5f69a01cc5
RazorSdk - Attribute code generation fixes
* Allow the type name for ProvideApplicationPartFactoryAttribute to be specified.

* Generate ReleatedAssemblyAttribute in class library projects
2018-03-14 23:09:28 -07:00
David Fowler d27844dfef
ConnectionMetadata is now ConnectionItems (#1604)
* ConnectionMetadata is now ConnectionItems
2018-03-14 20:57:40 -07:00
David Fowler d31512528d
Items is now a first class property on ConnectionContext (#2395)
* Metadata is now a first class property on ConnectionContext
- Make IConnectionMetadata a manatory top level feature on ConnectionContext
- TransportConnection will lazily manifest ConnectionMetadata on first access.
This should avoid allocations since Kestrel isn't using this today.
2018-03-14 20:56:30 -07:00
Andrew Stanton-Nurse 2b68db873a
add AddRedis overload that takes connection string (#1588) 2018-03-14 16:24:28 -07:00
David Fowler 6a8ede0770
Further making Microsoft.AspNetCore.Sockets "not a thing" (#1599)
- This PR attempts to move things where they are needed instead of where they
happened to be used. As a result we should now have Sockets.Abstractions and
Sockets down to the minimal set of things required to make them run.
Sockets.Abstractions should go away in favor of Protocol.Abstractions and
Sockets contains the EndPoint abstraction and related types.
- Moved ConnectionManager and friends to
Sockets.Http.
-Removed Sockets and moved everything into Sockets.Abstractions.
- Moved DefaultConnection and put it in Sockets.Abstractions.
2018-03-14 15:37:24 -07:00
N. Taylor Mullen f9ad346be8 Fix RazorDirectiveCompletionProvider MEF dependency. 2018-03-14 14:41:22 -07:00
pan-wang 9d064b24c7
enable debug print in aspnetcore.dll (#663) 2018-03-14 14:29:25 -07:00
Stephen Halter 9901f0f3e4
Default to the managed socket transport (#2392) 2018-03-14 11:50:10 -07:00
David Fowler 6de76c5e69
Respect the buffer size arguments on options (#230)
* Respect the buffer size arguments on options
- Allocate a buffer for receives and pass into CreateFromStream.
2018-03-14 08:48:45 -07:00
David Fowler dc0567690d
Use features from Protocol.Abstractions (#1594)
- This is part of the grand unification of the connection layer between SignalR and Kestrel
2018-03-14 08:17:07 -07:00
David Fowler 04eef791bc
Added transfer format to Protocol.Abstractions (#2391) 2018-03-14 08:16:38 -07:00
Ben Adams e65e58daf3 Reduce Sockets mainloop Send/Receive statemachine size (#2376)
* Use Completion to Advance in Error

* Drop ReadResult from statemachine
2018-03-13 23:04:12 -07:00
David Fowler 572627e88c
Handle posting to the libuv thread after StopAsync (#2388)
- Check if the post handle is disposed and noop if it is.
We also catch an ObjectDisposedException because it's an inherent race condition.
2018-03-13 19:37:39 -07:00
Ben Adams f6108928d8 Pass ReadOnlySequence via in (#2389)
* Pass ReadOnlySequence via in
2018-03-13 17:54:01 -07:00
Chris Ross (ASP.NET) bfdb48717f Host header format validation 2018-03-13 16:37:03 -07:00
Justin Kotalik 810c4bcb0a
Fix two AVs with InProcess (#656) 2018-03-13 16:07:55 -07:00
pan-wang d246c6f201
add port info to event log (#660) 2018-03-13 16:06:01 -07:00
pan-wang 7a511d6a94
websocket handler changes (#661)
add debug logging and reset connection in case of failure
2018-03-13 16:05:32 -07:00
N. Taylor Mullen 1d602d1205 Add host project system for VS4Mac.
- Tied into VS4Macs ProjectExtensions in order to bootstrap our Razor world.
- We currently watch all DotNet projects with the expectation that they're the only ones that can potentially turn into Razor compatible projects.
- Added a fallback Razor project host which is used for pre-Razor SDK Razor versions (< 2.1).
- Added a default Razor project host which consumes all MSBuild data from the users packages and sets up the Razor world accordingly.
- Had to modify some existing contracts to work better with new expectations. one of these was the VS4Mac specific Workspace accessor; essentially we needed to be able to lookup a workspace from a solution.
- Some of our previous expectations about addins were wrong (not being able to directly reference your libraries). To avoid using reflection to bootstrap our types I tried out directly referencing our libraries and all worked fine.
- Refactored the DefaultRazorProjectHost in windows (since we had to in Mac) for testing purposes.

#2081
2018-03-13 15:31:45 -07:00
N. Taylor Mullen 492e958114 Change HostProjectBuildComplete to persist workspace projects.
- This was missed in the VS15.7 movement to dev.
2018-03-13 15:11:21 -07:00
BrennanConroy 62956530ae
Rename StreamAsync to StreamAsChannelAsync (#1587) 2018-03-13 15:04:11 -07:00
Andrew Stanton-Nurse fb6121399c
Remove support for binary over SSE and add transfer format to negotiation (#1564) 2018-03-13 14:29:32 -07:00
David Fowler bcea8330c4
Clean up some left overs (#2385) 2018-03-13 14:10:06 -07:00
Pranav K 1eab654620 Fix typo in Razor.props 2018-03-13 14:01:23 -07:00
Pranav K 425724ce28 Avoid generating RelatedAssemblyAttribute when RazorSdk isn't in play 2018-03-13 13:54:02 -07:00
Hao Kung efe0c6be7b
Split Auth into AddIdentityCookies (#1442) 2018-03-13 13:11:29 -07:00
Pranav K f0788926a0
Add additional APIs required by Razor Sdk 2018-03-13 12:53:41 -07:00
Nate McMaster 016fa66640
Map properties DotNetRestoreSources => RestoreSources for metapackage builds (#955) 2018-03-13 12:23:18 -07:00
Chris Ross (ASP.NET) 8b58a9a091 Scheme and Host value validation 2018-03-13 12:02:37 -07:00
Hao Kung 7db6925ffc
Split sqllite and sql server migrations (#348)
* Split sqllite and sql server migrations

* Fix casing, move files around

* Remove if defs and add check
2018-03-13 11:41:16 -07:00
Hao Kung bee77ebf91
Rename VirtualScheme => PolicyScheme (#1665)
* VirtualScheme => PolicyScheme

* Use SignInHandler base for cookies

* PolicySchemeHandlers throw NotImplemented by default

* Remove redundant interface
2018-03-13 11:09:43 -07:00
Nate McMaster 349acb5bb3
Condense restore feed configuration to single location and remove package mirroring (#945) 2018-03-13 10:56:09 -07:00
David Fowler 2d8f3d95fe
Feature/clean up proto abstractions (#2383)
- This change aims to clean up the feature interfaces
 used by kestrel and exposed by protocol absractions. It splits out the
 IConnectionTransportFeature into smaller features that may or may
 not be implemented on the connection.
- Added all of the features from Socket.Abstractions
in an attempt to make it go away completely. As a result
the helper methods and extensions have all been added here.
- Change IConnectionHandler to take TransportConnection. This cleans up the interface and makes it more explicit what features are required by Kestrel
2018-03-13 10:27:04 -07:00
David Fowler adb760210d
Minimal reaction to proto abstractions changes (#1583)
- Doesn't consume new feature interfaces yet.
2018-03-13 10:24:08 -07:00
N. Taylor Mullen 9fc6b8fcf5 Clean up mac completion broker. 2018-03-13 10:04:29 -07:00
David Karlaš 6b2b47a8e6 [VSfM] Fix code completion disappearing/reseting because C# part of .cshtml in regenerated
Razor AddIn generation of C# projection content inside .cshtml depends on code completion being visible hence it needs to know state.
Since we are using Roslyn code completion API which doesn't have method to check if code completion is visible and also it's internal, only other way would be to make some public static field inside CSharpBinding which indicates visibility of code completion, hence it's better to just store this value inside textView.Properties. We should be able to remove this in 15.8 when we switch to new VSEditor code completion API.
2018-03-13 09:59:52 -07:00
Jass Bagga dbc5e38d04
Match launchSettings variable to sourceName in template.json (#354)
Addresses #346
2018-03-13 09:52:20 -07:00
Scott Addie 0879dbd082 Convert ValuesController return types to ActionResult<T> (#351)
Addresses #339
2018-03-13 09:50:39 -07:00
Kiran Challa a0b1b15101 [Fixes #7412] AspNetCore 2.1 breaks integration with 3rd party validation libraries 2018-03-13 02:07:56 -07:00
David Fowler fa3229b489
Revert "Clean up protocol abstractions (#2381)" (#2382)
This reverts commit ddd0b4c260.
2018-03-13 02:04:42 -07:00
David Fowler ddd0b4c260
Clean up protocol abstractions (#2381)
- This change aims to clean up the feature interfaces
 used by kestrel and exposed by protocol absractions. It splits out the
 IConnectionTransportFeature into smaller features that may or may
 not be implemented on the connection.
- Added all of the features from Socket.Abstractions
in an attempt to make it go away completely. As a result
the helper methods and extensions have all been added here.
- Change IConnectionHandler to take TransportConnection. This cleans up the interface and makes it more explicit what features are required by Kestrel
2018-03-13 01:43:49 -07:00
Stephen Halter 2a7bbeb8d7 Revert "React to pipelines changes (#2378)"
This reverts commit 2421df85d6.
2018-03-13 00:32:52 -07:00
David Fowler 2421df85d6 React to pipelines changes (#2378) 2018-03-12 23:59:04 -07:00
Kiran Challa a952313f1c Added JQueryQueryStringValueProviderFactory and JQueryQueryStringValueProvider
[Fixes #6372] jQuery ajax request with complex data does not work with .net core 1.1 model bindings
2018-03-12 16:40:04 -07:00
Ajay Bhargav Baaskaran fcd4484542 Fix TagHelperDescriptor.Kind serialization 2018-03-12 15:44:38 -07:00
David Fowler e7d3b0c5f9
Remove KestrelThreadPool abstraction and replaced it with PipeScheduler (#2371) 2018-03-12 14:49:19 -07:00
James Newton-King 974eb28b8b
Hub method reflection caching and invocation benchmarks (#1574) 2018-03-13 10:30:45 +13:00
James Newton-King d816c6ef60
Add additional properties to HttpOptions (#1557) 2018-03-13 09:46:34 +13:00
Ajay Bhargav Baaskaran 4acdebc5be
Temporary workaround issue with Sdk mismatch (#7472) 2018-03-12 13:29:49 -07:00
BrennanConroy 489bd80b88
Remove threshold from client SSE pipe (#1577) 2018-03-12 12:50:42 -07:00
Scott Addie 12c3cf028c Assign language and template type to 3 C# item templates (#343)
Addresses #341
2018-03-12 11:22:07 -07:00
Artak a9004e503e
Merge pull request #2061 from aspnet/artakm/RestrictChildrenComments
Ignoring HTML comments in tag helper's body. Updated the markup parser to be aware of HTML Comments.
2018-03-12 11:17:57 -07:00
pan-wang 02abb69cb2
fix missing reference/dereference handler (#651) 2018-03-10 09:50:48 -08:00
Artak Mkrtchyan ae94c3c452
- Updated naming for methods to be more intuitive.
- Added extra tests for clarity
- Added extra comments to clarify complex areas
2018-03-09 18:18:16 -08:00
Artak Mkrtchyan 3e22c16930
Added extra tests for non-covered scenarios:
- For older version of Razor the HTML comments will be complained about by TahHelperRewriter
- RazorParserFeatureFlags tests now ensure that AllowHtmlCommentsInTagHelpers is true in 2.1 version  and false in older versions
- Added extra test for IsHtmlCommentAhead to make sure Razor code transition is allowed in comment tag
- Moved the unallowed html comment ending to a static array.
2018-03-09 17:18:57 -08:00
Mikael Mengistu 0b81658850
Add SignalR Marker Service (#1573) 2018-03-10 00:58:57 +00:00
James Newton-King d6178f2482
Fixed streaming hub method with ValueTask (#1572) 2018-03-10 12:31:38 +13:00
Stephen Halter 71bff00c0d
Use LibuvThread inspired IO Queue in Socket transport (#2368) 2018-03-09 15:04:20 -08:00
Pranav K 62fdf3a472 Fix issues with RazorCompileOnBuild=true being default 2018-03-09 14:39:18 -08:00
Pranav K 483fba5972 Generate application part attributes
* Add support for generating attributes on Razor assembly
* Generate ProvideApplicationPartFactoryAttribute on Razor assembly
* Generate RelatedAssemblyAttribute on application assembly
2018-03-09 14:36:55 -08:00
pan-wang 0b07894ea7
fix srwlock initialize (#647) 2018-03-09 11:47:54 -08:00
BrennanConroy d941a4be09
Workaround automatic Http2 upgrade in POSTs (#1571) 2018-03-09 11:43:59 -08:00
Artak Mkrtchyan 6c8c6a777c
- Clarified the code where the comment content ending is checked to be allowed or not.
- Added more unit tests
2018-03-09 09:16:17 -08:00
Artak Mkrtchyan 1318a83511
Fixed the NextIs method to put back the symbol, when at the end of the file 2018-03-08 17:13:34 -08:00
Artak Mkrtchyan faccd90aa5
Added unit-tests to validate new methods 2018-03-08 16:36:56 -08:00
Justin Kotalik cb49b98b6f
Follow windows conventions for file versions (#646) 2018-03-08 16:28:27 -08:00
Hao Kung 3382a59c5a React to namespace 2018-03-08 16:09:36 -08:00
Ryan Nowak 2f79b90af5 Merge branch 'rel/vs15.7' into dev 2018-03-08 15:49:01 -08:00
Ryan Nowak 989a6c699f Don't add the tag helper provider by default
Since the default tag helper provider is used by MVC then MVC should
include it. Now that Blazor is in the mix we shouldn't include it for
all configurations.
2018-03-08 15:41:34 -08:00
N. Taylor Mullen 07e672159e Merge remote-tracking branch 'origin/dev' into nimullen/vs15.7merge 2018-03-08 14:44:14 -08:00
Pavel Krymets 4a4efe0f39
Update to new corefx (#1561) 2018-03-08 14:23:20 -08:00
Pavel Krymets 77c5d2a971
Update to new corefx (#642) 2018-03-08 14:23:16 -08:00
Pavel Krymets fc80c15a65
Update to new corefx (#2369) 2018-03-08 14:23:07 -08:00
Artak Mkrtchyan 7357fa04ea
Applied PR feedback (unit testst will be added as part of a separate commit) 2018-03-08 13:38:35 -08:00
Artak Mkrtchyan 32e2c533c7
Naming improvements and test code cleanup 2018-03-08 13:37:05 -08:00
Artak Mkrtchyan 33814fb634
Updated the Comments detection to comply with HTML 5 specification 2018-03-08 13:37:04 -08:00
Artak Mkrtchyan 0af42204eb
Added the AllowHtmlCommentsInTagHelpers feature flag to control behavior of having comments in TagHelpers 2018-03-08 13:37:04 -08:00
Artak Mkrtchyan e1fbea24f1
HtmlMarkupParser is now aware of HtmlComment blocks. Majority (if not all, will confirm soon) tests have been updated to account for HtmlComment blocks. 2018-03-08 13:37:03 -08:00
Artak Mkrtchyan ad8485addd
Added new BlockType - HtmlComment
Updated the HtmlMarkupParser to understand the HtmlCOmments, and treat those as blocks.
2018-03-08 13:37:03 -08:00
Artak Mkrtchyan a940a4cd91
Moved the comment check into the "ValidateParentAllowsContent" method 2018-03-08 13:37:02 -08:00
Artak Mkrtchyan 679acdc5d4
Ignoring razor comments during validation 2018-03-08 13:37:02 -08:00
Artak Mkrtchyan 47228dd822
Revert unnecessary change 2018-03-08 13:37:01 -08:00
Artak Mkrtchyan 41b7d90ea8
Ignoring markup comments during validation 2018-03-08 13:37:01 -08:00
Artak Mkrtchyan e6f68eb244
Added a unit test to repro the issue 2018-03-08 13:37:01 -08:00
pan-wang 8dca8f030c
moving recycle and shutdown to applicationinfo (#639)
fix a race condition in processing request and app_offline, and optimize code logic
2018-03-08 12:24:25 -08:00
Hao Kung 9ecbefcf21
ProtectPersonalData + extensiblity support (#1562) 2018-03-08 12:13:34 -08:00
Justin Kotalik ad82bd31d8
Fix argument parsing for hostfxr, add native unit tests. (#635) 2018-03-08 11:53:12 -08:00
Justin Kotalik 00b1948937
Adds websocket feature detection, test cleanup. (#624) 2018-03-08 09:52:45 -08:00
Mikael Mengistu adbd964efd
Transport Fallback (#1455) 2018-03-08 06:49:03 +00:00
Justin Kotalik ad4b172660
Remove build warnings and turn on warning as errors in IISLib. (#641) 2018-03-07 21:15:57 -08:00
Justin Kotalik 4eea754dc3
Don't create std log file for out of process when logs are disabled (#640) 2018-03-07 16:12:50 -08:00
Chris Ross (ASP.NET) b6dc00229d Convert TestHost ResponseStream to use Pipes. 2018-03-07 15:22:20 -08:00
James Newton-King a41bf6228f
Client sends user agent with version based on assembly version (#1551) 2018-03-08 10:25:12 +13:00
Ryan Brandenburg 9b4b373014 Remove IErrorDescriptionFactory 2018-03-07 13:09:13 -08:00
Chris Ross (ASP.NET) 42fbba3520 More detailed request timeout exceptions #2245 2018-03-07 12:23:06 -08:00
pan-wang 419ae06935
fixing double locking issue (#637) 2018-03-07 12:02:04 -08:00
Chris Ross (ASP.NET) dbd557c965 Exclude the upgrade feature if the OS does not support it #427 2018-03-07 11:53:58 -08:00
pan-wang f32addd408
Update RecycleApplication function (#634)
removing hostingmodel input from recycleapplication call and fix memory leak in recycle out of process application
2018-03-07 11:45:51 -08:00
Pranav K d6ba2ee966 Add wireframe for ConfigureApplicationPart 2018-03-07 10:39:21 -08:00
James Newton-King 1c44e8febf
Fix streaming hub methods combined with async (#1544) 2018-03-07 20:07:06 +13:00
pan-wang 0e28f34c1a Add general logging event to be used by the RequestHandler (#633) 2018-03-06 21:18:49 -08:00
Pranav K 5af246b554 Ignore constructors when discovering actions 2018-03-06 17:42:53 -08:00
Mikael Mengistu 1b9313287b
Restrict HubProtocol on Server + HubOptions<THub> (#1492) 2018-03-07 01:31:56 +00:00
pan-wang c833e7b994 change the logic on handling configuration change and adds shutdown logic (#610) 2018-03-06 16:47:02 -08:00
Jass Bagga f3ffdada95
Remove problem+json Content-Type (#7440)
Addresses #7344
2018-03-06 13:46:40 -08:00
Nate McMaster e552b5861a
Switch default implementation of Pbkdf2 on Linux/macOS to Rfc2898DeriveBytes (#301)
Requires adding .NET Core 2.0 target framework to the package because only SHA1 is supported in .NET Standard 2.0
2018-03-06 09:31:03 -08:00
Pranav K c4ba279fb5
Skipping flaky test and additional additional diagnositcs to Shutdown command 2018-03-06 09:15:53 -08:00
Pranav K 0d321771ad
Make UseRazorBuildServer=true by default 2018-03-06 09:15:52 -08:00
Chris Ross (ASP.NET) 1df139eb6d Clone tickets for sliding refresh #1607 2018-03-06 08:56:45 -08:00
James Newton-King 846432c9ac
Improve unexpected server error message to client (#1532)
* Improve unexpected server error message to client

* Separated expected vs unexpected errors in error message. Fixed broken tests

* Fix ts functional tests
2018-03-06 22:11:46 +13:00
N. Taylor Mullen 5c456fbd04 Merge branch 'rel/vs15.7' into dev
# Conflicts:
#	build/dependencies.props
#	src/Microsoft.CodeAnalysis.Razor.Workspaces/ProjectSystem/DefaultProjectSnapshot.cs
#	src/Microsoft.CodeAnalysis.Razor.Workspaces/ProjectSystem/DefaultProjectSnapshotManager.cs
#	src/Microsoft.CodeAnalysis.Razor.Workspaces/ProjectSystem/DefaultProjectSnapshotWorker.cs
#	src/Microsoft.CodeAnalysis.Razor.Workspaces/ProjectSystem/DefaultProjectSnapshotWorkerFactory.cs
#	src/Microsoft.CodeAnalysis.Razor.Workspaces/ProjectSystem/ProjectSnapshot.cs
#	src/Microsoft.CodeAnalysis.Razor.Workspaces/ProjectSystem/ProjectSnapshotUpdateContext.cs
#	src/Microsoft.VisualStudio.Editor.Razor/DefaultVisualStudioDocumentTracker.cs
#	src/Microsoft.VisualStudio.LanguageServices.Razor/Legacy/LegacyTagHelperResolver.cs
#	src/Microsoft.VisualStudio.LanguageServices.Razor/Microsoft.VisualStudio.LanguageServices.Razor.csproj
#	src/Microsoft.VisualStudio.LanguageServices.Razor/ProjectSystem/Rules/RazorConfiguration.cs
#	src/Microsoft.VisualStudio.LanguageServices.Razor/ProjectSystem/Rules/RazorExtension.cs
#	src/Microsoft.VisualStudio.LanguageServices.Razor/ProjectSystem/Rules/RazorGeneral.cs
#	src/Microsoft.VisualStudio.LanguageServices.Razor/ProjectSystem/Rules/RazorProjectProperties.cs
#	test/Microsoft.CodeAnalysis.Razor.Workspaces.Test/ProjectSystem/DefaultProjectSnapshotTest.cs
#	test/Microsoft.VisualStudio.Editor.Razor.Test/Microsoft.VisualStudio.Editor.Razor.Test.csproj
2018-03-05 22:58:07 -08:00
Ajay Bhargav Baaskaran 27e6c699e5 Don't print normal output as error 2018-03-05 15:22:37 -08:00
Rob Ward 42dcd0ba28 UrlHelperFactory.GetUrlHelper throws NullReferenceException when passed
a null action context.

This change validates the action context parameter.
2018-03-05 13:34:05 -08:00
Javier Calvarro Nelson b4cf3ed071 [Fixes #1628] Avoid stomping on an existing FileProvider
Respects the existing one if it's there.
2018-03-05 13:31:49 -08:00
Pranav K 41c923926e Make RazorCompileOnBuild=true
Fixes #1986
2018-03-05 11:29:44 -08:00
Pranav K 3517ecda2f Ensure DebugType = embedded and DebugType = none work
Fixes #7406
2018-03-05 09:21:13 -08:00
Doug Bunting f061d328d9
Do not use `FormattedModelValue` in password editor template
- #7418
- add quirk switch to reverse this if necessary
2018-03-05 08:33:16 -08:00
Justin Kotalik 4e8a9d2493
Move reading and writing of Pipelines to a single loop; Cancel Read every time we write. (#582) 2018-03-04 19:52:41 -08:00
Javier Calvarro Nelson 978938b7c3 Initial commit 2018-03-03 14:44:32 -08:00
pan-wang cbffeb33ea
fixing a stress issue (#619) 2018-03-02 17:34:09 -08:00
Pavel Krymets 850ce33edf
Remove keyvault hosting startup (#159) 2018-03-02 14:59:28 -08:00
Nate McMaster bbad5d601d
Merge branch 'release/2.1' into dev 2018-03-02 14:13:23 -08:00
Nate McMaster 1f5379e38d
Merge branch 'release/2.1' into dev 2018-03-02 14:11:38 -08:00
Nate McMaster ad1c9d7137
Merge branch 'release/2.1' into dev 2018-03-02 14:02:11 -08:00
Nate McMaster 7803ed6e09
Merge branch 'release/2.1' into dev 2018-03-02 13:59:36 -08:00
Nate McMaster 19c38d0af0
Merge branch 'release/2.1' into dev 2018-03-02 13:57:53 -08:00
Pranav K c444f65c5d Import capabilities to support solution explorer nesting
Fixes #2047
2018-03-02 11:18:11 -08:00
Jass Bagga 8d1c85ab74
Add overload for AddModelError without ModelMetadata (#7407)
Addresses #6102
2018-03-02 11:03:46 -08:00
Chris Ross (ASP.NET) 9839799645 Add CookiePolicy logging #1588 2018-03-02 09:53:03 -08:00
Pranav K 5bd650bdd1 Pack should pack symbol nupkg
* Update path calculation for BuiltProjectOutputGroupOutput to include full path. This matches
  the behavior of Microsoft.Common.targets.
* Add Razor symbols to DebugSymbolsProjectOutputGroupOutput

Fixes #2116
2018-03-02 07:45:24 -08:00
pan-wang 17dd3e85cb
fix missing event log descriptions (#622) 2018-03-01 20:53:57 -08:00
Ajay Bhargav Baaskaran 0f1bc0e0bd Fix flaky dispatcher test 2018-03-01 14:29:25 -08:00
Ajay Bhargav Baaskaran a9dca60a10 Added support for AssemblyMetadata caching during build server TagHelper discovery 2018-03-01 13:08:56 -08:00
Jass Bagga c4d1f20c78
Remove bundleconfig.json files from project templates (#335)
Addresses #326
2018-03-01 11:58:18 -08:00
Ryan Nowak 00485d9f1b Fix #2099 - make AssemblyExtension public
This is needed when a runtime wants to construct its own configuration
manually, especially useful in tests.

(cherry picked from commit 92c511b2b4)
2018-03-01 11:05:35 -08:00
Ryan Nowak 3e0360a891 Fix #2041 - Add static constructor to DocumentWriter
The instance Create method was always supposed to be static.

(cherry picked from commit e05c2abd94)
2018-03-01 10:54:16 -08:00
Ben Adams 300453396a Pass StringValues via in (#2295) 2018-02-28 19:54:44 -08:00
Ryan Nowak 92c511b2b4 Fix #2099 - make AssemblyExtension public
This is needed when a runtime wants to construct its own configuration
manually, especially useful in tests.
2018-02-28 17:58:21 -08:00
Nate McMaster 0c7ff81a9f
Handle FileNotFoundException when it is thrown while attempting to send a file (#233) 2018-02-28 16:18:33 -08:00
BrennanConroy 569c31bc62
Add some more logging (#1510) 2018-02-28 14:11:59 -08:00
Ryan Nowak e05c2abd94 Fix #2041 - Add static constructor to DocumentWriter
The instance Create method was always supposed to be static.
2018-02-28 13:46:18 -08:00
Ryan Nowak d6784b5f16 Report faults on Razor project system exceptions
Using the async-tasks service will automatically handle and report
exceptions from the project system
2018-02-28 13:04:42 -08:00
Pavel Krymets 2dac2e34fa
Reac to pipes in corefx (#618) 2018-02-28 12:42:09 -08:00
Pavel Krymets 8908eec6e7
Pipelines in corefx (#1501) 2018-02-28 12:42:01 -08:00
Pavel Krymets 2c108d9ba1
React to pipes in corefx (#2337) 2018-02-28 12:41:51 -08:00
pan-wang fcbe74fbf1
fix coding guideline issue. Use BOOL instead of bool (#620) 2018-02-28 12:02:15 -08:00
Pranav K 62df770c39 PreserveCompilationContext needs to be set only if a project has any Razor files
Fixes #2077
2018-02-28 11:45:20 -08:00
Nate McMaster 9bd4a67f7d Remove Microsoft.NETCore.Platforms from tool package nuspec 2018-02-28 11:05:50 -08:00
Chris Ross (ASP.NET) 21acbf06e8 Update google auth endpoint to v2 #1307 2018-02-28 10:51:13 -08:00
Andrew Stanton-Nurse 13b25ec518
Reduce detailed payload logs to trace (#1515) 2018-02-28 10:46:44 -08:00
Chris Ross (ASP.NET) cc8acdff57 Update facebook API version to 2.12 #1306 2018-02-28 09:48:07 -08:00
Pranav K 251d57942b Clean up error message when Razor compiler is not referenced
Fixes #1974
2018-02-27 18:08:34 -08:00
Ajay Bhargav Baaskaran 63f0322810 Allow whitespace and backslash in path 2018-02-27 15:24:36 -08:00
Pranav K f51ddf68a6 Add RazorGenerate items to UpToDateCheckInput
Fixes #2048
2018-02-27 15:01:27 -08:00
Nate McMaster 3cd6add095 Revert "Return HTTP 404 if FileNotFoundException is thrown when attempting to send a file (#232)"
This reverts commit 6d7269dafb.
2018-02-27 15:00:07 -08:00
BrennanConroy 1790d6bdf0
Serialize once per format to increase perf in broadcasting scenarios (#1498) 2018-02-27 14:55:00 -08:00
John Luo d9778252d0 Sort header and query values 2018-02-27 13:42:46 -08:00
pan-wang 71b90a31a9
websocket enabled check (#612) 2018-02-27 11:28:27 -08:00
pan-wang 792b72e71a
adding error description which was commented out previously (#613) 2018-02-27 09:41:09 -08:00
Pranav K e35d0bc43f Add more fine grained logging to RazorViewCompiler 2018-02-26 19:44:26 -08:00
Chris Ross (ASP.NET) d95109c96d #43 Add Microsoft.AspNetCore.Authentication.WsFederation, samples, and tests.
#1443 Block unsolicited wsfed logins by default.
#1520 Update WsFed to use the 2.0 event structure
#1425 Implement WsFed remote signout cleanup
Rework WsFed RemoteSignOutPath logic to work with ADFS #1581
Update versions, dependencies.
2018-02-26 15:31:39 -08:00
BrennanConroy 8594d2b897
Use Threadpool for pipe scheduler (#1497) 2018-02-26 14:07:46 -08:00
David Fowler b60e4cfea6
Removing remnants from the days of OPTIONS (#1495) 2018-02-26 14:05:55 -08:00
Pranav K aa21a6be6e
Use File.Open overload that overwrites file entirely in DiscoverCommand (#2110)
* Use File.Open overload that overwrites file entirely in DiscoverCommand

Re-enable TagHelper discovery incrementalism test

Fixes #2104
2018-02-26 10:22:29 -08:00
Justin Wyer 83bf2375b3 #2035 Do not await OnCompleted handlers before sending the Response (#2324) 2018-02-25 18:10:04 -07:00
Mikael Mengistu 0e4731e480
Expose Transport and Application Max Buffer Sizes (#1473) 2018-02-25 08:47:14 +00:00
N. Taylor Mullen b538ceba93 Change final code documents to not contain non-existent imports.
- Existent imports are imports that have content that contribute to the processing of a Razor document. Prior to this we had a legacy expectation that code documents had empty markers in them for all of their import locations. This proved troublesome when cross-referencing files that had file paths and were supposed to be existent but weren't in metadata. Now that we have a project engine with a de-coupled import feature we can rely on the import feature for finding all locations of important files and then strip out any non-existent items.
2018-02-23 16:30:22 -08:00
Pranav K 0ee3a5d4f4 React to Razor Sdk changes 2018-02-23 15:39:59 -08:00
Ben Adams de7e2a2573 Use enum for method rather than string compares (#2294) 2018-02-23 14:29:42 -08:00
Jass Bagga 298a1e2a78
Add AllowAnonymous for some Identity razor pages (#1644)
Addresses #1617
2018-02-23 13:57:37 -08:00
Nikita Tsukanov 39951e892e Don't throw in HttpRequestStream.Flush (#2342)
Because read-only streams apparently can have Flush semantics and this behavior is expected by some of built-in stream wrappers (e. g. CryptoStream)

https://github.com/dotnet/corefx/pull/27327#pullrequestreview-98384813
https://github.com/aspnet/KestrelHttpServer/issues/2341
2018-02-23 09:51:09 -08:00
Ben Adams 6728e756b7 Sanitize and centralize exception throws (#2293)
* Sanitize and centralize exception throws
2018-02-23 09:24:20 -08:00
Andrew Stanton-Nurse 6a2d41cc9f
Fix #924 by introducing HubDispatcher abstraction (#1479) 2018-02-22 20:59:34 -08:00
Ben Adams 6252ffd86a Flatten exception handling (#2313)
3 nested try blocks with 3 finallies in same function O_o
2018-02-22 16:46:18 -08:00
Ben Adams c57784447e Speed up TryGetAsciiString (#1973)
* Widen
* Remove TryGetAsciiStringVectorCheckShifts
* Add Span version to benchmarks
2018-02-22 16:45:31 -08:00
Ben Adams c0f88ebdc1 Faster IFeatureCollection.Get<TFeature> (#2290) 2018-02-22 16:44:38 -08:00
David Fowler 32baa655b9
Do over the websocket transport (#1481)
* Do over the websocket transport
- Unify client and server logic (no code sharing yet)
- Removed use of cancellation tokens to communicate shutdown and instead used the pipe reader and socket abort.
- Added CloseTimeout to HttpOptions
2018-02-22 15:19:25 -08:00
John Luo c29531f2eb Delimit key values for query strings 2018-02-22 14:57:59 -08:00
Jass Bagga 8cac91b15e
Update jQuery (#307) 2018-02-22 14:39:18 -08:00
Nate McMaster 590c621c6f
Update README to reflect that dotnet-watch et. al. are bundled in the CLI 2018-02-22 12:55:03 -08:00
pan-wang dc62b9ba38
adding mof file for freb log (#603) 2018-02-22 11:14:29 -08:00
John Luo b85ed9d5cd Commas in doc comments 2018-02-22 10:44:59 -08:00
Justin Kotalik 4775706bbc
Add version numbers on aspnetcore.dll and aspnetcorerh.dll, remove unnecessary files (#601) 2018-02-22 10:03:51 -08:00
Nate McMaster 70dcbf6ed6
Add UnprotectKeysWithAnyCertificate 2018-02-22 08:50:03 -08:00
Charlie Daly 4f3e044928 HtmlHelper.DisplayTextFor should use DisplayAttribute of enums
- #7033
2018-02-21 15:11:51 -08:00
pan-wang 782b563a58
fixing empty logfile name in event log (#602)
Empty log file path was logged as we reset the stru too earlier. Changing the code order
2018-02-21 14:08:26 -08:00
Nate McMaster 6d7269dafb
Return HTTP 404 if FileNotFoundException is thrown when attempting to send a file (#232) 2018-02-21 13:22:31 -08:00
Justin Kotalik 21b1febf2b
Adds environment variable feature for inprocess (#583) 2018-02-21 12:36:39 -08:00
Pranav K 540e8437da Enable PreserveCompilationContext by default 2018-02-21 11:59:23 -08:00
Pranav K 33e60ae363 Separate VS/DesignTime properties from general SDK properties
Fixes #2069
2018-02-21 11:55:36 -08:00
Pranav K 8938f6c8c2 Change the default extension for Razor views to .Views.dll 2018-02-21 11:48:31 -08:00
pan-wang 1f6e2c8029
grant the config setting on 502.5 page setting (#600)
grant the config setting on 502.5 page setting
2018-02-21 11:27:48 -08:00
pan-wang e3d3b088ae
adding logging for outprocess start and application recycle (#573)
adding logging for outprocess start and application recycle
2018-02-21 10:58:34 -08:00
N. Taylor Mullen c5e83c61f8 Changed AddDefaultImports to take strings instead of project items.
- Strings here was important because any import added to the system dynamically needs to eventually make its way back to being a project item. With strings we can state that they do exist (have content) but do not have any file paths associated.
- Updated all call sites to use the new AddDefaultImports string based api.

#2080
2018-02-21 09:42:40 -08:00
Steve Sanderson 873cfa9adf In SpaProxy, don't fail if there are non-forwardable headers. Fixes #1543. 2018-02-21 14:03:30 +00:00
Steve Sanderson 7debea272c Update Angular template content to match @angular/cli@1.7.0 2018-02-21 13:56:19 +00:00
David Fowler 3fc69dc71f
Updated Streams to override Memory and Span overloads (#2333)
- Also plumbed Memory/Span through Kestrel over ArraySegment.
- Throw synchronously from the HttpRequestStream instead of async in some cases.
2018-02-21 00:00:46 -08:00
Javier Calvarro Nelson 3e30d52055 [Fixes #1639] Reset password doesn't work 2018-02-20 15:10:56 -08:00
Javier Calvarro Nelson 2511862a77 [Fixes #1638] Send confirmation email doesn't generate the callback URI correctly 2018-02-20 15:10:55 -08:00
Javier Calvarro Nelson d1aa7d527b Add an end to end test for login in with a social provider. 2018-02-20 15:10:55 -08:00
Justin Kotalik ff496ca580
Fix absolute paths to dotnet (#597) 2018-02-20 15:03:37 -08:00
Pranav K 9a9a2cf66a Make content files work better in class library projects referencing Razor Sdk
* Include cshtml files as content when referencing Razor Sdk
* Exclude cshtml files added by default from being packed

Fixes #1980
2018-02-20 14:15:19 -08:00
David Fowler c8d4cf689f
Tackling some low hanging performance fruit (#1470)
* Tackling some low hanging performance fruit
- Use native Memory/Span APIs on Stream and WebSocket in .NET Core 2.1
- Remove double copying in formatters
- Implemented custom HttpContent over ReadOnlyBuffer<byte>
2018-02-20 13:50:31 -08:00
Ryan Nowak cf5743ea86 Fix a bug in tag helper discovery on build 2018-02-20 13:07:01 -08:00
Justin Kotalik c395db12e6
Fix path searching for where.exe and request handler parsing (#595) 2018-02-20 08:10:13 -08:00
Ryan Nowak 43f8108ac3 Merge branch 'rel/vs15.7' into dev 2018-02-19 16:45:49 -08:00
Ryan Nowak 0b777dad3f Decouple tooling from MVC assemblies 2018-02-19 14:39:19 -08:00
Ryan Nowak 5008c7803c Add a project system
Step 1: Add HostProject

This is a somewhat complex addition to the ProjectSnapshotManager. Now
that we accept updates from the underlying IDE project system we need to
coordinate those with the Workspace.

This means that ProjectSnapshot itself now also has a version concept.

Step 2: Introduce a new project system based on CPS

We use project capabilities defined by the Razor SDK to determine
whether to rely on MSBuild evaluation to detect the configuration or
whether to fallback to assembly-based detection.

Step 3: Flow RazorConfiguration everywhere

We use now expose the RazorConfiguration to the language service and
editor. This means that we no longer need to detect the project's
configuration asynchronously, it happens much faster now.
2018-02-19 14:39:19 -08:00
Ryan Nowak 59a1cf9293 Add support for method parameters to Razor IR 2018-02-19 14:38:03 -08:00
Ryan Nowak c032988ddf Merge branch 'rel/vs15.7' into dev 2018-02-19 14:06:34 -08:00
Ryan Nowak fcf6ea03a9 Add IDE extensibility for project engine 2018-02-19 14:03:41 -08:00
Ryan Nowak b644ecfeaa Relayer interaction between extensions and engine 2018-02-19 14:00:31 -08:00
Nate McMaster 13824c418e Catch 15.7 up with dev
This change integrates most of the non-breaking work that we did in 2.1
including the updates to make Razor less coupled to MVC.
2018-02-19 10:46:16 -08:00
brightcr a72e5db797 Removed code to set response headers - connection and upgrade as it should be set by caller e.g. WebSockets Middleware (#2329) 2018-02-19 08:36:28 -08:00
David Fowler a2ac9c573e
Added try finally to semaphore release (#1469) 2018-02-18 12:37:42 -08:00
David Fowler e1bb2215e5
Remove the Channel<HubMessage> from the HubConnectionContext (#1468)
* Remove the Channel<HubMessage> from the HubConnectionContext
- Replace the channel with a single lock around the pipewriter. Since writes are always synchronous, the lock is held for a very short time.
- We were only using them in this scenario for handling multiple producers (the hub output, the keep alive ping and the broadcast).
- Handle the scenario where there's back pressure (when we use pipes that are bounded) and give callers a single task representing when back pressure is released.
- Handle synchronous exceptions in RedisHubLifetimeManager
- Fixed benchmarks
2018-02-17 10:22:11 -08:00
Ben Adams 1f8591184e Use ReferenceEquals not MulticastDelegate.equals (#2330)
It never inlines because its such a chunky method
2018-02-17 08:13:15 -08:00
David Fowler de7faec246
Pass the array segment offset to WriteAsync (#1467) 2018-02-17 01:26:07 -08:00
BrennanConroy 3acd29ec6f Revert "Fix flaky SSE test (#1279)"
This reverts commit 6fcf554c23.
2018-02-16 19:01:54 -08:00
BrennanConroy a513386f68
Somehow the token didn't get passed into the reader (#1465) 2018-02-16 16:23:15 -08:00
N. Taylor Mullen 43106f688a Re-enable "Move to RazorProjectEngine."
- This was initially reverted due to insufficient packages for local builds.

This reverts commit 5ac6fa77f8.
2018-02-16 16:13:54 -08:00
Mike Harder 4afaa386db
Remove unnecessary usings (#2326) 2018-02-16 14:04:16 -08:00
Nate McMaster eea8c1a146
Support decrypting keys with X509Certificate that is not in the X509Store
The default implementation of EncryptedXml doesn't support using the RSA
key from X509Certificate to decrypt xml unless that cert is in the X509
CurrentUser\My or Localmachine\My store. This adds support for
decrypting with the X509Certificate directly. This is useful for Linux
(often Docker) scenarios, where the user already has a .pfx file, but
may not have added it to X509Store.
2018-02-16 12:11:20 -08:00
Pranav K 1c451a7ff4
Update the remarks section for ViewData (#7371)
* Update the remarks section for ViewData
Fixes #7279
2018-02-16 10:18:31 -08:00
Pranav K 251ea37b49
Update Controller.cs 2018-02-16 10:18:10 -08:00
Ryan Nowak 45148142ea Fix broken build 2018-02-16 09:43:33 -08:00
Rustam Agametov 9ec207399d bug fix: unused parameter in the constructor 2018-02-16 00:50:59 -08:00
Justin Kotalik 87c3ca4752
Send stderr logs to anonymous pipe instead of file when logging is disabled. (#549) 2018-02-15 18:43:06 -08:00
N. Taylor Mullen 5ac6fa77f8 Revert "Move to RazorProjectEngine."
- Waiting for packages to be available from Razor.

This reverts commit 608330dc86.
2018-02-15 17:01:07 -08:00
N. Taylor Mullen 608330dc86 Move to RazorProjectEngine.
- Updated our consumption of `RazorEngine` and `RazorTemplateEngine` to use `RazorProjectEngine` and its features.
- Updated service registrations to maintain existing services but to also register new ones.
- When moving `RazorViewEngine` to use `RazorProjectFileSystem` I had to add an unused constructor item in order to disambiguate the constructors.
- Updated tests to use `RazorProjectEngine` and `RazorProjectFileSystem`.

#7377
2018-02-15 16:34:26 -08:00
Ryan Brandenburg 00b0329059 No more ExperimentalProjectVersionPrefix 2018-02-15 16:00:08 -08:00
Ryan Nowak e27009528f Add reference to MVC.Razor.Extensions
Make sure the msbuild files from this package are includes
Update KoreBuild and deps
2018-02-15 15:43:04 -08:00
Ajay Bhargav Baaskaran c293267421 Fixed unnecessary invocation of TagHelper target 2018-02-15 15:31:54 -08:00
Pranav K a13a0aa8c4
WebSdk transitions (#2078)
* WebSdk transitions

* Add a reference to Microsoft.Net.Sdk if it wasn't previously referenced
* Move PreserveCompilationContext in to our target
* Remove use of transition property
2018-02-15 15:09:05 -08:00
Ryan Nowak 56ead8118a Decouple Razor tools from MVC
Adds a loader (with shadow copying in server mode) based on the Roslyn
Analyzer loader design.

Adds some targets to the Razor SDK that we can use to compute the
configuration and extensions.

Passes all of the metadata through to the command line tools so they can
deal with extensions.
2018-02-15 13:31:31 -08:00
Ryan Brandenburg d7957ed50c No more ExperimentalProjectVersionPrefix 2018-02-15 12:43:27 -08:00
Ryan Brandenburg 66714b5fc0 Use ExperimentalPackageVersion 2018-02-15 12:08:50 -08:00
Ryan Brandenburg ce7d3c7050 Use ExperimentalPackageVersion 2018-02-15 12:08:34 -08:00
Pranav K 16bcd8871e WebSdk transitions
* Add a reference to Microsoft.Net.Sdk if it wasn't previously referenced
* Move PreserveCompilationContext in to our target
* Remove use of transition property
2018-02-15 12:08:18 -08:00
Ryan Brandenburg f1e63e0f9e Use ExperimentalPackageVersion 2018-02-15 11:44:08 -08:00
Ryan Brandenburg ade44786c9 Use ExperimentalPackageVersion 2018-02-15 11:42:53 -08:00
N. Taylor Mullen e200b69511 Change IImportProjectFeature to consume RazorProjectItems.
- Updated all implementations of `IImportProjectFeature`; for MVC I went ahead and made a single project item that's always returned for MVC scenarios. That project item is smart about returning its content in a light-weight stream fashion.
- Had to add a `RazorProjectItem` => `RazorSourceDocument` conversion mechanic into `DefaultRazorProjectEngine`.
- Added tests for `DefaultRazorProjectItem.ConvertToSourceDocument`.
- Removed the `ProjectEngine` API from `VisualStudioRazorParser`. This was unrelated but was missed feedback.

#2068
2018-02-15 11:31:18 -08:00
Pranav K 501c180b5f Use properties in package props to redirect imports 2018-02-15 10:40:27 -08:00
BrennanConroy 6fcf554c23
Fix flaky SSE test (#1279) 2018-02-15 09:56:02 -08:00
Pranav K 2d405b79d0 Use Razor Sdk from CLI 2018-02-15 08:41:39 -08:00
Alessio Franceschelli 14332c5daf Allows Content-Length for 304 Not Modified response (#2321) 2018-02-14 16:01:07 -08:00
Justin Kotalik 4ca45d951f
Increment index by 1 as indexOf is inclusive when searching for dotnet.exe (#589) 2018-02-14 15:28:15 -08:00
Pranav K 06e40252a0 Add support for top level validation to Razor Pages 2018-02-14 14:39:25 -08:00
Ryan Brandenburg a6165304b3 Add ExperimentalPackageVersion 2018-02-14 12:48:27 -08:00
N. Taylor Mullen 133eff3119 Move to RazorProjectEngine.
- Instead of using Razor/Mvc TemplateEngine use `RazorProjectEngine`. This involved changing several locations (each of which used `RazorTemplateEngine` in an entirely different way) to use the RazorProjectEngine's two Process methods.
- Changed an unused public API `VisualStudioRazorParser.TemplateEngine` to `VisualStudioRazorParser.RazorProjectEngine`.
- Ported the remainder of `RazorEngineBuilder`'s extension methods over to `RazorProjectEngineBuilder`. These were used in tests and our `RazorGenerate` tool.
- Added a few test helper methods/classes to enable simple testing of the `RazorProjectEngine`.
- Resolved several test hacks that were working around little discrepancies each of the `RazorTemplateEngine` APIs.
- Changed the template engine factory service to be a project engine factory service.
2018-02-14 12:40:23 -08:00
Alessio Franceschelli 9341f72b8d Consumes request before closing connection (#2314) 2018-02-14 11:46:13 -08:00
Pranav K 8770751a97 Update the remarks section for ViewData 2018-02-14 11:45:53 -08:00
Dona278 551158c239 Fixed exception during deserialization of a message with Redis (#1426)
Changed wrong message type used during deserialization in "SubscribeToUser"
2018-02-14 11:30:32 -08:00
Ryan Nowak 0c6ec09958 Addressed Taylors feedback 2018-02-13 16:21:18 -08:00
Ryan Nowak 82579b6333 Get rid of RazorConfiguration.DesignTime
This change makes it so that we no longer create 'design time' engines.
The choice of design time or runtime is made when we initiate a code
generation operation.

Options instances are now created as part of the CodeDocument
initialization. Our existing code can still be created using a
RazorEngine so our passes that initialize the options still support the
old code path.
2018-02-13 16:21:18 -08:00
BrennanConroy d9b32ee323
Logging invocations with errors would throw inside logger (#1445) 2018-02-13 14:57:21 -08:00
Chris Ross (ASP.NET) d20d47924c Add HostString.MatchesAny #2863 2018-02-13 14:40:14 -08:00
Pranav K 010b43cedf Make imports work without warnings or errors when the Sdk is referenced via MsBuild and package. 2018-02-13 13:45:42 -08:00
Daniel Roth db8e0127c7 Remove hyphen from the dev-certs tool name 2018-02-13 09:33:02 -08:00
David Fowler ae998ba172
Remove unneeded dependencies (#1443) 2018-02-12 23:58:44 -08:00
David Fowler 6c22f25818
Client pipelines (#1435)
- Reworked the Client to be based on pipelines instead of Channels
- SendAsync no longer fails if the http request itself fails but the connection is closed as a result.
- Updated tests
- Base64Encoder needed to support multiple messages in the same span of data
2018-02-12 22:27:43 -08:00
Pranav K 6be6229d18 Include the buildMultiTargeting folder in the Sdk package 2018-02-12 18:00:58 -08:00
Ryan Nowak c733156596 SDK changes needed to decouple Razor from MVC 2018-02-12 14:08:57 -08:00
David Fowler 3934ffd5af
Cleanup some dead code (#1434)
- Rename SocketBuilder to ConnectionBuilder
- Removed ChannelReaderExtensions
2018-02-10 22:16:30 -08:00
David Fowler 4c08acd8a4
Don't allocate all the memory up front when receiving incoming sends (#1433) 2018-02-10 20:52:00 -08:00
David Fowler 94155b0e89
Use protocol.abstractions primitives instead of socket abstractions (#1432) 2018-02-10 18:10:09 -08:00
David Fowler 342c4c44f6 Change namespace to avoid conflict 2018-02-10 12:44:55 -08:00
David Fowler 3e568588d2
Revert "Use protocol.abstractions primitives instead of socket abstractions (#1429)" (#1431)
This reverts commit e3f197cef0.
2018-02-10 11:30:41 -08:00
David Fowler e3f197cef0
Use protocol.abstractions primitives instead of socket abstractions (#1429) 2018-02-10 10:45:07 -08:00
David Fowler 2156030460
Clean up some of protocol abstractions (#2311)
* Clean up some of protocol abstractions
- Renamed PipeConnection to DuplexPipe
- Removed MemoryPool from ConnectionContext
- Work around value tuple issue on net471
2018-02-10 10:39:21 -08:00
David Fowler 2ed78d5762
Don't expose Channel from HubConnectionContext (#1428)
- Change HubEndPoint to call WriteAsync
- Fixed assert  for protocol reader writer
2018-02-09 22:00:28 -08:00
David Fowler 28439d1441
Initial changes to move to pipelines (#1424)
- Change the Sockets abstraction from Channel<byte[]> to pipelines.

#615
2018-02-09 17:45:21 -08:00
N. Taylor Mullen 3375fc8b99 Change RazorProjectEngine to operate on RazorProjectItems.
- Removed the `Process(string)` overload to make it extra clear that you must operate on project items. This way we also don't need to worry about the various formats of paths that can flow through the system.
- Updated tests to use the new project item format.
- Did a few formatting fixes on unrealted files.

#2049
2018-02-09 17:24:27 -08:00
Javier Calvarro Nelson 2f42f8f8b4 Merge branch 'release/2.1' into dev 2018-02-09 15:07:53 -08:00
Javier Calvarro Nelson e81e124586 Fix whitespaces 2018-02-09 15:07:33 -08:00
Javier Calvarro Nelson 46bfdf1d14 Merge branch 'release/2.1' into dev 2018-02-09 14:57:10 -08:00
Javier Calvarro Nelson 1f3a26051d Fix duplicated namespace on startup 2018-02-09 14:56:18 -08:00
Javier Calvarro Nelson 8f005c7a58 Merge branch 'release/2.1' into dev 2018-02-09 14:19:40 -08:00
Colin Farr 103190796f Adding RedirectToWwwRule and extension (#297) 2018-02-09 14:13:43 -08:00
Javier Calvarro Nelson 025d366b83 Fix bad merge 2018-02-09 14:08:01 -08:00
Javier Calvarro Nelson 6bb798d2b7 Add minimumsamesitepolicy.None in the cookie policy options on the templates 2018-02-09 13:51:34 -08:00
Javier Calvarro Nelson 7a1f716fc0 Merge branch 'release/2.1' into dev 2018-02-09 13:39:09 -08:00
Javier Calvarro Nelson 67cf534bda Fix B2C templates 2018-02-09 13:20:16 -08:00
N. Taylor Mullen 84bc74ea9f Move to RazorProjectFileSystem.
- Changed all existing APIs to utilize `RazorProjectFileSystem`. This was possible because `RazorProjectFileSystem` inherits from RazorProject.
- Renamed `FileSystemRazorProject` to `DefaultRazorProjectFileSystem`.
- Renamed FileSystemRazorProjectItem` to `DefaultRazorProjectItem`.
- Obsoleted `RazorProject.Create`

#1828
2018-02-09 11:49:31 -08:00
Nate McMaster 06c2f0cfd2 Merge branch 'release/2.1' into dev 2018-02-09 10:12:41 -08:00
Nate McMaster 1a77aecf68 Align NETStandard.Library version variable with Universe 2018-02-09 10:08:09 -08:00
Nate McMaster a64672d6e9 Ensure publish directory is cleaned when /t:Clean is executed [ci skip] 2018-02-09 09:57:44 -08:00
Joshua Clark 5dd590e75e Add clearer exception message to HttpResponseStream ODE (#2305) 2018-02-08 17:28:00 -08:00
Pranav K e537cdd319 Prepare for Razor Sdk to be imported by Web Sdk 2018-02-08 15:14:47 -08:00
Javier Calvarro Nelson ac3bea16fd Add functional tests for Identity UI 2018-02-08 14:10:22 -08:00
Javier Calvarro Nelson 23f63c2790 Remove dependency on Microsoft.AspNetCore.Identity.Service.AzureKeyVault 2018-02-08 13:15:47 -08:00
Hao Kung abe222eb53 Merge branch 'release/2.1' into dev 2018-02-08 12:39:58 -08:00
Hao Kung 06f1340f2a
[2.1] Update initial identity migration (#313) 2018-02-08 12:37:40 -08:00
Redouane Sobaihi 8f25c4e8ca Include limits default values in intellisense comments. (#2304) 2018-02-08 11:37:01 -08:00
Steve Sanderson bf5f40b1ed In Websocket proxy, don't forward User-Agent. Fixes #1469. 2018-02-08 11:40:14 +00:00
Peter Blazejewicz 3d118de0d5 Pass properties to super in derived classes. Fixes #289
Thanks!
2018-02-08 11:17:15 +00:00
Peter Blazejewicz 6b44610079 Align class event handler creation with React docs
This is small change to align example React app with current advised way of assigning
event handlers that are declared as ES6 class methods:
https://reactjs.org/docs/handling-events.html

Thanks!
2018-02-08 11:17:09 +00:00
Steve Sanderson c000f6af2d Update Angular template to match @angular/cli@1.6.8 output 2018-02-08 11:03:00 +00:00
Ajay Bhargav Baaskaran 8b78b4f421 Cleaned up logging in build server 2018-02-07 23:52:54 -08:00
Ajay Bhargav Baaskaran f991b9ae48 Better comment 2018-02-07 18:23:33 -08:00
Jass Bagga acc2147ac5
Merge pull request #315 from aspnet/release/2.1
Remove hard coded copyright year
2018-02-07 14:28:39 -08:00
Jass Bagga 6b490836b1 Remove hard coded copyright year 2018-02-07 14:13:02 -08:00
Doug Bunting 50af871396 Use new `HttpRequest.EnableBuffering()` extension method
- aspnet/Home#2684
- update dependencies to pick up latest HttpAbstractions
2018-02-07 10:57:17 -08:00
Andrew Stanton-Nurse 0435b6dc6e
add headers and revamp msgpack tests (#1382) 2018-02-07 09:36:29 -08:00
Artak Mkrtchyan 629ffb7ede
Merge pull request #369 from hishamco/useRequestLocalization
Add a builder API for configuring UseRequestLocalization
2018-02-07 09:17:44 -08:00
Doug Bunting 7b9da556fb Add `HttpRequestRewindExtensions`
- aspnet/Home#2684
- makes the `BufferingHelper` methods used in MVC and WebHooks `public`
2018-02-06 22:11:06 -08:00
Ryan Nowak 2ae925a0f2 Update SDK with tooling changes
These are some updates to the SDK based on the work going on in the
VS 15.7 branch. I porting the SDK changes here early for ease of
testing.
2018-02-06 18:21:33 -08:00
Artak Mkrtchyan e308c0fe5f
Merge pull request #7290 from FabienLavocat/dev
Add constructor for the SelectListItem class
2018-02-06 16:29:57 -08:00
Jass Bagga d27e66a8fc
Initialize ViewContext for TagHelperComponentTagHelper (#7326)
Addresses #7017
2018-02-06 16:07:38 -08:00
Ryan Nowak 6d757988c9 Integrate new Sdk
The project file change is a workaround for
https://github.com/Microsoft/msbuild/issues/2874
2018-02-06 15:41:31 -08:00
Hao Kung c6a82ad19a
TFA cookies now validate security stamp (#1351) 2018-02-06 13:27:53 -08:00
Justin Kotalik 9162ab3436
Default to using program files if where.exe doesn't find dotnet.exe (#578) 2018-02-06 12:12:23 -08:00
Ajay Bhargav Baaskaran ba7f955afa Split arguments for the build server properly 2018-02-06 11:32:48 -08:00
Fabien Lavocat c062d637fe Add new contructor in SelectListItem.cs 2018-02-06 11:01:24 -08:00
David Fowler 816ecf5cda
Reduce the amount of argument checking by flattening the call graph. (#995) 2018-02-06 10:26:56 -08:00
PRIYANSHU AGRAWAL 5aa3529dcb Merge PR #297 - minor code cleanup - remove duplicate allocation of DateTimeOffset 2018-02-06 08:18:12 -08:00
Steve Gordon 8765d55f9f Fixing small typo in a comment (#1328) 2018-02-06 07:57:28 -08:00
Robert Miles 672a5f3c76 Allow null value in query string KVP per RFC 3986 (#994)
* Allow null value in query string KVP per RFC 3986

* Tweaks per PR suggestions

* Tweaks per PR suggestions, round 2

* Tweaks per PR suggestions, round 3
2018-02-05 20:25:53 -08:00
Jass Bagga 37b8abf841
Refresh user signin after updating their profile (#1615) 2018-02-05 14:21:19 -08:00
Pranav K 84beb5985f Add support for relative paths
* Move path munging in to Razor SDK
* Use AssignTargetPath to determine the target path for outputs and embedded resources

Fixes #1829
Fixes #1847
Fixes #1999
2018-02-05 14:19:52 -08:00
Ajay Bhargav Baaskaran 5a93f68ccc Pass through DebugTool to to debug build server creation 2018-02-05 14:10:32 -08:00
Kristian Hellang 450900d14c Added protected ctor to AuthenticationSchemeProvider (#990) 2018-02-05 13:43:55 -08:00
Pranav K 0df6bfb839 Change the casing of Sdk to match other Sdks 2018-02-05 11:20:18 -08:00
Fabien Lavocat a2420688ff Add comments and remove default values in the contructor 2018-02-05 10:54:55 -08:00
Jass Bagga b177f5a145
Merge pull request #304 from aspnet/release/2.1
Remove F# web app VS host file
2018-02-05 10:42:02 -08:00
Priyanshu Agrawal ce82951c56 Remove extra white-spaces 2018-02-05 23:52:53 +05:30
Jass Bagga cc14da18eb Remove F# web app hosts file 2018-02-05 10:14:14 -08:00
Henk Mollema e353005562 Use correct ArgumentNullException parameter name (#436) 2018-02-05 08:37:23 -08:00
Justin Kotalik e035d0ed96
Fail fast on .NET Full Framework and log exceptions in hostfxr utility (#533) 2018-02-04 20:54:12 -08:00
Ryan Nowak 870f023aa9 Add prelimianry support for extensions to Razor (#2012)
* Add prelimianry support for extensions to Razor

This PR adds MSBuild insfrastructure to the SDK that can understand
concepts we need to expose to the project, code generator and runtime
like:
- Language version
- Configuration
- Extensions (plugins)

As an example of how this works, I've done the wireup for MVC. This will
now generate assembly attributes in your application that can act as a
source-of-truth for what should be included in runtime compilation, and
it's all based on the project-file. This means that it can be delivered
and configured by packages.

The next step here is to implement a loader for RazorProjectEngine based
on these primitives, and then use it in our CLI tools and MVC.

The next step after that is to expose it in VS and VS4Mac through the
project system.

(cherry picked from commit 5b28c06d64)
2018-02-03 20:13:24 -08:00
Ryan Nowak 5b28c06d64
Add prelimianry support for extensions to Razor (#2012)
* Add prelimianry support for extensions to Razor

This PR adds MSBuild insfrastructure to the SDK that can understand
concepts we need to expose to the project, code generator and runtime
like:
- Language version
- Configuration
- Extensions (plugins)

As an example of how this works, I've done the wireup for MVC. This will
now generate assembly attributes in your application that can act as a
source-of-truth for what should be included in runtime compilation, and
it's all based on the project-file. This means that it can be delivered
and configured by packages.

The next step here is to implement a loader for RazorProjectEngine based
on these primitives, and then use it in our CLI tools and MVC.

The next step after that is to expose it in VS and VS4Mac through the
project system.
2018-02-02 17:41:14 -08:00
Eilon Lipton 062f6b4d31
Merge pull request #284 from peterblazejewicz/fix/279
Add empty TypeScript starter template file. Closes #279
2018-02-02 16:35:37 -08:00
Justin Kotalik 462c1c042a Merge remote-tracking branch 'origin/release/2.1' into dev 2018-02-02 16:23:54 -08:00
Javier Calvarro Nelson 216e9f62c4 Fix kestrel urls in launchSettings.json 2018-02-02 16:10:15 -08:00
Justin Kotalik 5465216be9
React to hostfxr api changes (#577) 2018-02-02 16:07:51 -08:00
Javier Calvarro Nelson a4427f5263 Fix kestrel urls in launchSettings.json 2018-02-02 16:07:02 -08:00
N. Taylor Mullen ca15840d05 Remove VisualStudioWorkspaceAccessor.Workspace.
- This property used to represent a "primary Workspace". Now that we're moving away from having a "primary Workspace" this needs to go away.

#2001
2018-02-02 15:35:07 -08:00
N. Taylor Mullen ea9a74ee3c Change RazorTextViewConnectionListener to not depend on a primary workspace.
- Updated the `DefaultRazorDocumentManager` to also not be a workspace service. It didn't end up having any workspace specific logic so it made sense to have the lifetime of the IDE.

#2010
2018-02-02 14:04:35 -08:00
BrennanConroy 60cbedf5ee
Don't throw in Nginx deployer dispose (#1327) 2018-02-02 13:44:48 -08:00
Pranav K 8461158306 Use consistent file casing for Razor Sdk 2018-02-02 13:42:14 -08:00
Pranav K c8562728e7 React to Razor Sdk rename 2018-02-02 13:20:58 -08:00
Ryan Nowak 07f3c5cb50 Merge branch 'rel/vs15.7' into dev 2018-02-02 13:17:27 -08:00
Ryan Nowak eb5abc6ac5 Add CPS dependencies
Getting this in to avoid pain when rebasing/merging.
2018-02-02 13:16:24 -08:00
Pranav K 35779abd9a Rename Microsoft.AspNetCore.Razor.Sdk to Microsoft.NET.Sdk.Razor 2018-02-02 13:12:29 -08:00
Jass Bagga 66750bb20a
Merge pull request #285 from aspnet/release/2.1
Adding host configurations for F# templates (#281)
2018-02-02 12:19:37 -08:00
Jonathon Marolf 8079ab8b58 Adding host configurations for F# templates (#281) 2018-02-02 12:18:50 -08:00
Peter Blazejewicz ebeb7b93f9 Add empty TypeScript starter template file. Closes #279
No content, the header with the same CTA as in site.js

And no BOM, there is no policy to enforce it in the repo.

Thanks!
2018-02-02 21:14:20 +01:00
Priyanshu Agrawal e0e4b007ec Use http method names from HttpAbstractions
This uses http method names from strings defined HttpMethods class instead of hard coded strings.
2018-02-03 01:36:28 +05:30
N. Taylor Mullen 4eea2f6992 Change DefaultTagHelperFactsService to not expect a primary workspace.
- Removed `TagHelperFactsServiceInternal` since we had no way of retrieving the internal Workspace service given the exposed public API. Not to mention I think the `TagHelperFactsService` made more sense as a MEF service anyhow.
- Moved `TagHelperFactsServiceInternal` tests to `Microsoft.VisualStudio.Editor.Razor.Test` project and changed them to utilize the non-"internal" version.
- Updated completion service API to rely on non-`TagHelperFactsServiceInternal` pieces.

#2004
2018-02-02 12:02:45 -08:00
Priyanshu Agrawal 58411b4cc4 Use header names from HttpAbstractions
Closes aspnet/Home#2319

This will use constants defined in HeaderNames class instead of hard coded strings.
2018-02-03 01:24:56 +05:30
Javier Calvarro Nelson fe3d4f0d8b Merge branch 'release/2.1' into dev 2018-02-02 10:33:03 -08:00
Javier Calvarro Nelson 1ea32bd569
[Fixes #283] Updates vs-2017.3.host.json to include the HTTP port 2018-02-02 10:32:19 -08:00
N. Taylor Mullen 64f9474eb1 Change RazorCodeDocumentProvider to not be per-workspace.
- Changed the `RazorCodeDocumentProvider` and its `TextBufferCodeDocumentProvider` dependency to be MEF services. This changes their lifetimes from per-workspace to per-IDE.
- Updated `RazorDirectiveCompletionProvider` to get the code document provider via MEF instead of the old primary workspace".
- Removed language service factory types.

#2007
2018-02-01 17:59:23 -08:00
Artak Mkrtchyan 8b0c6a825f Addressed review comments 2018-02-01 16:15:46 -08:00
Andrew Stanton-Nurse b61dc35ee6
fix #1199 by suppressing ODE in received callback (#1395) 2018-02-01 15:08:52 -08:00
John Luo 1c31731d89 Merge branch 'release/2.1' into dev 2018-02-01 15:01:46 -08:00
N. Taylor Mullen fff1c01aa0 Add Mac implementation of VisualStudioWorkspaceAccessor new APIs.
- The Mac implementation does not have fallback logic like the windows variant because Workspaces in VS mac world are spun up / torn down regularly. We don't want to be tracking down bugs that involve us adding services or Razor logic to Workspaces that have nothing to do with Razor.
- Added a test for the `DefaultVisualStudioWorkspaceAccessor`. Could not add other tests due to limitations of MonoDevelop's abstractions.

#1989
2018-02-01 14:51:23 -08:00
N. Taylor Mullen 6d2460ae7f Update DefaultRazorEditorFactoryService to be per-workspace.
- Updated the a `VisualStudioWorkspaceAccessor` API in windows to enable the factory to retrieve a workspace given a text buffer.
- Added a way to add test services to `AdhocWorkspace` so we can test against services being retrieved from a `Workspace`. This will be much more common once we rely on services coming from `TextBuffer`s in our other tooling pieces.
- Added tests for the default workspace provider.

#1989
2018-02-01 14:51:23 -08:00
N. Taylor Mullen 5e454a36fa Change TextBufferProjectService to not be per-workspace.
- Updated impacted code to now expect this from MEF.

#1997
2018-02-01 14:51:23 -08:00
John Luo bd9e53015d Merge branch 'release/2.1' into dev 2018-02-01 14:48:34 -08:00
Hao Kung c0b8be58ba
Add scheme forwarding (authN policies) (#1625) 2018-02-01 14:40:56 -08:00
Ryan Nowak 818d4256aa Fix #1999
The fix for this for preview1 is to ignore any files with an absolute path. MvcPrecompilation
ignores files outside the project root, and we're aiming for parity.

This will have a proper fix in preview2
2018-02-01 13:05:45 -08:00
John Luo 94cfac8ec6 Use Microsoft.AspNetCore.App in templates
- Add BrowserLink and Sqlite for Razor and StarterWeb templates when required
- Add tests for LocalDB scenarios
2018-02-01 12:52:05 -08:00
John Luo e4e837fa24 Flatten dependencies of Microsoft.AspNetCore.All metapackage
Remove BrowserLink from Microsoft.AspNetCore.App
Remove version locking in .All metapackage
2018-02-01 11:51:27 -08:00
Nate McMaster 864ee50b4c Merge branch 'release/2.1' into dev 2018-02-01 10:40:07 -08:00
Nate McMaster 2233481d34 Ensure all packages are included in ArtifactInfo 2018-02-01 10:24:07 -08:00
Hossam Barakat 9119433ab7 Add the middleware name to the exception message UseMiddlewareNoInvokeMethod (#993)
Addresses #927
Addresses aspnet/Home#2692
2018-02-01 06:22:08 -08:00
Artak Mkrtchyan dea3eb7856 Not instantiating the RequestHeaders and not relying on TypedHeaders to parse AcceptCharset 2018-01-31 17:20:29 -08:00
Jass Bagga 930664de6e
Add INFO level logging (#7314)
Addresses #7171
2018-01-31 16:57:49 -08:00
David Fowler 6b095cf533
Allow overriding the hosting service provider (#1325)
- Use the IServiceProviderFactory<IServiceCollection>
- Assert creation and disposal service providers
- Updated the tests to verify that service providers are created and disposed
- Called CreateBuilder even in the default case in case the service collection is modified as part of it.
2018-01-31 16:03:40 -08:00
David Fowler f8d61a4c52
Dispose the host if Initialize fails (#1324) 2018-01-31 16:00:55 -08:00
BrennanConroy 8cecca07a2
Fix race in Restart during Close task (#1263) 2018-01-31 15:51:33 -08:00
Pranav K 8978907aac Merge remote-tracking branch 'origin/release/2.1' into dev 2018-01-31 13:59:39 -08:00
Pranav K aa92069287 Remove Razor.Design reference 2018-01-31 11:58:34 -08:00
Mikael Mengistu e8d69911fd
Adding Http2 headers to HeaderNames class (#992) 2018-01-31 11:55:43 -08:00
Mikael Mengistu b85d69c882
Merge release/2.1 - Add support for REQUEST_METHOD server variable 2018-01-31 11:47:08 -08:00
Mikael Mengistu f2676babd3
Add support for REQUEST_METHOD server variable (#294) 2018-01-31 10:41:28 -08:00
N. Taylor Mullen 99010aaea4 Change EditorSettingsManager to not be per-workspace.
- Lifted `DefaultEditorSettingsManagerInternal`s state / event handling functionality into its `DefaultEditorSettingsManager`.
- Re-purposed `EditorSettingsManagerInternal` into a less-API heavy middleman `WorkspaceEditorSettings` for any workspace services concerned with editor settings to consume.
- Moved `DefaultEditorSettingsManagerInternal` into the Editor.Razor assembly and renamed it to `DefaultWorkspaceEditorSettings` since it needed the `EditorSettingsManager` API to function properly. The contract still exists at the `CodeAnalysis.Razor.Workspace` level.

#1982
2018-01-30 16:01:55 -08:00
Ajay Bhargav Baaskaran 9244383ec7 Modified integration test infrastructure to test build server 2018-01-30 15:55:17 -08:00
Jass Bagga ba0abd2285
Add missing bootstrap and js min files to RazorPages template (#269)
Addresses #217
2018-01-30 14:09:03 -08:00
Pranav K aa509316c8 Make Razor.Sdk a build time dependency 2018-01-30 12:27:32 -08:00
John Luo 4c79a2fe59 Merge branch 'release/2.1' into dev 2018-01-30 12:04:18 -08:00
Kiran Challa 0215740183 [Fixes #5859] Consider allowing binding header values to types other than string and string collections 2018-01-30 11:47:16 -08:00
David Fowler 6cd313fcfa
Revert "Change MiddlewareFactory to type activate IMiddleware as a fallback (#988)" (#991)
This reverts commit 44d5bf074f.
2018-01-30 10:28:52 -08:00
Pavel Krymets ddf3e948ad Merge release/2.1 2018-01-30 09:54:23 -08:00
Pavel Krymets 9482b4976e Merget release/2.1 2018-01-30 09:48:13 -08:00
Pavel Krymets 261b5836c1 Merge release/2.1 2018-01-30 09:39:33 -08:00
Mikael Mengistu e214d5cdfa Reduce LongPolling timeout to accommodate Cloudflare's timeout (#1368)
* Reduce LongPolling timeout to accommodate Cloudflare's timeout
2018-01-29 23:55:08 -08:00
John Luo 818bb50e43 Update metapackages
.All will include all assets from .App

.All and .App will check TFM compatibility during inner builds

Remove unused runtime store templates
2018-01-29 17:40:19 -08:00
N. Taylor Mullen c0cb8f009c Update RazorProjectEngine to use RazorConfiguration.
- In this PR we do away with `CreateDesignTime` on the `RazorProjectEngine`. Instead we now have an overload that takes in a configuration and does the right thing.
- Updated `RazorProjectEngineBuilder` to have a configuration.
- Updated `RazorConfiguration` to only have a `Default`. Setting up a razor configuration for design time now requires calling code to construct the configuration manually.
2018-01-29 16:08:17 -08:00
N. Taylor Mullen 80f943caef Flow RazorLanguageVersion to RazorEngine.
- Restructured RazorLanguageVersion to be a sealed concrete type to enable things like `RazorLanguageVersion.Latest`; it also allows us to make broader changes in the future. Also, in the future if we want to add support for overriding operators to enable greater than comparisons we can as well.
- Removed version validity checks because we restrict who can construct a `RazorLanguageVersion` now. This way we don't have to check for valid versions all throughout our code.
- Added a simple `ProjectExtensibilityConfiguration` => `RazorLanguageVersion` method in the `DefaultProjectExtensibilityConfigurationFactory` to temporarily enable letting the system operate on the `RazorLanguageVersion`. Eventually that entire class will change.

#1961
2018-01-29 16:08:17 -08:00
Pavel Krymets ac9db5dc7b
React to pipeline changes (#1365) 2018-01-29 14:36:03 -08:00
Pavel Krymets bc1a60704b
React to pipeline changes (#570) 2018-01-29 14:35:22 -08:00
Pavel Krymets a84095e5c3
React to pipelines changes (#2275) 2018-01-29 14:34:48 -08:00
David Fowler 8ea181f088
Use the OnWriterCompleted and OnReaderCompleted events directly. (#2280) 2018-01-29 14:27:47 -08:00
Jass Bagga e8816350ef
Add namespace for SignedOut.cshtml.cs (#266)
Addresses #205
2018-01-29 14:03:14 -08:00
Pranav K c24b577175 Merge remote-tracking branch 'origin/release/2.1' into dev 2018-01-29 13:54:35 -08:00