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
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
BrennanConroy
6fcf554c23
Fix flaky SSE test ( #1279 )
2018-02-15 09:56:02 -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
BrennanConroy
d9b32ee323
Logging invocations with errors would throw inside logger ( #1445 )
2018-02-13 14:57:21 -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
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
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
Andrew Stanton-Nurse
0435b6dc6e
add headers and revamp msgpack tests ( #1382 )
2018-02-07 09:36:29 -08:00
Andrew Stanton-Nurse
b61dc35ee6
fix #1199 by suppressing ODE in received callback ( #1395 )
2018-02-01 15:08:52 -08:00
BrennanConroy
8cecca07a2
Fix race in Restart during Close task ( #1263 )
2018-01-31 15:51:33 -08:00
Pavel Krymets
9482b4976e
Merget release/2.1
2018-01-30 09:48:13 -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
Pavel Krymets
ac9db5dc7b
React to pipeline changes ( #1365 )
2018-01-29 14:36:03 -08:00
BrennanConroy
96a3a03de8
Fix incorrect content-type ( #1347 )
2018-01-25 10:38:27 -08:00
BrennanConroy
67c76287ed
Return stream method error to client ( #1331 )
...
* Return correct error to client from failing stream method
2018-01-24 09:08:27 -08:00
Mikael Mengistu
40e906f23a
Expose IHttpConnectionFeature properties ( #1338 )
2018-01-23 18:25:53 -08:00
BrennanConroy
b088eaa91f
Rename JwtBearer to AccessToken in C# Client ( #1333 )
2018-01-22 16:05:51 -08:00
BrennanConroy
a449345436
Clean up logging ( #1308 )
2018-01-22 09:37:53 -08:00
BrennanConroy
d38764a8f0
Rename InvokeAsync to SendAsync on the server ( #1312 )
2018-01-19 11:32:50 -08:00
BrennanConroy
dfe0697f06
EventId starts at 1 for logging ( #1318 )
2018-01-18 16:11:43 -08:00
Pawel Kadluczka
68aa609650
Setting ContentType in the HTTP responses ( #1149 )
...
* Also making auth test work in IE
2018-01-16 11:28:20 -08:00
Andrew Stanton-Nurse
7c635fae56
remove System.IO.Pipelines.Extensions dependency and internalize code ( #1288 )
2018-01-11 14:10:29 -08:00
Josh Williams
0311f9b415
Throw InvalidDataException instead of FormatException in NegotationProtocol ( #1246 )
...
* Throw InvalidDataException instead of FormatException in NegotationProtocol
- Modify NegotiationProtocol to throw InvalidDataException
- Update NegotiationProtocolTests expectations
- Remove test case for InlineData "Missing required property 'protocol'"
- Update JsonHubProtocol & JsonUtils to throw InvalidDataException
- Update corresponding test expectations
- Add back removed test
Addresses #1203
2018-01-11 13:23:30 -08:00
Andrew Stanton-Nurse
a9d643a93e
remove dependency on system.buffers.primitives ( #1287 )
2018-01-11 11:28:08 -08:00
Andrew Stanton-Nurse
144984e599
Split MsgPack into separate assembly ( #1274 )
2018-01-10 14:20:57 -08:00
Mikael Mengistu
89b532c985
Invoke Users ( #1257 )
2018-01-08 17:58:42 -08:00
Mikael Mengistu
8b34b7f2ae
Invoke Multiple Groups ( #1254 )
2018-01-05 13:57:19 -08:00
Mikael Mengistu
e1f9a65083
MultipleClients -> Clients ( #1269 )
2018-01-05 12:07:26 -08:00
Pavel Krymets
8a4adf1cb6
React to pipeline changes ( #1250 )
...
React to pipeline changes
2018-01-04 09:56:39 -08:00
BrennanConroy
d5d159eb5f
Lock around heartbeat handler ( #1264 )
2018-01-03 12:29:25 -08:00
Mikael Mengistu
6baee8b7a9
Refactor HubContext to not Implement IHubClients ( #1262 )
2018-01-02 17:26:10 -08:00
Mikael Mengistu
738617266e
Invoke Multiple Connections ( #1242 )
2017-12-21 15:19:43 -08:00
Andrew Stanton-Nurse
00a6dc983a
Fix #1170 by removing invocationId from non-blocking calls ( #1218 )
2017-12-19 10:40:58 -08:00
Mikael Mengistu
c8bd72be36
Others in Group ( #1230 )
2017-12-18 15:27:56 -08:00
Mikael Mengistu
eb2668e74e
AllExcept for Groups - GroupExcept ( #1204 )
2017-12-15 17:34:08 -08:00
Geovanny Alzate Sandoval
31ef3c49df
Makes MapHub and MapEndpoint consistent with other ASP.NET Core APIs using PathString. #1188
2017-12-13 09:14:36 -08:00
BrennanConroy
588d9cdb11
Use Utf8Parser instead of custom code ( #1200 )
2017-12-12 11:55:48 -08:00
Pawel Kadluczka
66ab939cff
Making HttpConnection restartable (C#) ( #1147 )
...
🎉
2017-12-12 10:08:42 -08:00
Mikael Mengistu
75e102f97a
Support for Others and Caller Client Subsets( #1192 )
2017-12-11 17:30:53 -08:00
Andrew Stanton-Nurse
a8330067c4
Implement #1157 by adding client timeout for C# client ( #1165 )
2017-12-07 14:54:41 -08:00