just set up hyperdrive through a tunnel to a local posgres database, this is amazing!
just set up hyperdrive through a tunnel to a local posgres database, this is amazing!

headless: true in the browser creation in ec2. But from what it looks like Cloudflare should be defaulting headless. Has anyone seen this issue and found a way to work around it? I'm logging out the browser version and seeing Chrome/120.0.6099.321 , so maybe it's not headless (or it could be "new" headless, we're likely using old headless on ec2). Update I was able to hack this by using an evaluate call to set overflow hidden on html, but would love a better solution.@cloudflare/vitest-pool-workers: As of 0.5.33 the AbortSignal support has now been added and released, was pretty interesting and fun to work on and hopefully this helps others that are wanting to test their workers correctly handle these 


webSocketClose isn't called when the websocket isn't closed cleanly which causes the duration to build.
this.state.acceptWebSocket()?deleteAll():webSocketClose() in my code and I haven't had any issues with duration chargesCannot use assets and tail consumers in the same Worker. Tail Workers are not yet supported for Workers with assets)))JWTs can't easily be expunged/expiredTrue, but in your initial question you were concerned about writes to KV/DO/D1. If you validated the JWT on every request, it would still only be a a one-time write, and then reads after that, and if you wanted to expire it for some reason it would be 1 extra write.
async fetch(request: Request) {
await this.ensureMessagesInitialized();
const webSocketPair = new WebSocketPair();
const [client, server] = Object.values(webSocketPair);
this.ctx.acceptWebSocket(server);
return new Response(null, {
status: 101,
webSocket: client,
});
}async webSocketClose(
ws: WebSocket,
code: number,
reason: string,
wasClean: boolean,
) {
// cleaning up storage if you want, or remove if you prefer not to delete
await this.state.storage.deleteAll();
ws.close(code, "durable object is closing websocket");
}