Commit Graph

40 Commits

Author SHA1 Message Date
John Luo 2dc1858f90 Merge branch 'release/2.1' into dev 2018-03-23 16:02:42 -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
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
Stephen Halter 5fa658c800
Never run continuation inline in SocketAwaitable.OnCompleted (#2407) 2018-03-19 17:29:49 -07:00
Ryan Brandenburg 3584e5f2ab Set 2.0 baselines 2018-03-16 10:50:05 -07:00
Javier Calvarro Nelson acf7584d13 Reenable API Check 2018-03-15 21:44:34 -07:00
David Fowler 181dc0de24 React to pipelines changes 2018-03-15 16:58:53 -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
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
Stephen Halter 71bff00c0d
Use LibuvThread inspired IO Queue in Socket transport (#2368) 2018-03-09 15:04:20 -08:00
Pavel Krymets fc80c15a65
Update to new corefx (#2369) 2018-03-08 14:23:07 -08:00
Pavel Krymets 2c108d9ba1
React to pipes in corefx (#2337) 2018-02-28 12:41:51 -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
Mike Harder 4afaa386db
Remove unnecessary usings (#2326) 2018-02-16 14:04:16 -08:00
Pavel Krymets 261b5836c1 Merge release/2.1 2018-01-30 09:39:33 -08:00
Pavel Krymets a84095e5c3
React to pipelines changes (#2275) 2018-01-29 14:34:48 -08:00
David Fowler 50b396cec6
Fixed race in sockets transport (#2279)
- Based on the changes you made earlier (f4d27e6), we trigger OnConnectionClosed before the socket is disposed in the SocketTransport. This moves the call to Output.Complete to happen after and thus fixes the race.
2018-01-29 12:41:45 -08:00
Pavel Krymets 1fa001e7db
React to pipeline changes (#2234)
React to pipeline changes
2018-01-04 09:54:42 -08:00
BrennanConroy 95dc8824c3
Upgrade package references and react to corefx API changes (#2212) 2017-12-11 09:02:37 -08:00
David Fowler a1d75df47d Use new Memory<byte> APIs on SocketAsyncEventArgs (#2173)
- This should improve the performance of handling buffers by (eventually)
removing GCHandle churn for Kestrel's already pinned buffers.
- Made the Sockets transport target both netcoreapp2.1 and netstandard2.0 to use new
APIs
- Disable API check for the sockets transport
2017-11-20 11:36:09 -08:00
Stephen Halter 67fc879c54
Null out send buffer less (#2164) 2017-11-17 12:41:35 -08:00
Pavel Krymets 73a37363e1
Migrate to new pipe APIs (#2124) 2017-11-13 15:04:54 -08:00
Stephen Halter 238da2742d
Use SocketAsyncEventArgs to improve perf (#2147) 2017-11-07 14:43:14 -08:00
Nate McMaster 6c82f78c65 Pin tool and package versions to make builds more repeatable
Part of aspnet/Universe#575
2017-11-01 15:18:49 -07:00
Stephen Halter 0c34523e8b
Log exception after critical accept loop error (#2140) 2017-10-31 11:09:11 -07:00
Tom Deseyn eeb49c2af7 Pass setsockopt fd as int (#2136) 2017-10-26 11:40:52 -07:00
Stephen Halter c3ba875d12 Better handle Socket transport accept errors (#2133)
* More reliably swallow accept errors during shutdown
* Handle and log connection reset errors thrown from accept
* Don't trace errors for server-aborted connections
2017-10-25 12:58:00 -07:00
Andrew Stanton-Nurse 7d205d1093 add event names to Logging messages (#2132) 2017-10-25 11:27:05 -07:00
Stephen Halter c57aa3b2a8 Treat more exceptions from Socket.ReceiveAsync as aborted connections (#2122) 2017-10-18 12:40:37 -07:00
Stephen Halter 66a3c9496a Set SO_REUSEADDR on managed listen sockets on Unix (#2111)
- https://github.com/dotnet/corefx/issues/24562
2017-10-12 12:26:52 -07:00
Stephen Halter fdb4184dbf Sockets transport (#2100)
* Make Sockets the default transport
* Create separate Libuv and Sockets functional test projects
* Fix functional tests that fail with Sockets
* Moved OneToTenThreads test to Kestrel.Transport.Libuv.Tests
* Fix systemd activation tests to use libuv transport
* Dispose Sockets PipeFactory
* Improve Socket's server-side abort handling
* Add explicit rebinding test
2017-10-11 15:14:35 -07:00
Javier Calvarro Nelson eb9417b577 Re-enable API Check 2017-09-25 15:16:53 -07:00
David Fowler 7854c0604a Remove the events on ConnectionContext (#2023)
- Use the pipe events and removed the Tasks from ConnectionContext
- Remove OnConnectionClosed from FrameConnection. Since the `FrameConnetion` is a single middleware, not the entire pipeline, we shouldn't need to wait on the connection close there.
- It seems like the callbacks are rooted on the pipe even after they fire. This needs to be investigated in pipelines.
2017-08-26 20:19:55 -07:00
David Fowler 2e6687031d Added initial connection middleware pipeline (#2003)
* Added initial connection middleware pipeline
- Implemented IConnectionBuilder on ListenOptions. Kept IConnectionAdapter for now.
- Delay the configure callback for ListenOptions until the server has started.
- Added ConnectionLimitMiddleware and HttpConnectionMiddleware
- Expose ConnectionAborted and ConnectionClosed on ConnectionContext and
IConnectionTransportFeature
- Updated the tests
- Removed IConnectionApplicationFeature
- Moved Application to IConnectionTransportFeature
2017-08-21 12:11:27 -07:00
Nate McMaster 26f1d4baa3 Use PackageLineup
PackageLineup is a way to manage PackageReference versions across large projects. It removes the version information from the repository and instead pulls the information from an external "lineup" file.
2017-08-16 14:10:43 -07:00
David Fowler 5c775073a4 Initial bedrock refactoring (#1995)
- Added Protocols.Abstractions
 - IConnectionHandler.OnConnection takes an IFeatureCollection instead of
 IConnectionInfo
 - Removed IConnectionContext and IConnectionInformation replaced with
 IConnectionTransportFeature
 - Updated FrameConnectionContext and FrameContext to have the relevant
 state instead of flowing the ConnectionInformation.
 - Updated tests
2017-08-16 00:02:48 -07:00
Pavel Krymets 659fa967a1 Consume corefxlab packages and private build of C# compiler (#1976) 2017-08-07 13:58:19 -07:00
Nate McMaster 6584a8b5fd Shorten folder names
Remove the Microsoft.AspNetCore.Server prefix from csproj and their folders. This is required to help us avoid max path issues on Windows.
2017-07-28 11:11:55 -07:00