Files
setup-uv/src/download/checksum/update-known-checksums.ts
William Woodruff 7211c71869 Use JSON + a typed wrapper instead of TS codegen (#1025)
Signed-off-by: William Woodruff <william@yossarian.net>
2026-08-19 17:54:07 -04:00

26 lines
592 B
TypeScript

import { promises as fs } from "node:fs";
export interface ChecksumEntry {
key: string;
checksum: string;
}
export async function updateChecksums(
filePath: string,
checksumEntries: ChecksumEntry[],
): Promise<void> {
const deduplicatedEntries = new Map<string, string>();
for (const entry of checksumEntries) {
if (deduplicatedEntries.has(entry.key)) {
continue;
}
deduplicatedEntries.set(entry.key, entry.checksum);
}
const content = `${JSON.stringify(Object.fromEntries(deduplicatedEntries), null, 2)}\n`;
await fs.writeFile(filePath, content);
}