in src/util.ts [7:21]
export async function mkdtemp(closure: (dir: string) => Promise<void>) {
const workdir = await fs.mkdtemp(path.join(os.tmpdir(), 'temp-'));
try {
await closure(workdir);
if (!process.env.RETAIN_TMP) {
await fs.remove(workdir);
} else {
console.error(`NOTE: Temp directory retained (RETAIN_TMP=1): ${workdir}`);
}
} catch (e) {
console.error(`NOTE: Temp directory retained due to an error: ${workdir}`);
throw e;
}
}