diff --git a/package-lock.json b/package-lock.json index 01307a8a2..47b8a474c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -63,7 +63,7 @@ "uuid": "^8.3.2", "winston": "^3.3.3", "winston-transport": "^4.4.0", - "ws": "^7.5.1", + "ws": "^8.0.0", "yargs": "^17.0.1" }, "bin": { @@ -12361,6 +12361,27 @@ "node": ">=6" } }, + "node_modules/jsdom/node_modules/ws": { + "version": "7.5.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz", + "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==", + "dev": true, + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, "node_modules/jsesc": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", @@ -17022,11 +17043,11 @@ } }, "node_modules/ws": { - "version": "7.5.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.1.tgz", - "integrity": "sha512-2c6faOUH/nhoQN6abwMloF7Iyl0ZS2E9HGtsiLrWn0zOOMWlhtDmdf/uihDt6jnuCxgtwGBNy6Onsoy2s2O2Ow==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.0.0.tgz", + "integrity": "sha512-6AcSIXpBlS0QvCVKk+3cWnWElLsA6SzC0lkQ43ciEglgXJXiCWK3/CGFEJ+Ybgp006CMibamAsqOlxE9s4AvYA==", "engines": { - "node": ">=8.3.0" + "node": ">=10.0.0" }, "peerDependencies": { "bufferutil": "^4.0.1", @@ -26848,6 +26869,13 @@ "punycode": "^2.1.1", "universalify": "^0.1.2" } + }, + "ws": { + "version": "7.5.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz", + "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==", + "dev": true, + "requires": {} } } }, @@ -30553,9 +30581,9 @@ } }, "ws": { - "version": "7.5.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.1.tgz", - "integrity": "sha512-2c6faOUH/nhoQN6abwMloF7Iyl0ZS2E9HGtsiLrWn0zOOMWlhtDmdf/uihDt6jnuCxgtwGBNy6Onsoy2s2O2Ow==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.0.0.tgz", + "integrity": "sha512-6AcSIXpBlS0QvCVKk+3cWnWElLsA6SzC0lkQ43ciEglgXJXiCWK3/CGFEJ+Ybgp006CMibamAsqOlxE9s4AvYA==", "requires": {} }, "xdg-basedir": { diff --git a/package.json b/package.json index 4a3a33cb3..e42994cfb 100644 --- a/package.json +++ b/package.json @@ -129,7 +129,7 @@ "uuid": "^8.3.2", "winston": "^3.3.3", "winston-transport": "^4.4.0", - "ws": "^7.5.1", + "ws": "^8.0.0", "yargs": "^17.0.1" }, "devDependencies": { diff --git a/test/integration/WebSocketsProtocol.test.ts b/test/integration/WebSocketsProtocol.test.ts index 5ad84c9ff..7fa961cf3 100644 --- a/test/integration/WebSocketsProtocol.test.ts +++ b/test/integration/WebSocketsProtocol.test.ts @@ -46,7 +46,7 @@ describe('A server with the Solid WebSockets API behind a proxy', (): void => { beforeAll(async(): Promise => { client = new WebSocket(`ws://localhost:${port}`, [ 'solid-0.1' ], { headers }); - client.on('message', (message: string): any => messages.push(message)); + client.on('message', (message: Buffer): any => messages.push(message.toString())); await new Promise((resolve): any => client.on('open', resolve)); }); diff --git a/test/unit/server/WebSocketServerFactory.test.ts b/test/unit/server/WebSocketServerFactory.test.ts index a79e6b237..4e422aa0a 100644 --- a/test/unit/server/WebSocketServerFactory.test.ts +++ b/test/unit/server/WebSocketServerFactory.test.ts @@ -47,8 +47,8 @@ describe('SimpleWebSocketHandler', (): void => { it('has a functioning WebSockets interface.', async(): Promise => { const client = new WebSocket('ws://localhost:5556'); - const text = await new Promise((resolve): any => client.on('message', resolve)); - expect(text).toBe('SimpleWebSocketHandler'); + const buffer = await new Promise((resolve): any => client.on('message', resolve)); + expect(buffer.toString()).toBe('SimpleWebSocketHandler'); expect(webSocketHandler.host).toBe('localhost:5556'); }); });