Damien Arrachequesne
b837949479
ci: use Node.js 24
...
Reference: https://github.com/nodejs/Release
2025-12-22 13:45:36 +01:00
Damien Arrachequesne
1c3e4711c1
feat: add emitter based on Redis streams
...
Related: https://github.com/socketio/socket.io-redis-streams-adapter/issues/8
2025-11-06 18:03:37 +01:00
Damien Arrachequesne
0ae76360f9
Merge remote-tracking branch 'socket.io-cluster-adapter/monorepo'
2025-10-16 19:35:51 +02:00
Damien Arrachequesne
27fd420e75
refactor: prepare migration to monorepo
2025-10-16 19:31:30 +02:00
Damien Arrachequesne
0c431243e2
refactor: use the ClusterAdapter class from socket.io-adapter package
...
The ClusterAdapter class has been moved to [1], so that this adapter
only needs to implement to pub/sub mechanism.
Also, [2] should reduce the number of "timeout reached: only x
responses received out of y" errors, since the fetchSockets() requests
will now succeed even if a server leaves the cluster.
[1]: https://github.com/socketio/socket.io/tree/main/packages/socket.io-adapter
[2]: 0e23ff0cc6
2025-10-16 19:16:20 +02:00
Damien Arrachequesne
4fc25d80ec
ci: add Node.js 24
...
Reference: https://github.com/nodejs/Release
2025-10-16 12:03:32 +02:00
Damien Arrachequesne
1dd729b1a1
refactor: upgrade to prettier 3
2025-10-16 11:51:11 +02:00
Damien Arrachequesne
6877512f57
refactor: upgrade to TypeScript 5
2025-10-16 11:49:12 +02:00
Avi Vahl
6f9b198bc8
chore(deps): ws@8.18.3, debug@4.4.1 ( #5335 )
...
Release notes:
- https://github.com/websockets/ws/releases/tag/8.18.3
- https://github.com/debug-js/debug/releases/tag/4.4.1
2025-09-11 07:51:07 +02:00
Damien Arrachequesne
c7144920e3
Merge remote-tracking branch 'socket.io-postgres-emitter/main' into monorepo
2025-09-04 09:30:26 +02:00
Damien Arrachequesne
42480e9a7f
chore: prepare migration to monorepo
2025-09-04 09:23:32 +02:00
Damien Arrachequesne
5a31aaf917
chore(eio): revert cookie to version ~0.7.2
...
This reverts commit 7427109658 .
The new version of the `cookie` package contains code with optional chaining (`?.`), which is not supported by older Node.js versions (< 14).
The types for cookie are now bundled, so that there is no conflict with the types coming from `cookie@1`:
> error TS2724: '"cookie"' has no exported member named 'CookieSerializeOptions'. Did you mean 'SerializeOptions'?
>
> import type { CookieSerializeOptions } from "cookie";
> ~~~~~~~~~~~~~~~~~~~~~~
Related: https://github.com/socketio/socket.io/issues/5283
2025-01-28 09:13:39 +01:00
Damien Arrachequesne
3b68658201
chore: bump @fails-components/webtransport to version 1.1.4 (dev)
2024-10-21 23:29:29 +02:00
Damien Arrachequesne
da613810fd
test(eio): bump uWebSockets.js to version 20.48.0
2024-09-19 12:12:58 +02:00
Wang Guan
a1ccba3a77
chore: use prettier v3 everywhere ( #5169 )
2024-09-16 08:43:08 +02:00
Damien Arrachequesne
7521ac227b
chore(release): @socket.io/cluster-engine@0.1.0
2024-07-17 09:53:34 +02:00
Damien Arrachequesne
b00124b65a
feat: implement cluster-friendly engine
2024-07-17 09:27:12 +02:00
Damien Arrachequesne
2a29c4c30e
chore: move dev dependencies in the parent package.json file
...
Notes:
- TypeScript is updated from v4 to v5
- WebDriverIO is updated from v7 to v8
- prettier is kept in v2, in order to reduce style changes
2024-07-10 10:42:22 +02:00
Damien Arrachequesne
34137d39a9
chore: add new npm workspaces
...
The following repositories were merged:
- https://github.com/socketio/engine.io-parser
- https://github.com/socketio/engine.io-client
- https://github.com/socketio/engine.io-parser
- https://github.com/socketio/socket.io-adapter
- https://github.com/socketio/emitter
2024-07-08 12:10:24 +02:00
Damien Arrachequesne
d9b4c3cb03
ci: create npm workspaces and sort out dependencies
...
This requires at least npm v7.
Reference: https://docs.npmjs.com/cli/v10/using-npm/workspaces
Note: @types/node is pinned at `18.15.3` because it's the last version
which supports TypeScript v4.2.
2024-07-04 17:48:46 +02:00
Damien Arrachequesne
d9d19b4bb7
refactor: prepare the migration to a monorepo
2024-07-04 17:33:59 +02:00
Damien Arrachequesne
50176812a1
chore(release): 4.7.5
...
Diff: https://github.com/socketio/socket.io/compare/4.7.4...4.7.5
2024-03-14 17:55:23 +01:00
Damien Arrachequesne
6ab2509d52
chore(release): 4.7.4
...
Diff: https://github.com/socketio/socket.io/compare/4.7.3...4.7.4
2024-01-12 11:09:14 +01:00
Damien Arrachequesne
80b2c34478
chore: bump socket.io-client version
2024-01-03 21:37:25 +01:00
Damien Arrachequesne
0d893196f8
chore(release): 4.7.3
...
Diff: https://github.com/socketio/socket.io/compare/4.7.2...4.7.3
2024-01-03 21:33:29 +01:00
Zachary Haber
f6ef267b03
refactor(typings): improve emit types ( #4817 )
...
This commit fixes several issues with emit types:
- calling `emit()` without calling `timeout()` first is now only available for events without acknowledgement
- calling `emit()` after calling `timeout()` is now only available for events with an acknowledgement
- calling `emitWithAck()` is now only available for events with an acknowledgement
- `timeout()` must be called before calling `emitWithAck()`
2023-10-11 10:37:13 +02:00
Damien Arrachequesne
c332643ad8
chore(release): 4.7.2
...
Diff: https://github.com/socketio/socket.io/compare/4.7.1...4.7.2
2023-08-03 01:51:04 +02:00
Damien Arrachequesne
09d45491c4
chore: bump engine.io to version 6.5.2
...
Diff: https://github.com/socketio/engine.io/compare/6.5.0...6.5.2
Release notes: https://github.com/socketio/engine.io/releases/tag/6.5.2
2023-08-03 00:39:46 +02:00
Damien Arrachequesne
03046a64ad
docs: update the list of supported Node.js versions
...
The Engine.IO server uses `timeout.refresh()` (see [1]), which was
added in Node.js 10.2.0.
Reference: https://nodejs.org/api/timers.html#timeoutrefresh
Related: https://github.com/socketio/engine.io/issues/686
[1]: 37474c7e67
2023-07-09 10:14:49 +02:00
Damien Arrachequesne
a529eb08d6
chore: bump dev dependencies
2023-07-09 10:03:32 +02:00
Damien Arrachequesne
2f6cc2fa42
chore(release): 4.7.1
...
Diff: https://github.com/socketio/socket.io/compare/4.7.0...4.7.1
2023-06-28 09:32:32 +02:00
Damien Arrachequesne
00d8ee5b05
chore(release): 4.7.0
...
Diff: https://github.com/socketio/socket.io/compare/4.6.2...4.7.0
2023-06-22 11:27:45 +02:00
Damien Arrachequesne
63f181cc12
feat: serve client bundles with CORS headers
...
The version of the `cors` package matches the one used by `engine.io`.
Related: https://github.com/socketio/socket.io/issues/3552
2023-06-20 14:32:59 +02:00
Damien Arrachequesne
a250e283da
chore: bump engine.io to version 6.5.0
...
Diff: https://github.com/socketio/engine.io/compare/6.4.2...6.5.0
Release notes: https://github.com/socketio/engine.io/releases/tag/6.5.0
2023-06-20 09:17:10 +02:00
Damien Arrachequesne
faf914c9ab
chore(release): 4.6.2
...
Diff: https://github.com/socketio/socket.io/compare/4.6.1...4.6.2
2023-05-31 11:15:41 +02:00
Damien Arrachequesne
d3658944e5
chore: bump socket.io-parser to version 4.2.3
...
Reference: https://github.com/advisories/GHSA-cqmj-92xf-r6r9
2023-05-24 07:27:12 +02:00
Damien Arrachequesne
12b0de4f52
chore: bump engine.io to version 6.4.2
...
Reference: https://github.com/advisories/GHSA-q9mw-68c2-j6m5
Related: https://github.com/socketio/socket.io/issues/4711
2023-05-10 10:20:42 +02:00
Mateusz Burzyński
3d44aae381
fix(exports): move types condition to the top ( #4698 )
...
Related: https://github.com/microsoft/TypeScript/issues/50762
2023-05-04 07:27:09 +02:00
Damien Arrachequesne
cddb78e5fa
chore(release): 0.2.2
...
Diff: https://github.com/socketio/socket.io-cluster-adapter/compare/0.2.1...0.2.2
2023-03-24 17:32:35 +01:00
Damien Arrachequesne
15fd56e78d
chore: add socket.io-parser to peerDependencies
...
This should (at least in theory) fix sync issues for the
`socket.io-adapter` package, which is imported by both the `socket.io`
and `@socket.io/cluster-adapter` packages:
- `socket.io@4.5.0` should resolve `socket.io-adapter@~2.4.0`
- `socket.io@4.6.0` should resolve `socket.io-adapter@~2.5.0`
2023-03-24 17:28:57 +01:00
Damien Arrachequesne
7952312911
chore(release): 4.6.1
...
Diff: https://github.com/socketio/socket.io/compare/4.6.0...4.6.1
2023-02-20 17:49:41 +01:00
Igor Lins e Silva
d0b22c6302
fix(types): fix nodenext module resolution compatibility ( #4625 )
...
The import added in [1] was invalid, because it used an non-exported
class.
Related: https://github.com/socketio/socket.io/issues/4621
[1]: d4a9b2cdcb
2023-02-20 01:15:35 +01:00
Damien Arrachequesne
a2e5d1f77f
chore(release): 4.6.0
...
Diff: https://github.com/socketio/socket.io/compare/4.5.4...4.6.0
2023-02-07 01:07:46 +01:00
Damien Arrachequesne
b2dd7cf660
chore: bump engine.io to version 6.4.0
...
Diff: https://github.com/socketio/engine.io/compare/6.3.1...6.4.0
Release notes: https://github.com/socketio/engine.io/releases/tag/6.4.0
2023-02-06 17:43:02 +01:00
Damien Arrachequesne
da2b542797
perf: precompute the WebSocket frames when broadcasting
...
Note:
- only packets without binary attachments are affected
- the permessage-deflate extension must be disabled (which is the default)
Related:
- 5f7b47d40f
- 5e34722b0b
2023-01-12 08:50:07 +01:00
Damien Arrachequesne
3b7ced7af7
chore(release): 4.5.4
...
Diff: https://github.com/socketio/socket.io/compare/4.5.3...4.5.4
2022-11-22 22:45:13 +01:00
Damien Arrachequesne
c00bb9564c
chore: bump engine.io to version 6.2.1
...
In order to fix CVE-2022-41940.
See also: https://github.com/socketio/engine.io/security/advisories/GHSA-r7qp-cfhv-p84w
2022-11-22 22:35:53 +01:00
Damien Arrachequesne
57e5f25e26
chore: bump socket.io-parser to version 4.2.1
...
In order to fix CVE-2022-2421.
See also: https://github.com/advisories/GHSA-qm95-pgcg-qqfq
2022-11-22 22:32:09 +01:00
Damien Arrachequesne
945c84be47
chore(release): 4.5.3
...
Diff: https://github.com/socketio/socket.io/compare/4.5.2...4.5.3
2022-10-15 07:14:45 +02:00
Damien Arrachequesne
fe840e2eb3
chore(release): 0.2.1
...
Diff: https://github.com/socketio/socket.io-cluster-adapter/compare/0.2.0...0.2.1
2022-10-13 09:23:36 +02:00