Commit Graph

1030 Commits

Author SHA1 Message Date
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
James Newton-King d367bdc9aa
Remove message content from JS client logging (#1694) 2018-03-23 17:24:51 +13:00
BrennanConroy a47e1051e8
Add protocol version to handshake (#1666) 2018-03-22 15:54:35 -07:00
BrennanConroy 6d642ea5ce
Move Typescript client folder (#1692) 2018-03-22 15:47:08 -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
Mikael Mengistu b5c46f35b3
Check for actual start in SSE (#1681) 2018-03-22 19:03:48 +00: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
James Newton-King 3f84eee116
Detect availability of web sockets on client and server (#1682) 2018-03-22 12:35:31 +13:00
Andrew Stanton-Nurse 71c2ddd155
Fix #1575 by removing use of Map (#1671) 2018-03-21 10:11:18 -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
BrennanConroy e889175c0e
Properly wait for process exit for docker helper and log errors (#1667) 2018-03-21 09:21:33 -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
Andrew Stanton-Nurse a2764109b0
clean up test output (#1656) 2018-03-20 17:23:34 -07:00
BrennanConroy 24f07ce791
Fix LongPolling retry after poll timeout (#1654) 2018-03-20 14:51:00 -07:00
Pranav K 88b1cff273 No-op signalr dotnet-ci builds 2018-03-20 12:06:25 -07:00
Pranav K 7606ae42d6 Revert "Remove dotnet-build scripts"
This reverts commit 9992e48c60.
2018-03-20 12:06:25 -07:00
David Fowler 885679c8bd
Made HubEndPoint derive from EndPoint (#1658)
* Made HubEndPoint derive from EndPoint
2018-03-20 08:31:35 -07:00
BrennanConroy b91499b2fc
Cleanup rogue timeout in TS client (#1653) 2018-03-19 22:01:52 -07:00
BrennanConroy 473e578efc
Fix CORS on TS Client (#1652) 2018-03-19 22:01:28 -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
Andrew Stanton-Nurse 71fd4ffd8a
fix #1542 by removing browser field (#1625) 2018-03-19 20:22:18 -07:00
Pranav K 9992e48c60
Remove dotnet-build scripts 2018-03-19 17:31:38 -07:00
Pranav K 85b12e9fa1
Enable dotnet-build bot 2018-03-19 12:31:55 -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 cc0d0e21e4 Revert package-lock.json changes 2018-03-18 15:20:19 -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
Mike Harder 881703e4c0
Upgrade Microsoft.NET.Test.Sdk to 15.6.1 (#1627) 2018-03-16 16:56:52 -07:00
BrennanConroy db0dc0f960
Ignore writeasync failures when sending to multiple connections (#1589) 2018-03-16 16:48:05 -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
Pranav K ea1dc99419
Update KoreBuild channel 2018-03-16 12:34:18 -07:00
BrennanConroy c640f422e0
Pascal case formatted log parameter names (#1615) 2018-03-16 12:13:27 -07:00
BrennanConroy 9839e6b07b
Perf in MessageParsers (#1616) 2018-03-16 11:40:15 -07:00
Pranav K 1eb64712fb
Branching for 2.1.0-preview2 2018-03-16 11:17:18 -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
Mike Harder b0e5483a5c Update .gitattributes to workaround npm changing line endings (#1610) 2018-03-15 19:41:57 -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 d27844dfef
ConnectionMetadata is now ConnectionItems (#1604)
* ConnectionMetadata is now ConnectionItems
2018-03-14 20:57:40 -07:00
Andrew Stanton-Nurse 2b68db873a
add AddRedis overload that takes connection string (#1588) 2018-03-14 16:24:28 -07:00
Andrew Stanton-Nurse c5d38ae32a
Run browser functional tests in CI builds (#1487) 2018-03-14 15:59:56 -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
Andrew Stanton-Nurse bc6ed02b6e
fix the umd build of msgpack (#1600) 2018-03-14 13:40:27 -07:00
BrennanConroy a3886057d5
Add benchmark application to our repo (#1579) 2018-03-14 09:28:50 -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
Andrew Stanton-Nurse 4fe4757b4a
fix package-lock.json files (#1592) 2018-03-13 18:55:56 -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 adb760210d
Minimal reaction to proto abstractions changes (#1583)
- Doesn't consume new feature interfaces yet.
2018-03-13 10:24:08 -07:00