Commit Graph

1051 Commits

Author SHA1 Message Date
Nate McMaster (automated) 7a428534c3
Update dependencies.props
[auto-updated: dependencies]
2018-03-28 11:04:33 -07:00
Mikael Mengistu c631b87c6d
Check for Websockets to fix flaky tests (#1740) 2018-03-28 00:49:37 -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
Mikael Mengistu 5b85e8309e
Adding File Header (#1741) 2018-03-27 21:54:11 -07:00
David Fowler 5cb9b887d4 Upgraded deps 2018-03-27 19:18:50 -07:00
Mikael Mengistu 3952eacfaa
Add ability to remove all handlers with just the method name (#1729) 2018-03-27 14:06:56 -07:00
David Fowler bc91191876
More benchmark command fixes 2018-03-27 13:26:55 -07:00
David Fowler df317cffca
Fixing benchmarks 2018-03-27 13:17:22 -07:00
David Fowler 185453908f
Remove HubConnectionContext parameter from IHubProtocolResolver (#1735) 2018-03-27 10:25:00 -07:00
BrennanConroy b7e2678592
Add new SignalR scenarios (#1730) 2018-03-27 10:14:08 -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 b78e70fadb
Use more pooled Utf8BufferTextReaders (#1728)
- Use it in the HandshakeProtocol
- Move CreateJsonTextReader to JsonUtils
2018-03-26 23:32:43 -07:00
Mikael Mengistu cc52beec17
Fallback for TS client 2018-03-27 00:18:36 +00:00
James Newton-King 79b51ad642
Added logging of .NET client HTTP requests (#1723) 2018-03-27 12:57:13 +13:00
David Fowler b8285b8356
Don't create the span on netstandard (#1721)
- Directly pin the char[]
- Changed Utf8BufferTextReader to use the Utf8Decoder
- It copies whatever it can into the char buffer allocated in a stateful way (it's more efficient).
- Added tests for unicode and ascii reading
- Added a thread static cache
2018-03-26 14:36:08 -07:00
David Fowler ddc0e4fb3a
Run benchmarks on .NET Core 2.1 (#1722)
- Spoiler alert, it's much faster for the ones I ran at least
2018-03-25 21:07:17 -07:00
David Fowler 65204ec6f2
Small changes (#1714)
- Don't allocate for empty arrays.
- Don't allocate the list of pre-serialized messages until writing
2018-03-25 12:38:51 -07:00
David Fowler 733a3b3c2d
Upgrade the dependencies (#1712) 2018-03-25 00:51:53 -07:00
James Newton-King 4f5bc7046e
Add conditional test attribute for WebSockets (#1709) 2018-03-25 18:53:49 +13:00
David Fowler cb05ce4e0b
Progress towards deleting Sockets.Abstractions (#1705)
* Progress towards deleting Sockets.Abstractions
- Moved our custom DefaultConnectionContext to Sockets.Http and renamed it to HttpConnectionContext.
- Renamed ConnectionManager to HttpConnectionManager
- Use DefaultConnection in tests and benchmarks
- Delete ConnectionMetadata
2018-03-24 04:21:47 -07:00
Andrew Stanton-Nurse a9667c3fbd
issue template (#1701) 2018-03-23 12:29:09 -07:00
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