BrennanConroy
d9b32ee323
Logging invocations with errors would throw inside logger ( #1445 )
2018-02-13 14:57:21 -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
94155b0e89
Use protocol.abstractions primitives instead of socket abstractions ( #1432 )
2018-02-10 18:10:09 -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
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
a0c47c0c66
Increase ServerFixture startup timeout ( #1409 )
2018-02-06 08:41:16 -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
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
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
Mikael Mengistu
738617266e
Invoke Multiple Connections ( #1242 )
2017-12-21 15:19:43 -08:00
Mikael Mengistu
ac236efdae
Refactoring HubEndpointTests ( #1231 )
2017-12-19 15:01:49 -08:00
Andrew Stanton-Nurse
3bb71255d4
clean up HttpConnectionTests ( #1208 )
2017-12-19 11:12:39 -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
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
Andrew Stanton-Nurse
ae9c3cf04d
expand ping test expectations to avoid flakiness ( #1181 )
2017-12-05 10:46:12 -08:00
Andrew Stanton-Nurse
c1d2024864
Implement #1156 by having the server send Ping messages ( #1161 )
2017-12-04 14:43:27 -08:00
Andrew Stanton-Nurse
3005337a9c
fix #625 by implementing HubMethodNameAttribute ( #1173 )
2017-12-01 09:48:26 -08:00
Pawel Kadluczka
0bafb304c2
Adding support for JWT in the C# client
...
Fixes : #1018
(Bonus: also enabling passing headers)
2017-11-21 16:32:56 -08:00
Pranav K
439f2a7892
Update samples and tests to target netcoreapp2.1
2017-11-16 13:38:46 -08:00
Andrew Stanton-Nurse
cb3124be17
First pass at Keep Alive ( #1119 )
...
This adds the Ping message type and support for sending/receiving it in the Hub Protocols. It does not add the logic to transmit keep-alive frames.
2017-11-16 09:45:13 -08:00
BrennanConroy
3a8f512fa7
Couple more reaction changes for Hosting ( #1126 )
2017-11-15 13:31:17 -08:00
BrennanConroy
34b0445dd8
React to delayed Configure in Hosting ( #1118 )
2017-11-14 14:43:56 -08:00
BrennanConroy
ff43390ed2
[Redis] Add functional test support ( #1051 )
2017-11-14 09:32:14 -08:00
BrennanConroy
792745ad98
React to CoreFxLab packages ( #998 )
2017-11-13 15:05:35 -08:00
Pawel Kadluczka
ff12b9b20c
Replacing StreamCompletion with StreamInvocation
2017-11-13 10:50:15 -08:00
Mikael Mengistu
1a21fd49b1
Changing the Closed Event to be a Task ( #1080 )
2017-11-09 17:51:13 -08:00
Pawel Kadluczka
cc42b0eaef
Fixing a bug where cancellation could result in HubException
...
When the client cancels a streaming method the server would send an error completion. This was not correct because cancellation is not an error. We did not see this because our client ignores any messages for a given streaming invocation after sending a CancelInvokationMessage but other clients may want to drain messages before considering a streaming method canceled.
2017-11-01 20:20:43 -07:00
Nate McMaster
e15a38a14c
Pin package and tool versions to make build more repeatable
2017-11-01 16:40:51 -07:00
BrennanConroy
2419867dfc
Handle errors in Redis subscription callbacks ( #1069 )
2017-11-01 10:29:02 -07:00
Pawel Kadluczka
18f770e937
Late parameter binding ( #1049 )
...
Late parameter binding
Storing exception thrown during parameter binding and rethrowing when the method is about to throw. This allows completing invocations with a HubException and keeping the connection open.
We will also no longer close the connection if parameters for client side methods cannot be bound. We will log and continue.
Fixes : #818
(Also fixing #1005 because I was just touching this line)
2017-10-30 11:31:57 -07:00
Pawel Kadluczka
caff492cdc
Removing sending OPTIONS request if WebSocket transport requested ( #1036 )
...
Removing sending OPTIONS request if WebSocket transport requested
This removes session stickiness requirement for WebSockets
Fixes : #1035
2017-10-23 10:28:33 -07:00
Mikael Mengistu
5ffb082acb
Add Missing Await in Test ( #1045 )
2017-10-22 23:37:12 -07:00
Pawel Kadluczka
8d1d6d0300
Adding StreamCompletion message (C#)
2017-10-19 18:20:03 -07:00
Mikael Mengistu
04d4da2987
Replace Received Event with OnReceived ( #1006 )
2017-10-18 17:10:51 -07:00
BrennanConroy
0e70c7950b
Adding Redis Unit tests ( #1013 )
2017-10-17 15:48:29 -07:00
BrennanConroy
8701baf73d
Add negotiate timeout option to hub options ( #1003 )
2017-10-11 08:59:37 -07:00
BrennanConroy
de2e0967c3
Adding CancelInvocation message ( #979 )
...
* For Streaming only. And C# client only.
2017-10-06 15:55:39 -07:00
ivankarpey
665f166d67
fix issue with incorrect user detection when Invoking for User ( #747 )
...
* fix issue with incorrect user detection when Invoking for User
* fix failed testcases
* use proper extension method to avoid potential null reference exception
* fix for channel name in redis version + follow SignalR team recommendations
* remove unncessary freespace
* remove whitespaces
* introduce IUserIdProvider to resolve user id
* Move IUserIdProvider from HubLifetimeManager to HubConnectionContext
* setting user id to connection context in hubendpoint
2017-10-06 11:58:18 -07:00
David Fowler
2adf24d1c6
Merge branch 'rel/1.0.0-alpha2' into dev
2017-09-25 23:44:25 -07:00
David Fowler
9df8d2f795
Remove the params argument from IClientProxy ( #946 )
...
* Remove the params argument from IClientProxy
- This allows passing arrays without having to explicitly ToArray() or AsEnumerable()
- Added overloads up to 10 arguments
- Added tests
2017-09-25 21:01:52 -07:00
David Fowler
5497c7d4ce
Merge branch 'rel/1.0.0-alpha2' into dev
2017-09-25 08:31:02 -07:00
David Fowler
26255cc29c
Check for null before sending to a specific connection id ( #935 )
...
* Check for null before sending to a specific connection id
- Added some tests for the DefaultHubLifetimeManager
#905
2017-09-25 08:26:24 -07:00
moozzyk
c0713c9916
Merge branch 'rel/1.0.0-alpha2' into dev
2017-09-25 08:17:27 -07:00
Pawel Kadluczka
0267695656
Exceptions thrown during writing should close the connection
...
We need to close the connection if there is an exception when writing to the transport on the server side. Currently if an exception happens it leaves the connection in an unsable state - after the exception no messages from the server will be sent to the client because the writing loop is terminated. Ignoring the message could cause hangs on the client side since we can fail while writing a completion message. In this case if the client is awaiting the invocation it will hang because the task will never be completed.
2017-09-25 08:13:46 -07:00
Pawel Kadluczka
8743723ece
Merge branch 'rel/1.0.0-alpha2' into dev
2017-09-21 23:00:20 -07:00
Pawel Kadluczka
4db78685dc
camelCasing objects serialized by JsonHubProtocol
...
Fixes : #859
2017-09-21 22:58:59 -07:00
Pawel Kadluczka
126901a08f
Adding default ctors for HubProtocols
2017-09-21 15:30:23 -07:00
Pawel Kadluczka
ba25dee141
Enabling customizing serialization settings in MessagePack protocol
2017-09-21 15:30:23 -07:00
Pawel Kadluczka
dd07ab1735
Merge branch 'rel/1.0.0-alpha2' into dev
2017-09-20 15:31:56 -07:00
FTWinston
a7fb243501
Added typed HubContext
2017-09-19 16:16:31 -07:00
David Fowler
2efbd6a95a
Merge branch 'rel/1.0.0-alpha2' into dev
2017-09-18 14:14:23 -07:00
David Fowler
a93e4be82f
Added Cancellation support ( #897 )
...
* Added Cancellation support
- Added ConnectionAbortedToken to the HubConnectionContext. This allows
arbitrary code to access a handle that represents the connection lifetime
without handling OnDisconnectedAsync on the hub itself.
- Expose Abort on HubConnectionContext to allow server side methods to
abort the connection.
- Use the Abort to stop the main loop when unexpected invocation errors happen.
- Use the connection aborted token as unsubscribe from the IObservable and to complete
the IAsyncEnumerator for streaming results.
2017-09-18 12:47:38 -07:00
Pawel Kadluczka
b093f2b279
Merge branch 'rel/1.0.0-alpha1' into dev
2017-09-13 13:55:06 -07:00
Pawel Kadluczka
d226b20756
Rename With/GetTransportType to With/GetTransport
2017-09-13 09:46:17 -07:00
David Fowler
11cc57ee0e
Merge branch 'rel/1.0.0-alpha1' into dev
...
# Conflicts:
# src/Microsoft.AspNetCore.SignalR.Client.Core/Microsoft.AspNetCore.SignalR.Client.Core.csproj
2017-09-13 09:20:53 -07:00
David Fowler
2e695c935e
Made tweaks to .NET client logging API ( #869 )
...
- Removed ConnectionFactoryDelegate and used Func<IConnection>
- Changed WithLogger that accepts ILoggerFactory to WithLoggerFactory
- Made UseLogger configure the existing ILoggerFactory or create a LoggerFactory
- Add support for setting the log level for console logs
- Updated tests
2017-09-13 09:18:06 -07:00
BrennanConroy
ef4da90c91
Merge branch 'rel/1.0.0-alpha1' into dev
2017-09-11 16:55:57 -07:00
BrennanConroy
393ab6a4f0
Add extension method to get HttpContext on HubConnectionContext ( #849 )
2017-09-11 16:55:32 -07:00
Pawel Kadluczka
225d2ed6f1
Merge branch 'rel/1.0.0-alpha1' into dev
2017-09-07 10:30:31 -07:00
Pawel Kadluczka
4ac8e786cf
Adding HubConnectionBuilder
2017-09-07 10:04:42 -07:00
Pawel Kadluczka
8ff6a4b624
Merge branch 'rel/1.0.0-alpha1' into dev
2017-09-07 09:52:28 -07:00
Pawel Kadluczka
9e614b6cc7
Initializing HubOptions.JsonSerializationSettings to default settings
2017-09-07 09:51:20 -07:00
Nate McMaster
d3ae3abe2a
Use PackageLineup to manage PackageReference versions
2017-09-01 16:34:32 -07:00
BrennanConroy
7418785a5e
Fix WebSocket race in E2E test ( #809 )
2017-08-31 15:30:55 -07:00
Mikael Mengistu
8ec2848646
AllExcept for Dynamic and Typed Hubs ( #796 )
2017-08-31 15:30:19 -07:00
Nate McMaster
5b767e05b4
Lift local function to class function to workaround issue in xunit.analyzers and roslyn
2017-08-31 13:42:44 -07:00
Pawel Kadluczka
5dceaa8149
Adding Microsoft.AspNetCore.SignalR.Client
2017-08-31 10:10:02 -07:00
Pawel Kadluczka
36acebf9fb
Renaming Microsoft.AspNetCore.SignalR.Client to Microsoft.AspNetCore.SignalR.Client.Core
2017-08-31 10:10:02 -07:00
Pawel Kadluczka
521eed1438
Renaming Microsoft.AspNetCore.SignalR.Http to Microsoft.AspNetCore.SignalR
2017-08-31 10:10:02 -07:00
Nate McMaster
9c0dc52d67
Use Directory.Build.props/targets
2017-08-29 10:17:20 -07:00
BrennanConroy
978f5cebc0
Starting HubOptions ( #743 )
...
* Added JsonSerializerSettings
2017-08-23 15:30:08 -07:00
Nate McMaster
629dd34977
Upgrade to xunit 2.3.0-beta4 ( #754 )
...
Removes unused theory parameters
2017-08-23 10:02:15 -07:00
Mikael Mengistu
d469cc3151
Clients Subset - AllExcept ( #700 )
2017-08-22 17:33:27 -07:00
BrennanConroy
5c6fb642a0
Fix flaky WebSocket test ( #745 )
2017-08-22 10:48:30 -07:00
BrennanConroy
345190e6a9
Add timeout to Negotiate ( #736 )
2017-08-18 15:51:01 -07:00
BrennanConroy
a4053acd06
Give Client a chance to receive Close Frame from Server ( #730 )
2017-08-18 09:56:40 -07:00
Pawel Kadluczka
5ad5f36f88
Changing length prefixing to separator for JSON C#
2017-08-18 09:50:45 -07:00
BrennanConroy
b12451025f
Exit OnConnected early if Negotiate fails ( #733 )
2017-08-17 23:34:45 -07:00
Pawel Kadluczka
5b4cc95583
Removing unnecessary dependency
2017-08-17 09:30:57 -07:00
Pawel Kadluczka
9eabce1b02
Enabling tests which would have prevented a bug
2017-08-11 11:22:45 -07:00
BrennanConroy
e8a673248a
Conditional WebSockets testing ( #714 )
2017-08-11 10:46:50 -07:00
Pawel Kadluczka
29f9c54b86
Updating xUnit version
2017-08-10 19:00:31 -07:00
BrennanConroy
b393200fd3
SSE StopAsync should ignore exception (handled elsewhere) ( #708 )
2017-08-10 14:18:34 -07:00
Mikael Mengistu
8cda36157f
Change Read to ReadAsync ( #702 )
2017-08-09 16:35:44 -07:00
Mikael Mengistu
32ef3eb355
Hub<T> ( #689 )
2017-08-08 17:39:09 -07:00
Pawel Kadluczka
3a1d4c5dd6
Introducing HubProtocolReaderWriter
2017-08-08 12:11:55 -07:00
Pawel Kadluczka
ad4784dbd2
Centralizing serializing hub messages
2017-08-08 12:11:55 -07:00
Pawel Kadluczka
f9ee7911a5
Use CloseOutputAsync to close client transport WebSocket ( #695 )
...
* Use CloseOutputAsync to close client transport WebSocket
Fixes #568
2017-08-08 11:31:24 -07:00
Mikael Mengistu
8ba29b578d
Dynamic Hub Change Part 2 ( #644 )
2017-07-14 15:54:31 -07:00