Skip to content

chore(deps): bump ws from 8.19.0 to 8.21.3 in /web - #112

Merged
haasonsaas merged 1 commit into
mainfrom
dependabot/npm_and_yarn/web/ws-8.21.1
Sep 2, 2026
Merged

chore(deps): bump ws from 8.19.0 to 8.21.3 in /web#112
haasonsaas merged 1 commit into
mainfrom
dependabot/npm_and_yarn/web/ws-8.21.1

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 26, 2026

Copy link
Copy Markdown
Contributor

Bumps ws from 8.19.0 to 8.21.3.

Release notes

Sourced from ws's releases.

8.21.3

Bug fixes

  • The server now correctly rejects permessage-deflate offers if the incoming client_max_window_bits parameter value is smaller than its configured clientMaxWindowBits (e97a20ea).

8.21.2

Bug fixes

  • Fixed a test for CITGM (2eb3be0b).

8.21.1

Bug fixes

  • Empty fragments are now counted toward the limit (a2f4e7c0).
  • The default values of the maxBufferedChunks and maxFragments options have been reduced (f197ac65).

8.21.0

Features

  • Introduced the maxBufferedChunks and maxFragments options (2b2abd45).

Bug fixes

  • Fixed a remote memory exhaustion DoS vulnerability (2b2abd45).

A high volume of tiny fragments and data chunks could be sent by a peer, using modest network traffic, to crash a ws server or client due to OOM.

import { WebSocket, WebSocketServer } from 'ws';
const wss = new WebSocketServer({ port: 0 }, function () {
const data = Buffer.alloc(1);
const options = { fin: false };
const { port } = wss.address();
const ws = new WebSocket(ws://localhost:${port});
ws.on('open', function () {
(function send() {
ws.send(data, options, function (err) {
if (err) return;
send();
});
})();
});
</tr></table>

... (truncated)

Commits
  • c791e70 [dist] 8.21.3
  • e97a20e [fix] Reject offers with client_max_window_bits below config
  • 787ebf2 [dist] 8.21.2
  • b4d62eb Revert "[ci] Trust Coveralls Homebrew tap"
  • e4bb883 [security] Use GitHub PVR as main reporting channel
  • 2eb3be0 [test] Skip test on Node.js versions where it does not apply
  • ae1de54 [dist] 8.21.1
  • 8e9511b [ci] Trust Coveralls Homebrew tap
  • f197ac6 [fix] Lower default values of maxBufferedChunks and maxFragments
  • 8df8265 [ci] Update actions/checkout action to v7
  • Additional commits viewable in compare view

Note
Automatic rebases have been disabled on this pull request as it has been open for over 30 days.

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update JavaScript code labels Jul 26, 2026
@haasonsaas

Copy link
Copy Markdown
Collaborator

@dependabot rebase

@dependabot dependabot Bot changed the title chore(deps): bump ws from 8.19.0 to 8.21.1 in /web chore(deps): bump ws from 8.19.0 to 8.21.3 in /web Sep 2, 2026
@dependabot
dependabot Bot force-pushed the dependabot/npm_and_yarn/web/ws-8.21.1 branch from 7040124 to d3f00b7 Compare September 2, 2026 01:12
haasonsaas added a commit that referenced this pull request Sep 2, 2026
The `security` job (`cargo audit`) and the `cargo-deny (advisories +
licenses)` job in .github/workflows/ci.yml have been red on main and on
every pull request, including Dependabot PR #112. Both fail on the same
advisory:

  Crate:    h2
  Version:  0.4.10
  Title:    h2 unbounded empty DATA frames
  ID:       RUSTSEC-2026-0258
  URL:      https://rustsec.org/advisories/RUSTSEC-2026-0258

h2 accepted and queued empty DATA frames without limit; on streams that
were not actively drained this could grow memory without bound or panic
on length overflow. Patched in 0.4.16.

h2 is transitive here, reached through hyper-util, hyper-rustls, axum,
reqwest and mockito. `cargo update -p h2` moves it 0.4.10 -> 0.4.19
within the existing semver requirement, so this is a Cargo.lock-only
change; no manifest and no source changes. The advisory is fixed, not
ignored: deny.toml gains no exception and cargo audit gains no
--ignore flag.

Verified locally with cargo-audit 0.22 and cargo-deny against this
Cargo.lock:
- Before: `cargo audit` reports `error: 1 vulnerability found!`
  (RUSTSEC-2026-0258) and `cargo deny check advisories licenses` reports
  `advisories FAILED, licenses ok`.
- After: `cargo audit` exits 0 with only the three pre-existing allowed
  warnings (RUSTSEC-2026-0221 event-listener, RUSTSEC-2026-0097 rand,
  yanked spin 0.9.8), and `cargo deny check advisories licenses` reports
  `advisories ok, licenses ok`.


Claude-Session: https://claude.ai/code/session_01XpuXXVrWCZk3Tq5NRXejNP

Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
@haasonsaas

Copy link
Copy Markdown
Collaborator

@dependabot rebase

Context: #120 just merged, bumping h2 0.4.10 -> 0.4.19 for RUSTSEC-2026-0258. That advisory was failing the security and cargo-deny (advisories + licenses) jobs on this PR for a reason unrelated to the ws bump. Rebasing onto main should clear both.

Bumps [ws](https://github.com/websockets/ws) from 8.19.0 to 8.21.3.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](websockets/ws@8.19.0...8.21.3)

---
updated-dependencies:
- dependency-name: ws
  dependency-version: 8.21.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/npm_and_yarn/web/ws-8.21.1 branch from d3f00b7 to 5558f04 Compare September 2, 2026 01:39
@haasonsaas
haasonsaas merged commit 5ebebc1 into main Sep 2, 2026
12 checks passed
@haasonsaas
haasonsaas deleted the dependabot/npm_and_yarn/web/ws-8.21.1 branch September 2, 2026 01:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update JavaScript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant