Commit Graph

648 Commits

Author SHA1 Message Date
James Newton-King 7625bbcb6c
Add HubConnection.State (#2204) 2018-05-14 19:23:00 +12:00
James Newton-King 023e61495f
Test combining multi-byte character writes with individual chars (#2238) 2018-05-10 17:38:19 -07:00
BrennanConroy 7916f95235 Merge branch 'release/2.1' into dev 2018-05-10 16:54:26 -07:00
BrennanConroy 4b1fb58a8a
Throw error on unexpected close (#2205) 2018-05-10 16:38:21 -07:00
James Newton-King db33d593f0
Gracefully handle disposing while writing (#2180) 2018-05-09 17:57:56 -07:00
BrennanConroy f09b0e13d9
Upgrade to netcoreapp2.2 and remove netcoreapp2.0 testing (#2221) 2018-05-09 09:59:02 -07:00
Mikael Mengistu 62d892315b
Merge pull request #2224 from aspnet/release/2.1
Use params passed into HubConnectionBuilder (#2223)
2018-05-07 21:44:04 -07:00
Mikael Mengistu 6f6382799b
Use params passed into HubConnectionBuilder (#2223) 2018-05-07 18:19:20 -07:00
James Newton-King da7a95f563
Handle null collections when writing NegotiateResponse (#2202) 2018-05-04 16:08:06 -07:00
Andrew Stanton-Nurse 6429e8e8ea
Merge pull request #2198 from aspnet/release/2.1
fix #2187 by passing min size through to buffer writer when encoding (#2190)
2018-05-03 19:10:42 -07:00
Andrew Stanton-Nurse b492dbe5d1
fix #2187 by passing min size through to buffer writer when encoding (#2190) 2018-05-03 19:10:15 -07:00
Andrew Stanton-Nurse 622e133a8a
fix #2134 by disposing httpconnection if start fails (#2137) (#2188) 2018-05-02 13:10:58 -07:00
James Newton-King 9f40bd639f
Merge pull request #2186 from aspnet/release/2.1
Fix not setting HttpConnection.ConnectionId (#2154)
2018-05-01 23:01:20 -07:00
James Newton-King 41c8dcf449
Fix not setting HttpConnection.ConnectionId (#2154) 2018-05-01 21:48:57 -07:00
James Newton-King 914d32b049
Fix merge 2018-05-01 18:06:11 -07:00
James Newton-King 49cdaad6d6
Merge pull request #2185 from aspnet/release/2.1
Fix not detecting marker service (#2149)
2018-05-01 17:42:39 -07:00
James Newton-King 555c1fd720
Fix not detecting marker service (#2149) 2018-05-01 17:42:00 -07:00
Andrew Stanton-Nurse 2a236193da
Merge pull request #2184 from aspnet/release/2.1 2018-05-01 16:37:54 -07:00
Andrew Stanton-Nurse d711916ad6
fix #2140 by ensuring the access token flows to WebSocketTransport (#2173) 2018-05-01 16:14:24 -07:00
James Newton-King c714a81624
Add connection id to sink log for unit tests (#2085) 2018-04-30 16:51:17 -07:00
David Fowler c53514fa19
Don't throw from AbortAsync (#2166)
- Log from inside of HubConnectionContext if the user callback failed.
- Use ThreadPool.QUWI instead of Task.Factory.StartNew.
- Remove try catch from HubConnectionHandler
2018-04-30 09:22:48 -07:00
Andrew Stanton-Nurse bd46d757ba
fix #2134 by disposing httpconnection if start fails (#2137) 2018-04-23 12:38:37 -07:00
BrennanConroy 1c9607a1ed
Verify Verifiable spelling (#2114) 2018-04-22 21:33:57 -07:00
Andrew Stanton-Nurse d5f62f7b5a
Merge pull request #2122 from aspnet/release/2.1
CancellationToken EVERYWHERE (#2101)
2018-04-20 16:22:16 -07:00
Andrew Stanton-Nurse 47eafca4d8
CancellationToken EVERYWHERE (#2101) 2018-04-20 16:21:51 -07:00
Andrew Stanton-Nurse 36f05d42f5
Merge pull request #2118 from aspnet/release/2.1
Release/2.1
2018-04-20 13:49:53 -07:00
Andrew Stanton-Nurse 058830c9df
fix #2116 by requiring task return values from typed client (#2117) 2018-04-20 13:49:12 -07:00
BrennanConroy e6011ef69b
Use custom group names in tests to not collide with other tests running (#2102) 2018-04-20 09:26:26 -07:00
BrennanConroy 1e65802109 Merge branch 'release/2.1' into dev 2018-04-20 08:53:15 -07:00
BrennanConroy 9101ab636b
Always check for WebSockets close (#2100) 2018-04-20 08:21:04 -07:00
James Newton-King 5516a969e3
Change Hub and friends to abstract (#2108) 2018-04-20 20:53:01 +12:00
Andrew Stanton-Nurse ace9a0d414
fix #2097 by adding GetHttpContext to HubConnectionContext (#2099) 2018-04-19 19:14:39 -07:00
BrennanConroy 8571769f2f Merge branch 'release/2.1' into dev 2018-04-19 17:00:59 -07:00
BrennanConroy 1957655653
Run hub invocations serially (#2086) 2018-04-19 16:59:06 -07:00
Andrew Stanton-Nurse bea09f5f94
Merge pull request #2104 from aspnet/release/2.1
fix #2078 by adding locking (#2079)
2018-04-19 15:32:27 -07:00
Andrew Stanton-Nurse 6b6d890c8f
fix #2078 by adding locking (#2079) 2018-04-19 15:32:04 -07:00
James Newton-King da94e984ce
Merge pull request #2090 from aspnet/release/2.1
Global suppress low impact logging verification in tests (#2089)
2018-04-19 17:46:11 +12:00
James Newton-King ad52ba7316
Global suppress low impact logging verification in tests (#2089) 2018-04-19 16:50:02 +12:00
BrennanConroy f36313e585
Merge pull request #2088 from aspnet/release/2.1
Split lock into WriteLock and StateLock to prevent deadlocks and unne…
2018-04-18 17:45:08 -07:00
BrennanConroy e9937ffb66
Split lock into WriteLock and StateLock to prevent deadlocks and unneeded lock contention (#2081) 2018-04-18 17:44:05 -07:00
David Fowler 9a0c190f48
Merge pull request #2082 from aspnet/release/2.1
Added support for negotiate response to redirect the client to anothe…
2018-04-18 14:51:55 -07:00
David Fowler 903fe1e902
Added support for negotiate response to redirect the client to another SignalR endpoint (#2070)
- Add a SkipNegotiation flag to the .NET and ts client
to allow skipping the negotiation phase. Don't infer it based on the transport type.
-  Updated the negotiate protocol to support returning a redirect url
- Added support to .NET client to handle redirect negotiations
- Handle poorly written endpoints that sends infinite redirects
- Added access token support and an infinite redirect guard
- Add delete handler for stopping the transport
2018-04-18 14:22:45 -07:00
Andrew Stanton-Nurse ba75e5fdf7 Merge branch 'release/2.1' into dev 2018-04-18 09:08:52 -07:00
Andrew Stanton-Nurse b4046b5ed8
Fix #1989 by adding a 'binding failure' pseudo-message (#2064) 2018-04-17 20:08:07 -07:00
James Newton-King 61cce236fc
Derp 2018-04-18 10:37:23 +12:00
James Newton-King 0f0b9a73c1
Logger thread safety? 2018-04-18 10:13:12 +12:00
Mike Harder e19079bd50
Remove unused dependency on Microsoft.AspNetCore.Server.IntegrationTesting (#2062) 2018-04-17 12:18:34 -07:00
James Newton-King 707d79d3a1
Comment 2018-04-17 21:28:06 +12:00
James Newton-King 9f526b74af
This time? 2018-04-17 21:09:16 +12:00
James Newton-King 259dd04c99
Fix weird NRE 2018-04-17 20:58:18 +12:00
James Newton-King 8985fee4b5
Merge 2018-04-17 20:39:19 +12:00
David Fowler 05d6bbb782
Flush first long poll immediately (#2032)
There was a race condition between the first poll and any other http request that was sent. 
In particular, if you called StartAsync then StopAsync it was possible for the delete to happen before the poll started leading to 400 errors. This change fixes that by making the very first poll
return immediately so that the client can use that to determine if there was an error connecting.
2018-04-17 00:49:26 -07:00
James Newton-King 8241acf3a1
Boop 2018-04-17 18:00:04 +12:00
James Newton-King 818497de64
Improvements 2018-04-17 16:57:55 +12:00
Andrew Stanton-Nurse c05c5a6b2a
React to aspnet/KestrelHttpServer#2496: make IConnectionInherentKeepAliveFeature a boolean feature (#2041) 2018-04-16 11:34:12 -07:00
David Fowler a5d9930802
API review changes (#2043)
- Make SerializedHubMessage and SerializedMessage
public
- Made HubConnectionStore public
- Move SendUtils and Utils to the internal folder
- Make Microsoft.AspNetCore.Http.Connections.Common/Internal public.
- Move InvocationRequest to internal folder
2018-04-16 10:31:10 -07:00
David Fowler 680b51ed6c
Skip failing test (#2042) 2018-04-16 10:24:14 -07:00
James Newton-King b5d5f11ef8
Rename excludedIds to excludedConnectionIds (#2037) 2018-04-16 18:03:16 +12:00
James Newton-King 0da06fb5d2
Microsoft.AspNetCore.SignalR.Redis API review (#2036) 2018-04-16 15:56:49 +12:00
James Newton-King b3a9011698
API review changes for Microsoft.AspNetCore.SignalR (#2033) 2018-04-16 15:54:42 +12:00
James Newton-King 6eac7049ba
Update text and binary formatter helpers to be shared (#2035) 2018-04-16 15:19:34 +12:00
James Newton-King fbb13c4c1f
Improve response status logging 2018-04-16 09:38:47 +12:00
James Newton-King aec323d8d2
Clean up 2018-04-16 09:03:01 +12:00
James Newton-King 75ade2d674
y u no log? 2018-04-16 08:48:58 +12:00
James Newton-King 64f52d1098
y u no log? 2018-04-16 08:33:19 +12:00
James Newton-King 0a5dd8f6d3
Fix tests 2018-04-15 20:26:54 +12:00
James Newton-King 5a64429fd5
Improvements! 2018-04-15 20:21:45 +12:00
James Newton-King 5b188018f0
Log level 2018-04-15 19:56:46 +12:00
James Newton-King 1d900fe139
More logging! 2018-04-15 19:19:24 +12:00
James Newton-King 81b593fdbe
More logging! 2018-04-15 19:18:36 +12:00
James Newton-King 25aea395da
ah-ha! 2018-04-15 19:10:37 +12:00
James Newton-King 725bb33949
Lazy initialize HttpConnectionContext.Items (#2027) 2018-04-15 19:06:13 +12:00
James Newton-King 585bcc3ee0
How about this? 2018-04-15 19:02:56 +12:00
James Newton-King 05739820d2
Test 2018-04-15 18:40:53 +12:00
James Newton-King a13f3f4765
Clean up 2018-04-15 17:11:09 +12:00
James Newton-King 89922a399f
Capture server logs in tests 2018-04-15 14:43:56 +12:00
James Newton-King ddc905c219
Add VerifyNoErrorsScope (#1972) 2018-04-15 11:12:21 +12:00
James Newton-King 377ed1b834
JsonHubProtocol and MessagePackHubProtocol version fields now private (#2023) 2018-04-15 09:58:05 +12:00
David Fowler 4fe41dc6d0
Increase timeout of test (#2021)
- Seems like it was possible for the server timeout to happen *before* the invocation happened.
- Added logging to the test
2018-04-14 05:05:49 -07:00
David Fowler d6395a52bc
Send delete request after poll ends (#2020)
* Added test and fixed other test
2018-04-14 04:45:16 -07:00
James Newton-King e4d0f2980e
Microsoft.AspNetCore.SignalR.Client refactor (#2000) 2018-04-14 21:09:41 +12:00
Andrew Stanton-Nurse c7f7f36210
API Review for Http.Connections (#2010) 2018-04-13 16:35:07 -07:00
Mikael Mengistu 623ab63091
HubConnectionTests.Helper Header (#2011) 2018-04-13 21:32:26 +00:00
Andrew Stanton-Nurse 499d39b364
rename MsgPack assembly only (#2005) 2018-04-13 12:01:45 -07:00
Andrew Stanton-Nurse 43e6ab750a
Fix #1927 by using Synchronous Callbacks everywhere. (#2003) 2018-04-13 11:38:03 -07:00
David Fowler 3e69fdc4ad
Delegate disposable to the IConnectionFactory (#1999)
- Added DisposeAsync to the IConnectionFactory. It's responsible for disposing the connection after the pipe has closed.
- Added dispose callback to WithConnectionFactory
- Don't wait for poll request to end before unwinding from the transport
- Make sure all http requests are done before returning from StopAsync in both SSE and longpolling
2018-04-13 09:16:23 -07:00
David Fowler abe139ee16
Make the protocol and messages public (#1994)
* Move types to a .Protocol namespace
2018-04-13 01:53:41 -07:00
James Newton-King 198013bfa3
Microsoft.AspNetCore.Http.Connections.Client refactors (#1995) 2018-04-13 20:13:58 +12:00
David Fowler 83dec1093a
Fixed flaky longpolling tests (#1993)
- Wait for disposal and removal of the connection
2018-04-13 00:42:31 -07:00
David Fowler 4a568e90d2
API review changes (#1992)
- Changed GetMessageBytes to return ReadOnlyMemory
- Make HandshakeProtocol.SuccessHandshakeData a readonly field
2018-04-13 00:25:02 -07:00
Mikael Mengistu 70c63fe9e8
Http.Connections.Client API Review changes (#1987) 2018-04-13 06:52:27 +00:00
Ahson Khan 0ee4a86564 Collapse AsSpan().Slice(..) into AsSpan(..) (#1991) 2018-04-12 23:15:47 -07:00
Mikael Mengistu 0053124ca4
Make Proxies Internal (#1982) 2018-04-13 00:38:16 +00:00
= d5a4d9b8c5 Update usage of TestSink 2018-04-12 16:58:19 -07:00
Andrew Stanton-Nurse 24328b8e88
fix #1281 by adding support for DELETE endpoint on server (#1925) 2018-04-12 12:39:08 -07:00
Andrew Stanton-Nurse 0992db9fd2
fix #1914 by switching RedisProtocol to MsgPack (#1968) 2018-04-12 12:10:51 -07:00
David Fowler 8b1a7e9199
API review feedback (#1974)
- Remove SetHttpContext
- Remove HttpContextFeature
- Add and implement IHttpTransportFeature on HttpConnectionContext
- Remove ConnectionMetadataNames
2018-04-12 03:50:14 -07:00
James Newton-King 1ae901de3d
Fix incorrect test for long poll and web sockets requests (#1971) 2018-04-12 18:21:05 +12:00
BrennanConroy c9ab30e150
Enable detailed errors for redis tests (#1962) 2018-04-11 15:14:34 -07:00
David Fowler 8cc851ff9b
Clean up timer code with custom awaitable (#1935)
- Gets rid of locks by using an event loop
2018-04-11 10:39:29 -07:00