Commit Graph

95 Commits

Author SHA1 Message Date
Andrew Stanton-Nurse 78dfd278c1 Integrating new transport protocols (#257) 2017-03-07 10:46:36 -08:00
Pranav K 080494fc78 Fix TaskCache type collision 2017-03-05 09:09:54 -08:00
Pawel Kadluczka 0162c19ccf MSBuildifying gulpified node (#237)
- Creating an MSBuild project for the TS client
- Adding project references to the TS client project from projects that need the client - (ensures the correct targets dependency graph and prevents building the client multiple times and related races)
- Removing gulp tasks from individual projects (allows containing npm only in the TS client source and node tests)
- Using incremental compilation to build the TS client only when inputs change (prevents building the client multiple times or when not needed at all)
- Removing `npm install` from all the projects (takes up to 10 seconds even if there is nothing to restore) - npm packages will still be installed when running full build (if needed) or need to be installed manually
2017-03-01 15:13:22 -08:00
BrennanConroy 485f9595e2 EndPoint options and injection 2017-03-01 14:38:50 -08:00
Mikael Mengistu c3b33a2676 Add Url + ILoggerFactory ctor for HubConnection (#253) 2017-02-28 16:52:42 -08:00
BrennanConroy 0abac4a20d Fix null ref in DisposeAsync on ConnectionState 2017-02-28 11:44:25 -08:00
Mikael Mengistu c1a4b25a66 Remove logger factory requirement from HubConnection (#238) 2017-02-28 10:48:45 -08:00
Nate McMaster af5e7da478 Remove workarounds and unify dependency versions 2017-02-23 17:09:07 -08:00
Andrew Stanton-Nurse 667095661b convert the samples to use the official client (#234) 2017-02-23 10:56:20 -08:00
Andrew Stanton-Nurse 08c550655a use new Base64 codec in Text and SSE Formatters (#231)
fix #192
2017-02-22 16:26:58 -08:00
Andrew Stanton-Nurse 9767dbd5c1 fix #209 by converting to byte[] (#229)
* fix #209 by converting to byte[]
2017-02-22 11:50:37 -08:00
Andrew Stanton-Nurse 701612c859 fix #204 by implementing SSE formatter (#210) 2017-02-22 09:30:31 -08:00
Pawel Kadluczka 763d115b08 Re-enabling building for net46 after System.Memory packages were fixed (#228) 2017-02-22 09:04:09 -08:00
Andrew Stanton-Nurse f84362cc76 one last try to get this test de-flaked (#227) 2017-02-21 16:15:32 -08:00
Andrew Stanton-Nurse 755ba7613e Fix #215 and restore tests (#218)
* fix #215 by properly handling pipe closure

* pr feedback

* pr feedback
2017-02-21 15:27:52 -08:00
moozzyk 9709139a27 Fixing a bug where pending invocations were not terminated correctly 2017-02-21 14:07:51 -08:00
moozzyk 12c6a4b917 Adding IConnection interface 2017-02-21 14:07:50 -08:00
moozzyk 7a4746868a Removing Dispose from Transport, Connection and HubConnection
Converting StopAsync to DisposeAsync
2017-02-21 13:36:54 -08:00
moozzyk 76bd114a2f Preventing from building ts client multiple times 2017-02-21 11:54:39 -08:00
moozzyk cc7f835e1d Creating npm package for ts client 2017-02-21 11:37:13 -08:00
BrennanConroy 6f33ebc1f5 ObjectMethodExecutor 2017-02-17 10:19:32 -08:00
Nate McMaster 7e8f92b418 Remove makefile.shade and add npm install to repo.targets
Also, add (commented-out) conditional cross compiling for tests on xplat
2017-02-17 10:07:09 -08:00
moozzyk 607445fc2b Workaround for broken System.Memory package 2017-02-16 12:41:09 -08:00
moozzyk ce4a8f0276 Disabling tests broken by new pipelines 2017-02-16 12:40:23 -08:00
Nate McMaster ef99d7c233
React to aspnet/Korebuild#160 2017-02-16 10:10:08 -08:00
Nate McMaster f684fcb574 Downgrade to stable packages 2017-02-15 14:23:11 -08:00
Andrew Stanton-Nurse 2a5c4320d2 increase retry count in autobahn tests 2017-02-15 14:15:47 -08:00
moozzyk a3e847e6cc De-statificying HubConnection
Wiring and raising events correctly
2017-02-15 12:15:35 -08:00
moozzyk d4fbdd055a Raising Received event 2017-02-15 12:15:35 -08:00
moozzyk 4f6306f352 Adding rasing Connected and Closed events 2017-02-15 12:15:35 -08:00
moozzyk 966470d269 Adding connection state 2017-02-15 12:15:34 -08:00
moozzyk 3ba95b98af Converting static ConnectAsync to instance StartAsync 2017-02-15 12:15:34 -08:00
Andrew Stanton-Nurse 70d97dd7b8 finish binary protocol formatter/parser (#203) 2017-02-15 12:11:52 -08:00
moozzyk 94dc265658 Fixing build after merge 2017-02-15 09:49:39 -08:00
Mikael Mengistu cb7692d16e WebSockets Transport (#185)
WebSockets transport
2017-02-15 09:24:41 -08:00
Andrew Stanton-Nurse a728e1da41 Text Protocol Formatter (#187) 2017-02-14 16:00:51 -08:00
Pawel Kadluczka 82cbda4a9a Making `OrTimeout` common (#193)
Making `OrTimeout` common
2017-02-13 12:38:34 -08:00
Pawel Kadluczka 0c8df245de Hiding Channels (#183)
Hiding Channels
2017-02-09 10:31:07 -08:00
Andrew Stanton-Nurse b711128ec2 update MSBuild settings to make samples runnable (#180) 2017-02-07 09:39:21 -08:00
Nate McMaster 7281bf90c0 Upgrade to VS 2017 (#176) 2017-02-02 12:54:23 -08:00
BrennanConroy 72e7b54dff Add TestClient to simplify test code 2017-02-01 15:53:44 -08:00
Mikael Mengistu 5def499323 Added Sockets.Common and connection level testing (#173)
*Moved IChannelConnection, ChannelConnection, Format and Message to the new Sockets.Common project.

* Adding Connection level tests.
2017-01-31 14:59:21 -08:00
David Fowler eafbe74160 Fixed parameter count mismatch when invoking methods with wrong case (#162)
* Fixed parameter count mismatch when invoking methods with wrong case
- Hub methods were being tracked with 2 dictionaries, one for parameter names
the other for callbacks. This change introduces a single dictionary that stores
the hub name to a HubMethodDescriptor. That descriptor stores the parameter types
and method info for the bound hub method.
- The callback is now just an invoke method on the HubEndPoint itself.
- Added tests for case sensitivity in hub method names
2017-01-26 18:25:49 +00:00
moozzyk c997ea8165 Converting pipelines to channels 2017-01-26 08:04:58 -08:00
David Fowler 162cd1fc06 Handle misbehaving user code (#159)
* Handle misbehaving user code
- Execute EndPoint logic on a threadpool thread
- Turn synchronous exceptions into async ones to unify the
error handling
- Added tests
2017-01-25 23:45:43 +00:00
David Fowler 934f6a70d1 Various fixes in HttpConnectionDispatcher (#151)
- The connection state object is manipulated by multiple parties in a non thread safe way. This change introduces a semaphore that should be used by anyone updating or reading the connection state. 
- Handle cases where there's an active request for a connection id and another incoming request for the same connection id, sse and websockets 409 and long polling kicks out the previous connection (https://github.com/aspnet/SignalR/issues/27 and https://github.com/aspnet/SignalR/issues/4)
- Handle requests being processed for disposed connections. There was a race where the background thread could remove and clean up the connection while it was about to be processed.
- Synchronize between the background scanning thread and the request threads when updating the connection state.
- Added `DisposeAndRemoveAsync` to the connection manager that handles`DisposeAsync` throwing and properly removes connections from connection tracking.
- Added Start to ConnectionManager so that testing is easier (background timer doesn't kick in unless start is called).
- Added RequestId to connection state for easier debugging and correlation (can easily see which request is currently processing the logical connection).
- Added tests
2017-01-25 22:27:55 +00:00
moozzyk 3ad8efb4ab Fixing test after getid to negotiate rename 2017-01-25 09:32:26 -08:00
David Fowler 9eb42cce2d Clean up disposal of connection state (#148)
* Clean up disposal of connection state
- Removed IDisposable and added a DisposeAsync method to ConnectionState
- Added ApplicationTask and TransportTask to ConnectionState as first class
properties so that it is easy to see (in a process dump or debugger) the
outstanding tasks that Sockets is keeping track of on a per connection basis.
2017-01-25 00:08:08 +00:00
Pawel Kadluczka fb4a99ffff Fixing test hangs, adding timeouts. (#149) 2017-01-24 15:51:58 -08:00
BrennanConroy aec52670b4 React to Channel API changes 2017-01-19 08:15:59 -08:00