-
Notifications
You must be signed in to change notification settings - Fork 565
Comparing changes
Open a pull request
base repository: socketio/engine.io
base: 6.5.4
head repository: socketio/engine.io
compare: 6.6.0
- 20 commits
- 31 files changed
- 3 contributors
Commits on Feb 23, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 0efa04b - Browse repository at this point
Copy the full SHA 0efa04bView commit details
Commits on Mar 29, 2024
-
chore(deps): bump express from 4.18.2 to 4.19.2 in /examples/latency (#…
…700) Bumps [express](https://github.com/expressjs/express) from 4.18.2 to 4.19.2. - [Release notes](https://github.com/expressjs/express/releases) - [Changelog](https://github.com/expressjs/express/blob/master/History.md) - [Commits](expressjs/express@4.18.2...4.19.2) --- updated-dependencies: - dependency-name: express dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 79ea52d - Browse repository at this point
Copy the full SHA 79ea52dView commit details
Commits on Jun 13, 2024
-
fix: fix
websocket
andwebtransport
send callbacks (#699)With the `websocket` transport, the callbacks which indicate that the packets are actually written were not properly called. Example: ```js socket.send("hello", () => { // the message has been written to the underlying transport }); ``` The bug was caused by the `websocket` transport (and `webtransport` as well) having its `supportsFraming` property set to `true`, despite having been changed in [1] to emit a single `drain` event for each batch of messages written to the transport like the `polling` transport always did. Note that although [1] is partially reverted in [2], the new `drain` event behavior is preserved as called out in that commit's message. The `supportsFraming` attribute was introduced in [3] (amended by [4]) as a way to distinguish transports that emit one `drain` per message from those that emit one `drain` per batch. Since the delivery of `send` callbacks depends on matching `drain` events with `transport.send` calls, that distinction is vital to correct behavior. However, now that all transports have converged to "one `drain` per batch" behavior, this `supportsFraming` property can be retired (and the code for calling callbacks simplified). [1]: #618 [2]: a65a047 [3]: #130 [4]: #132 Related: #698
Configuration menu - View commit details
-
Copy full SHA for fc21c4a - Browse repository at this point
Copy the full SHA fc21c4aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8955eb7 - Browse repository at this point
Copy the full SHA 8955eb7View commit details -
refactor: remove the wsPreEncoded option
The wsPreEncoded option was added in the `socket.io-adapter` package when broadcasting a message to multiple clients. It was removed in [1] and is now superseded by the `wsPreEncodedFrame` option, which directly computes the WebSocket frame once for all clients (see [2]). [1]: socketio/socket.io-adapter@88eee59 [2]: socketio/socket.io-adapter@5f7b47d
Configuration menu - View commit details
-
Copy full SHA for ef1c4c8 - Browse repository at this point
Copy the full SHA ef1c4c8View commit details -
refactor: simplify the handling of the "drain" event
The two event handlers are merged into one.
Configuration menu - View commit details
-
Copy full SHA for 407c3ad - Browse repository at this point
Copy the full SHA 407c3adView commit details -
refactor: remove unnecessary array allocation
If the `packetsFn` array is empty, there is no need to allocate one new array.
Configuration menu - View commit details
-
Copy full SHA for 62f59b6 - Browse repository at this point
Copy the full SHA 62f59b6View commit details
Commits on Jun 17, 2024
-
perf(websocket): use bound callbacks
Instead of allocating one temporary function for each WebSocket `send()` call. Regarding the test removal, the permessage-deflate threshold was implemented in the "ws" package in [1], so it's not needed anymore. [1]: websockets/ws@6b3904b
Configuration menu - View commit details
-
Copy full SHA for 9a68c8c - Browse repository at this point
Copy the full SHA 9a68c8cView commit details -
Configuration menu - View commit details
-
Copy full SHA for b0721e6 - Browse repository at this point
Copy the full SHA b0721e6View commit details
Commits on Jun 18, 2024
-
chore(deps): bump ws from 8.11.0 to 8.17.1 (#702)
Bumps [ws](https://github.com/websockets/ws) from 8.11.0 to 8.17.1. - [Release notes](https://github.com/websockets/ws/releases) - [Commits](websockets/ws@8.11.0...8.17.1) --- updated-dependencies: - dependency-name: ws dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 3c4d314 - Browse repository at this point
Copy the full SHA 3c4d314View commit details -
Configuration menu - View commit details
-
Copy full SHA for d3f45dc - Browse repository at this point
Copy the full SHA d3f45dcView commit details -
perf: do not reset the hearbeat timer on each packet
This behavior was added in [1]. However, there are two problems: - a new timer is allocated every time a packet is received, which is wasteful - the next heartbeat is not actually delayed, since it's the timeout timer which gets reset, and not the interval timer Note: delaying the next heartbeat would be a breaking change. [1]: be7b4e7
Configuration menu - View commit details
-
Copy full SHA for 5359bae - Browse repository at this point
Copy the full SHA 5359baeView commit details -
Configuration menu - View commit details
-
Copy full SHA for f521cba - Browse repository at this point
Copy the full SHA f521cbaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6b9e3e4 - Browse repository at this point
Copy the full SHA 6b9e3e4View commit details -
chore(deps-dev): bump braces from 3.0.2 to 3.0.3 (#701)
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3. - [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md) - [Commits](micromatch/braces@3.0.2...3.0.3) --- updated-dependencies: - dependency-name: braces dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 56c4664 - Browse repository at this point
Copy the full SHA 56c4664View commit details -
chore(dev-deps): bump ws and engine.io-client in /examples/memory-usa…
…ge (#703) Bumps [ws](https://github.com/websockets/ws) to 8.17.1 and updates ancestor dependency [engine.io-client](https://github.com/socketio/engine.io-client). These dependencies need to be updated together. Updates `ws` from 8.11.0 to 8.17.1 - [Release notes](https://github.com/websockets/ws/releases) - [Commits](websockets/ws@8.11.0...8.17.1) Updates `engine.io-client` from 6.5.3 to 6.5.4 - [Release notes](https://github.com/socketio/engine.io-client/releases) - [Changelog](https://github.com/socketio/engine.io-client/blob/6.5.4/CHANGELOG.md) - [Commits](socketio/engine.io-client@6.5.3...6.5.4) --- updated-dependencies: - dependency-name: ws dependency-type: indirect - dependency-name: engine.io-client dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for afd2934 - Browse repository at this point
Copy the full SHA afd2934View commit details
Commits on Jun 21, 2024
-
fix: properly call the send callback during upgrade
The "drain" event (added in [1]) had two different meanings: - the transport is ready to be written - the packets are sent over the wire For the WebSocket and the WebTransport transports, those two events happen at the same time, but this is not the case for the HTTP long-polling transport: - the transport is ready to be written when the client sends a GET request - the packets are sent over the wire when the server responds to the GET request Which caused an issue with send callbacks during an upgrade, since the packets were written but the client would not open a new GET request. There are now two distinct events: "ready" and "drain" Related: #695 [1]: 2a93f06
Configuration menu - View commit details
-
Copy full SHA for 362bc78 - Browse repository at this point
Copy the full SHA 362bc78View commit details -
Configuration menu - View commit details
-
Copy full SHA for c310b7b - Browse repository at this point
Copy the full SHA c310b7bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6d8a0be - Browse repository at this point
Copy the full SHA 6d8a0beView commit details -
Configuration menu - View commit details
-
Copy full SHA for 791aa58 - Browse repository at this point
Copy the full SHA 791aa58View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff 6.5.4...6.6.0