Skip to content

Roadmap for v3 #3250

@darrachequesne

Description

@darrachequesne

This list is open to suggestions!

  • Improve the documentation

That is obviously the major pain point of the project.

  • Reverse the direction of the ping-pong mechanism

Currently the client emits a ping and waits for a pong from the server, relying on setTimeout() to check whether the connection is still alive or not. But there are reports of throttled timers on the browser side, which may trigger random disconnections.

A solution would be that the ping is emitted from the server to the client, but that is a breaking change which will also break other client implementations..

Related: #5082

  • Update the source code to ES6 in every project

  • Migrate to webpack 4 (or another bundler, if need be)

  • Remove the sticky-session requirement when using multiple nodes

  • Default to websocket, and use XHR polling as fallback

Currently polling is established first, and then upgraded to websocket if possible.

  • Make the generateId method asynchronous

This one is also a breaking change. Related: socketio/engine.io#535

  • Update the Typescript bindings, if need be

  • Triage issues

No release date for now, as I'm not sure how much time I will be able to dedicate to those points in the following weeks. But any help is welcome!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions