Repository navigation
[Snyk] Upgrade socket.io from 4.4.1 to 4.7.4 - #41
X-oss-byte wants to merge 1 commit into
Conversation
Snyk has created this PR to upgrade socket.io from 4.4.1 to 4.7.4. See this package in npm: https://www.npmjs.com/package/socket.io See this project in Snyk: https://app.snyk.io/org/sammytezzy/project/baae60b0-b551-4edb-bcb1-55eb7c12e4a6?utm_source=github&utm_medium=referral&page=upgrade-pr
|
|
|
There was a problem hiding this comment.
PR Type: Enhancement
PR Summary: The pull request upgrades the socket.io package from version 4.4.1 to 4.7.4 in the express-session example. This update includes several bug fixes and new features, such as improved typings and support for WebTransport, as well as important security fixes for vulnerabilities in the engine.io and socket.io-parser packages.
Decision: Comment
📝 Type: 'Enhancement' - not supported yet.
- Sourcery currently only approves 'Typo fix' PRs.
✅ Issue addressed: this change correctly addresses the issue or implements the desired feature.
No details provided.
✅ Small diff: the diff is small enough to approve with confidence.
No details provided.
General suggestions:
- Ensure that the application has been thoroughly tested with the new version of socket.io to confirm that all existing functionality continues to work as expected.
- Review the release notes and commit history for socket.io to understand the changes that may affect the application, especially if there are any breaking changes or deprecations.
- Consider the broader impact of the upgrade on the project, such as compatibility with other dependencies and the need for changes in the application code to leverage new features or comply with updated APIs.
Thanks for using Sourcery. We offer it for free for open source projects and would be very grateful if you could help us grow. If you like it, would you consider sharing Sourcery on your favourite social media? ✨
This PR was automatically created by Snyk using the credentials of a real user.
Snyk has created this PR to upgrade socket.io from 4.4.1 to 4.7.4.
ℹ️ Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.
The recommended version fixes:
SNYK-JS-ENGINEIO-3136336
Why? Has a fix available, CVSS 7.5
SNYK-JS-ENGINEIO-5496331
Why? Has a fix available, CVSS 7.5
SNYK-JS-SOCKETIOPARSER-5596892
Why? Has a fix available, CVSS 7.5
(*) Note that the real score may have changed since the PR was raised.
Release notes
Package name: socket.io
-
4.7.4 - 2024-01-12
- typings: calling io.emit with no arguments incorrectly errored (cb6d2e0), closes #4914
- Diff: 4.7.3...4.7.4
- Client release: 4.7.4
-
4.7.3 - 2024-01-03
- return the first response when broadcasting to a single socket (#4878) (df8e70f)
- typings: allow to bind to a non-secure Http2Server (#4853) (8c9ebc3)
- Diff: 4.7.2...4.7.3
- Client release: 4.7.3
-
4.7.2 - 2023-08-02
- clean up child namespace when client is rejected in middleware (#4773) (0731c0d)
- webtransport: properly handle WebTransport-only connections (3468a19)
- webtransport: add proper framing (a306db0)
- Diff: 4.7.1...4.7.2
- Client release: 4.7.2
-
4.7.1 - 2023-06-28
- Diff: 4.7.0...4.7.1
- Client release: 4.7.1
-
4.7.0 - 2023-06-22
- remove the Partial modifier from the socket.data type (#4740) (e5c62ca)
- https://w3c.github.io/webtransport/
- https://developer.mozilla.org/en-US/docs/Web/API/WebTransport
- https://developer.chrome.com/articles/webtransport/
https://w3c.github.io/webtransport/#custom-certificate-requirements)
- Diff: 4.6.2...4.7.0
- Client release: 4.7.0
-
4.6.2 - 2023-05-31
- exports: move
- Diff: 4.6.1...4.6.2
- Client release: 4.6.2
-
4.6.1 - 2023-02-20
- properly handle manually created dynamic namespaces (0d0a7a2)
- types: fix nodenext module resolution compatibility (#4625) (d0b22c6)
- Diff: 4.6.0...4.6.1
- Client release: 4.6.1
-
4.6.0 - 2023-02-07
-
4.6.0-alpha1 - 2023-01-25
const sockets = await io.fetchSockets();
-
4.5.4 - 2022-11-22
- Diff: 4.5.3...4.5.4
- Client release: 4.5.4
-
4.5.3 - 2022-10-15
-
4.5.2 - 2022-09-02
-
4.5.1 - 2022-05-17
-
4.5.0 - 2022-04-23
-
4.4.1 - 2022-01-06
from socket.io GitHub release notesBug Fixes
Links
engine.io@~6.5.2(no change)ws@~8.11.0(no change)Bug Fixes
Links
engine.io@~6.5.2(no change)ws@~8.11.0(no change)Bug Fixes
Links
engine.io@~6.5.2(diff)ws@~8.11.0(no change)The client bundle contains a few fixes regarding the WebTransport support.
Links
engine.io@~6.5.0(no change)ws@~8.11.0(no change)Bug Fixes
Features
Support for WebTransport
The Socket.IO server can now use WebTransport as the underlying transport.
WebTransport is a web API that uses the HTTP/3 protocol as a bidirectional transport. It's intended for two-way communications between a web client and an HTTP/3 server.
References:
Until WebTransport support lands in Node.js, you can use the
@ fails-components/webtransportpackage:const cert = readFileSync("/path/to/my/cert.pem");
const key = readFileSync("/path/to/my/key.pem");
const httpsServer = createServer({
key,
cert
});
httpsServer.listen(3000);
const io = new Server(httpsServer, {
transports: ["polling", "websocket", "webtransport"] // WebTransport is not enabled by default
});
const h3Server = new Http3Server({
port: 3000,
host: "0.0.0.0",
secret: "changeit",
cert,
privKey: key,
});
(async () => {
const stream = await h3Server.sessionStream("/socket.io/");
const sessionReader = stream.getReader();
while (true) {
const { done, value } = await sessionReader.read();
if (done) {
break;
}
io.engine.onWebTransportSession(value);
}
})();
h3Server.startServer();">
Added in 123b68c.
Client bundles with CORS headers
The bundles will now have the right
Access-Control-Allow-xxxheaders.Added in 63f181c.
Links
engine.io@~6.5.0(diff)ws@~8.11.0(no change)Bug Fixes
typescondition to the top (#4698) (3d44aae)Links
engine.io@~6.4.2(diff)ws@~8.11.0(no change)Bug Fixes
Links
engine.io@~6.4.1(diff)ws@~8.11.0(no change)Read more
The RemoteSocket interface, which is returned when the client is
connected on another Socket.IO server of the cluster, was lacking the
timeout()method.Syntax:
for (const socket of sockets) {
if (someCondition) {
socket.timeout(1000).emit("some-event", (err) => {
if (err) {
// the client did not acknowledge the event in the given delay
}
});
}
}
Related: #4595
This release contains a bump of:
engine.ioin order to fix CVE-2022-41940socket.io-parserin order to fix CVE-2022-2421.Links:
engine.io@~6.2.1(diff)ws@~8.2.3Commit messages
Package name: socket.io
Compare
Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:
🧐 View latest project report
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs