From f42e43e12e7689fef47fb7af3eae625eedbb9d6c Mon Sep 17 00:00:00 2001 From: Yuqian Yang Date: Tue, 17 Jun 2025 15:14:48 +0800 Subject: mail: skip saving if cc myself, mark sent as read. --- deno/base/deno.json | 1 - deno/base/log.ts | 60 ----------------------------------------------------- 2 files changed, 61 deletions(-) delete mode 100644 deno/base/log.ts (limited to 'deno/base') diff --git a/deno/base/deno.json b/deno/base/deno.json index dabc02a..52baaa5 100644 --- a/deno/base/deno.json +++ b/deno/base/deno.json @@ -5,6 +5,5 @@ ".": "./lib.ts", "./config": "./config.ts", "./cron": "./cron.ts", - "./log": "./log.ts" } } diff --git a/deno/base/log.ts b/deno/base/log.ts deleted file mode 100644 index 940f569..0000000 --- a/deno/base/log.ts +++ /dev/null @@ -1,60 +0,0 @@ -import { join } from "@std/path"; - -import { toFileNameString } from "./lib.ts"; - -export interface ExternalLogStream extends Disposable { - stream: WritableStream; -} - -export class LogFileProvider { - #directory: string; - - constructor(directory: string) { - this.#directory = directory; - Deno.mkdirSync(directory, { recursive: true }); - } - - async createExternalLogStream( - name: string, - options?: { - noTime?: boolean; - }, - ): Promise { - if (name.includes("/")) { - throw new Error(`External log stream's name (${name}) contains '/'.`); - } - - const logPath = join( - this.#directory, - options?.noTime === true - ? name - : `${name}-${toFileNameString(new Date())}`, - ); - - const file = await Deno.open(logPath, { - read: false, - write: true, - append: true, - create: true, - }); - return { - stream: file.writable, - [Symbol.dispose]: file[Symbol.dispose].bind(file), - }; - } - - async createExternalLogStreamsForProgram( - program: string, - ): Promise<{ stdout: WritableStream; stderr: WritableStream } & Disposable> { - const stdout = await this.createExternalLogStream(`${program}-stdout`); - const stderr = await this.createExternalLogStream(`${program}-stderr`); - return { - stdout: stdout.stream, - stderr: stderr.stream, - [Symbol.dispose]: () => { - stdout[Symbol.dispose](); - stderr[Symbol.dispose](); - }, - }; - } -} -- cgit v1.2.3