summary refs log tree commit diff
path: root/src/gateway/events/Connection.ts
diff options
context:
space:
mode:
authorRory& <root@rory.gay>2025-10-17 11:58:53 +0200
committerRory& <root@rory.gay>2025-10-17 11:58:53 +0200
commit37594a5bec8574e1c4b5d5dcb2d45b055ee3c58c (patch)
treee55d944bd6f7f43c3e02be64d5d472c1aecae7d9 /src/gateway/events/Connection.ts
parentMarshall ajverrors (diff)
downloadserver-ts-37594a5bec8574e1c4b5d5dcb2d45b055ee3c58c.tar.xz
ZSTD on gateway
Diffstat (limited to 'src/gateway/events/Connection.ts')
-rw-r--r--src/gateway/events/Connection.ts12
1 files changed, 5 insertions, 7 deletions
diff --git a/src/gateway/events/Connection.ts b/src/gateway/events/Connection.ts

index b187019e9..bc74dee65 100644 --- a/src/gateway/events/Connection.ts +++ b/src/gateway/events/Connection.ts
@@ -28,7 +28,8 @@ import { Message } from "./Message"; import { Deflate, Inflate } from "fast-zlib"; import { URL } from "url"; import { Config, ErlpackType } from "@spacebar/util"; -// import zlib from "node:zlib"; +import zlib from "node:zlib"; +import { Decoder, Encoder } from "@toondepauw/node-zstd"; let erlpack: ErlpackType | null = null; try { @@ -108,7 +109,7 @@ export async function Connection( return socket.close(CLOSECODES.Decode_error); if (socket.encoding === "etf" && !erlpack) - throw new Error("Erlpack is not installed: 'npm i erlpack'"); + throw new Error("Erlpack is not installed: 'npm i @yukikaze-bot/erlpack'"); socket.version = Number(searchParams.get("version")) || 8; if (socket.version != 8) @@ -121,11 +122,8 @@ export async function Connection( socket.deflate = new Deflate(); socket.inflate = new Inflate(); } else if (socket.compress === "zstd-stream") { - // TODO - return socket.close( - CLOSECODES.Decode_error - ); - + socket.zstdEncoder = new Encoder(6); + socket.zstdDecoder = new Decoder(); } else { return socket.close(CLOSECODES.Decode_error); }