Server sent pings

@lpinca lpinca released this Mar 24, 2017 · 8 commits to master since this release

In this release we have reversed the direction of ping/pong messages. Pings are now sent from server to client to work around issues generated by throttled timers on modern browsers1.

The following diagram should give you an idea of how the new heartbeat system works.

     client will disconnect
       if not recv within
          `pingTimeout`

     primus:pong:{timestamp}
    +----------------------+
    |                      |
+---v----+            +---------+
| server |            |  client |
+--------+            +----^----+
    |                      |
    +----------------------+
     primus:ping:{timestamp}

      sent at `pingInterval`
      server will disconnect
      if no response since
           last ping

As you might expect there are some breaking changes.

  • The latency attribute on the client is gone.
  • The server-side timeout option has been replaced with a new option called pingInterval.
  • The client-side ping and pong options have been replaced with a new option called pingTimeout.

A special thanks goes to @STRML who assisted us in making this release possible.

1: http://blog.strml.net/2017/01/chrome-56-now-aggressively-throttles.html

Downloads

Engine.IO 2.0.2

@lpinca lpinca released this Feb 22, 2017 · 25 commits to master since this release

We've updated the Engine.IO client-side library to version 2.0.2 and added the ability to reset the spark heartbeat via protocol-level pings in the uws transformer.

Downloads

Engine.IO 2.0.1 and SockJS 1.1.2

@lpinca lpinca released this Jan 30, 2017 · 37 commits to master since this release

Two notable changes in this release:

  • We've updated the Engine.IO client-side library to version 2.0.1.
  • We've updated the SockJS client-side library to version 1.1.2.

Downloads

Bug fix

@lpinca lpinca released this Jan 9, 2017 · 46 commits to master since this release

This release fixes a bug that occasionally crashed the server when using the uws transformer.

Thanks to @STRML for finding and fixing the bug.

Downloads

Bug fix

@lpinca lpinca released this Dec 13, 2016 · 53 commits to master since this release

This release ships with an updated Engine.IO client to fix an issue introduced after the update to version 1.8.0.

Thanks to @peacemakr for reporting the problem in #519.

Downloads

Engine.IO 1.8.0 and µWS 0.12.0

@lpinca lpinca released this Dec 3, 2016 · 61 commits to master since this release

There are only 2 notable changes in this release:

  • We've updated the Engine.IO client-side library to its latest version.
  • We've updated the uws transformer to make it work with uws@0.12.0.

Downloads

Engine.IO 1.7.2

@lpinca lpinca released this Oct 24, 2016 · 77 commits to master since this release

This is a small release which ships only with an up-to-date Engine.IO client-side library.

Downloads

Engine.IO 1.7.1 and µWS 0.10.x

@lpinca lpinca released this Oct 23, 2016 · 80 commits to master since this release

We've updated the Engine.IO client-side library to its latest version.
We've also updated the uws transformer to make it work with uws@0.10.x. Please keep in mind that primus@6.0.4 is not compatible with uws@<0.10.0.

Downloads

µWS 0.9

@lpinca lpinca released this Sep 12, 2016 · 89 commits to master since this release

In this release we've updated the uws transformer to make it work with uws@0.9.0.

Downloads

µWS 0.8

@lpinca lpinca released this Aug 23, 2016 · 96 commits to master since this release

This release comes with a fix for the uws transformer to make SSL connection transfer work properly on Windows.

Downloads