Permalink
Commits on Oct 22, 2013
  1. Support custom json object in JS client

    - Added connection.prototype.json which is initialized as window.JSON
    - Changed default ajax content type to text
    - Added connection._parseRespons helper to parse ajax responses from text to JSON (when it's not JSONP)
    - Update all JS client code to use connection._parseResponse
    - Added unit & functional tests
    - Updated affected tests
    
    #2654
    
    Conflicts:
    	samples/Microsoft.AspNet.SignalR.Hosting.AspNet.Samples/Scripts/jquery.signalR.js
    	samples/Microsoft.AspNet.SignalR.Hosting.AspNet.Samples/Scripts/jquery.signalR.min.js
    	samples/Microsoft.AspNet.SignalR.LoadTestHarness/Scripts/jquery.signalR.js
    	samples/Microsoft.AspNet.SignalR.LoadTestHarness/Scripts/jquery.signalR.min.js
    	src/Microsoft.AspNet.SignalR.Client.JS/jquery.signalR.core.js
    	src/Microsoft.AspNet.SignalR.Client.JS/jquery.signalR.hubs.js
    	src/Microsoft.AspNet.SignalR.Client.JS/jquery.signalR.transports.common.js
    	src/Microsoft.AspNet.SignalR.Client.JS/jquery.signalR.transports.longPolling.js
    	tests/Microsoft.AspNet.SignalR.Client.JS.Tests/Scripts/_references.js
    	tests/Microsoft.AspNet.SignalR.Client.JS.Tests/Scripts/jquery.signalR.js
    	tests/Microsoft.AspNet.SignalR.Client.JS.Tests/default.html
    DamianEdwards committed with NTaylorMullen May 7, 2013
Commits on Oct 18, 2013
  1. Added a test to verify that ReconnectWindows work appropriately.

    Fixed tests to abide by new heartbeat timer and the last message at value.
    
    Fixed some more keep alive fact tests since the heartbeat monitor now requires to be started before beat works for keep alive.
    
    Conflicts:
    	tests/Microsoft.AspNet.SignalR.FunctionalTests/Client/KeepAliveFacts.cs
    	tests/Microsoft.AspNet.SignalR.FunctionalTests/Server/Connections/ConnectionFacts.cs
    
    #2629
    NTaylorMullen committed Sep 18, 2013
  2. Added a default beat interval for the HeartbeatMonitor in the situati…

    …ons where KeepAlive is disabled on the server.
    
    - Also fixed some tests to properly return transports with valid SupportsKeepAlive values.
    
    Initialize the lastActiveAt flag to ensure that there's no race between a transport start and the flag set.
    
    - This is to ensure we don't pre-emptively close connections on reconnect.
    
    Conflicts:
    	src/Microsoft.AspNet.SignalR.Client/Connection.cs
    	tests/Microsoft.AspNet.SignalR.FunctionalTests/Client/KeepAliveFacts.cs
    
    #2629
    NTaylorMullen committed Sep 20, 2013
  3. Added a ReconnectWindow to the connection object.

    - ReconnectWindows are used to ensure that connections do not attempt to reconnect after extended periods of time.
    
    Conflicts:
    	src/Microsoft.AspNet.SignalR.Client/Connection.cs
    	src/Microsoft.AspNet.SignalR.Client/IConnection.cs
    	src/Microsoft.AspNet.SignalR.Client/Transports/TransportHelper.cs
    	tests/Microsoft.AspNet.SignalR.FunctionalTests/Client/ConnectionFacts.cs
    	tests/Microsoft.AspNet.SignalR.FunctionalTests/Server/Connections/ConnectionFacts.cs
    
    #2629
    NTaylorMullen committed Sep 18, 2013
  4. Modified KeepAlive to utilize a LastMessageAt property.

    - Also modified existing tests that relied on the LastKeepAlive property to now rely on LastMessageAt.
    - LastMessageAt can now be used by LongPolling for message monitoring purposes.
    
    #2629
    NTaylorMullen committed Sep 18, 2013
Commits on Oct 16, 2013
Commits on Oct 14, 2013
  1. Added a test to verify that reconnecting transitions into the disconn…

    …ected state if the reconnecting threshold exceeds the reconnectWindow.
    
    - Also modified all the keep alive tests to use the new LastMessageAt property and the new generic heartbeat.
    
    #2513
    NTaylorMullen committed Oct 14, 2013
  2. Added a reconnect window through which reconnects ensure that a time …

    …threshold has not been passed.
    
    - Added a generic heartbeat method that is used to check keep alive but also do any other time related tasks.
    - Also changed the lastKeepAlive to be lastMessageAt.  LastMessageAt is a more generic name.
    
    #2513
    NTaylorMullen committed Oct 14, 2013
Commits on Oct 10, 2013
Commits on Oct 8, 2013
  1. Fixed code analysis errors

    abnanda1 committed Oct 8, 2013
  2. Modify response to indicate to clients that the host is shutting down

    - This enables LongPolling to reconnect like other transports during shutdown
    - No longer reconnect after connection timeout with the .NET client
    
    #2188
    #2323
    
    Conflicts:
    	tests/Microsoft.AspNet.SignalR.FunctionalTests/Server/Connections/ConnectionFacts.cs
    	tests/Microsoft.AspNet.SignalR.FunctionalTests/Server/Connections/PersistentConnectionFacts.cs
    	tests/Microsoft.AspNet.SignalR.Tests.Common/App_Start/Initializer.cs
    halter73 committed with abnanda1 Jul 23, 2013
  3. Change "timedOut" to "shouldReconnect" in .NET client's ProcessResponse

    #2188
    #2323
    
    Conflicts:
    	src/Microsoft.AspNet.SignalR.Client/Transports/ServerSentEventsTransport.cs
    	src/Microsoft.AspNet.SignalR.Client/Transports/TransportHelper.cs
    halter73 committed with abnanda1 Jul 23, 2013
  4. Added test to verify reconnect fires after host shutdown with LP

    #2188
    
    Conflicts:
    	src/Microsoft.AspNet.SignalR.Hosting.Memory/MemoryHost.cs
    	src/Microsoft.AspNet.SignalR.Hosting.Memory/OwinEnvironment.cs
    halter73 committed with abnanda1 Jul 23, 2013
  5. Updated JS client to trigger reconnect event after host shutdown

    #2188
    
    Conflicts:
    	src/Microsoft.AspNet.SignalR.Client.JS/jquery.signalR.transports.longPolling.js
    halter73 committed with abnanda1 Jul 23, 2013
Commits on Oct 7, 2013
  1. Added a test to verify when we start->stop->start that all deferred's…

    … are rejected or resolved correctly.
    
    #2189
    NTaylorMullen committed with halter73 Aug 16, 2013
  2. Added test to verify hub event handlers are only triggered once per b…

    …inding.
    
    - This is a multi-purpose test to verify 3 bugs.
    
    #2187
    #2160
    #2190
    NTaylorMullen committed with halter73 Jun 21, 2013
  3. Added tracking for the negotiate request so calling stop properly abo…

    …rts the request.
    
    - Without aborting the negotiate request starting and stopping in quick succession can cause multiple active ajax requests attempting to connect.
    
    #2601
    NTaylorMullen committed with halter73 Jun 20, 2013
  4. Re-ordered when we clear private non-timeout based state.

    - This way we can successfully reject connection deferrals.
    
    #2189
    NTaylorMullen committed with halter73 Aug 16, 2013
  5. Updated formatting of core.js

    halter73 committed Oct 1, 2013
  6. Modified connection.stop to no longer deffer itself until the page ha…

    …s loaded.
    
    - It now unbinds the load event handler for the connection start.
    - This allows for multiple starts/stops to occur during page load.
    - This issue cannot be unit/functionally tested directly because it requires the page to be in the loading state.
    
    #2189
    NTaylorMullen committed with halter73 Aug 13, 2013
  7. Added logic to ensure connections can be started and stopped repeated…

    …ly without error.
    
    - Also added logic to ensure that calling start multiple times works correctly
    
    #1873
    NTaylorMullen committed with halter73 Jun 6, 2013
Commits on Oct 3, 2013
  1. Addressed code review comments.

    - This involved combining the addQs and addConnectionData into a singular method (prepareQueryString).
    - Also modified addConnectionData to be private amongst the common js file.
    
    #2503
    NTaylorMullen committed Jul 20, 2013
  2. Added tests to verify that connection data is passed with all requests.

    - This also involved adding a ConnectionDataVerifierHub which checks requests to ensure that all requests contain the correct information associated with them.
    - Also fixed some cherry-pick conflict issues that didn't translate correctly.
    
    #2503
    NTaylorMullen committed Jul 20, 2013
  3. Added connection data (hub subscriptions) to every request.

    - This also involved moving the starting event above the negotiation logic instead of inside, this way connection data is built before the negotiate request.
    
    #2503
    NTaylorMullen committed Jul 20, 2013
  4. Addressed code review comments.

    - Added an extra check after long polling error handler trigger to ensure that multiple connections do not occur.
    
    #2505
    NTaylorMullen committed Jul 25, 2013
  5. Added a test to verify that starting/stopping a connection while reco…

    …nnecting does not result in simultaneous polls attempting to connect.
    
    #2125
    NTaylorMullen committed Jul 22, 2013
  6. Captured several long polling timeouts that are then cleared on stop.

    - Also added two fields to the private data field of a connection object.
    
    #2505
    NTaylorMullen committed Oct 1, 2013
  7. Added tests to verify that pingInterval behaves correctly with differ…

    …ent configuration options in addition to multiple connection starts and stops.
    
    - Also modified the existing tests which called ping interval by also passing in a transport (no longer need to do that).
    
    #2507
    NTaylorMullen committed Oct 2, 2013
  8. Added a ping interval on the client to ensure that auth tickets do no…

    …t expire when there's lack of activity.
    
    - This also involved adding a new configuration option 'pingInterval' which can be set via milliseconds in the connection.start
    
    #2507
    NTaylorMullen committed Oct 2, 2013
  9. Made logging more consistent throughout the code base.

    - Added periods to the end of every log line.
    - Removed "SignalR:" from beginning of logged lines so it wasn't logged twice.
    - Re-worded some language.
    - Added Long poll complete log.
    - Made it so the clearing hub invocation log is only called if callbacks are available to be cleared.
    
    #2487
    NTaylorMullen committed Oct 3, 2013