socket.io
4.8.4 · 25 Sep 2026MIT16.6M / weekRepositoryHomepagenpmAtom feed
Upgrading socket.io from 0.6.15 to 4.8.4
132 releases in betweennotes for 50
Counted from 50 of 132 release notes. Advisories are counted from the advisory database, in full.
Start here
Before you upgrade
Tick each one off as you go- breaking2.4.1
- breaking2.0.0
- deprecated4.8.2
Security
Fixes 3 advisories affecting 0.6.15
- socket.io has an unhandled 'error' eventmoderate · GHSA-25hc-qcg6-38wj
- CORS misconfiguration in socket.iomoderate · GHSA-fxwf-4rqh-v8g3
- Insecure randomness in socket.iohigh · GHSA-qv2v-m59f-v5fw
- 4.5.4
engine.ioin order to fix CVE-2022-41940 - 4.5.4
socket.io-parserin order to fix CVE-2022-2421. - 2.5.0
Security advisory: github.com/advisories/GHSA-j4f2-536g-r55m
- 2.4.1
In any case, please consider upgrading to Socket.IO v3, where this security issue is now fixed (CORS is disabled by default).
Release by release
- fixed
Cleanup pending acks on timeout to prevent memory leak
- fixed
Prevent uWebSockets.js from serving missing client files
- fixed
Reject stateful regexps for dynamic namespaces
- fixed
types: allow emitWithAck() for events with void callbacks
- fixed
types: properly import http module
- fixed
- fixed
Do not throw when calling io.close() on a stopped server
- fixed
- fixed
Call adapter.init() when creating each namespace
- fixed
Improve
io.close()function
- fixed
4.8.1nothing new or fixed in the note
- fixed
Allow to join a room in a middleware (uws)
- fixed
Correctly await async close on adapters
- fixed
Expose type of default engine
- fixed
- fixed
Close the adapters when the server is closed
- fixed
Remove duplicate pipeline when serving bundle
- fixed
- fixed
Return the first response when broadcasting to a single socket
- fixed
typings: allow to bind to a non-secure Http2Server
- fixed
25 other lines we could not sort, mostly version bumps
- 2.4.1
Without CORS (server and client are served from the same domain):
- 2.4.1
With CORS (server and client are served from distinct domains):
- 2.4.1
Diff: 2.4.0...2.4.1
- 2.4.1
Client release:
- 2.1.0
wswas reverted as the default wsEngine (#550), as there was several blocking issues withuws. You can still useuwsby runningnpm install uws --savein your project and using thewsEngineoption: - 2.1.0
pingTimeoutnow defaults to 5 seconds (instead of 60 seconds): #551 - 2.1.0
Diff: 2.0.4...2.1.0
- 2.1.0
Client release: 2.1.0
- 2.1.0
Engine.io version:
~3.2.0(diff: 3.1.0...3.2.0) - 2.1.0
Ws version:
~3.3.1(diff: 2.3.1...3.3.1)
96 internal lines (docs, tests, tooling) left out.