Commit Graph

596 Commits

Author SHA1 Message Date
Mikael Mengistu 7c2d9e87e9
Clean up pipe pair on transport start failure (#1836) 2018-04-03 17:08:04 -07:00
Mikael Mengistu ba0131a731
Rename TransportTypes to HttpTransportTypes (#1839) 2018-04-03 16:00:20 -07:00
Pavel Krymets d23f2beafc
Merge release/2.1 into dev (#1834) 2018-04-03 10:45:44 -07:00
BrennanConroy 221c95e0af Couple logging additions (#1827)
- Added logging in a couple more places in HubConnection
- Increase DEFAULT_TIMEOUT_INTERVAL to 20 seconds
2018-04-02 19:25:47 -07:00
James Newton-King 3460d44848
Fix non-serializable tests (#1820) 2018-04-03 09:31:52 +12: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
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
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
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
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
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
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
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 6b3a27e73c
Bedrock Renames (#1777) 2018-03-30 15:09:19 -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
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 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
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
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
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
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
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
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
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
David Fowler dcd773d10d Merged release/2.1 2018-03-27 03:03:10 -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 434147fe8e Merge branch 'release/2.1' into dev 2018-03-27 00:00:13 -07:00