nodejs-book
nodejs-book copied to clipboard
Upgrade: Bump socket.io-parser and socket.io in /ch12/12.5/gif-chat
Bumps socket.io-parser to 4.2.3 and updates ancestor dependency socket.io. These dependencies need to be updated together.
Updates socket.io-parser from 4.0.5 to 4.2.3
Release notes
Sourced from socket.io-parser's releases.
4.2.3
:warning: This release contains an important security fix :warning:
A malicious client could send a specially crafted HTTP request, triggering an uncaught exception and killing the Node.js process:
TypeError: Cannot convert object to primitive value at Socket.emit (node:events:507:25) at .../node_modules/socket.io/lib/socket.js:531:14Please upgrade as soon as possible.
Bug Fixes
- check the format of the event name (3b78117)
Links
4.2.2
Bug Fixes
- calling destroy() should clear all internal state (22c42e3)
- do not modify the input packet upon encoding (ae8dd88)
Links
4.2.1
Bug Fixes
- check the format of the index of each attachment (b5d0cb7)
Links
4.2.0
Features
Links
... (truncated)
Changelog
Sourced from socket.io-parser's changelog.
4.2.3 (2023-05-22)
Bug Fixes
- check the format of the event name (3b78117)
4.2.2 (2023-01-19)
Bug Fixes
- calling destroy() should clear all internal state (22c42e3)
- do not modify the input packet upon encoding (ae8dd88)
3.3.3 (2022-11-09)
Bug Fixes
- check the format of the index of each attachment (fb21e42)
3.4.2 (2022-11-09)
Bug Fixes
- check the format of the index of each attachment (04d23ce)
4.2.1 (2022-06-27)
Bug Fixes
- check the format of the index of each attachment (b5d0cb7)
Commits
b6c824fchore(release): 4.2.3dcc70d9refactor: export typescript declarations for the commonjs build3b78117fix: check the format of the event name0841bd5chore: bump ua-parser-js from 1.0.32 to 1.0.33 (#121)28dd668chore(release): 4.2.222c42e3fix: calling destroy() should clear all internal stateae8dd88fix: do not modify the input packet upon encoding9143aa4chore: update browserslist194a9b7ci: migrate from zuul to webdriver.ioa9758daci: update actions in GitHub Actions workflows (#117)- Additional commits viewable in compare view
Updates socket.io from 4.5.1 to 4.6.1
Release notes
Sourced from socket.io's releases.
4.6.1
Bug Fixes
- properly handle manually created dynamic namespaces (0d0a7a2)
- types: fix nodenext module resolution compatibility (#4625) (d0b22c6)
Links
- Diff: https://github.com/socketio/socket.io/compare/4.6.0...4.6.1
- Client release: 4.6.1
engine.io@~6.4.1(diff)ws@~8.11.0(no change)4.6.0
Bug Fixes
- add timeout method to remote socket (#4558) (0c0eb00)
- typings: properly type emits with timeout (f3ada7d)
Features
Promise-based acknowledgements
This commit adds some syntactic sugar around acknowledgements:
emitWithAck()try { const responses = await io.timeout(1000).emitWithAck("some-event"); console.log(responses); // one response per client } catch (e) { // some clients did not acknowledge the event in the given delay }io.on("connection", async (socket) => { // without timeout const response = await socket.emitWithAck("hello", "world");
// with a specific timeout try { const response = await socket.timeout(1000).emitWithAck("hello", "world"); } catch (err) { // the client did not acknowledge the event in the given delay } });
serverSideEmitWithAck()
... (truncated)
Changelog
Sourced from socket.io's changelog.
4.6.1 (2023-02-20)
Bug Fixes
- properly handle manually created dynamic namespaces (0d0a7a2)
- types: fix nodenext module resolution compatibility (#4625) (d0b22c6)
Dependencies
engine.io@~6.4.0(no change)ws@~8.11.0(no change)4.6.0 (2023-02-07)
Bug Fixes
- add timeout method to remote socket (#4558) (0c0eb00)
- typings: properly type emits with timeout (f3ada7d)
Features
Promise-based acknowledgements
This commit adds some syntactic sugar around acknowledgements:
emitWithAck()try { const responses = await io.timeout(1000).emitWithAck("some-event"); console.log(responses); // one response per client } catch (e) { // some clients did not acknowledge the event in the given delay }io.on("connection", async (socket) => { // without timeout const response = await socket.emitWithAck("hello", "world");
// with a specific timeout try { const response = await socket.timeout(1000).emitWithAck("hello", "world"); } catch (err) { // the client did not acknowledge the event in the given delay </tr></table>
... (truncated)
Commits
7952312chore(release): 4.6.10d0a7a2fix: properly handle manually created dynamic namespaces2a8565frefactor: catch errors when trying to restore the connection stated0b22c6fix(types): fix nodenext module resolution compatibility (#4625)e71f3d7docs: minor style fix (#4619)a2e5d1fchore(release): 4.6.0d8143ccrefactor: do not persist session if connection state recovery if disabledb2dd7cfchore: bump engine.io to version 6.4.03734b74revert: feat: expose current offset to allow deduplication8aa9499feat: add description to the disconnecting and disconnect events (#4622)- Additional commits viewable in compare view
You can trigger a rebase of this PR by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the Security Alerts page.