Major version update. Major bugfixes. Security vulnerabilites fixed

This commit is contained in:
2026-10-14 03:02:07 +01:00
parent 4e47bd8ce0
commit 7c095f6f16
112 changed files with 2479 additions and 1219 deletions
+16
View File
@@ -0,0 +1,16 @@
import fs from "fs";
/**
* # Replace the database file with a copy of `src`
* @description All connections to `db_file_path` must be closed first.
* Leftover `-wal`/`-shm`/`-journal` files are removed so SQLite doesn't
* replay stale pages onto the new file, and the copy is swapped in with an
* atomic rename.
*/
export default function replaceDbFile({ src, db_file_path }) {
const tmp_file_path = `${db_file_path}.replace-${Date.now()}`;
fs.copyFileSync(src, tmp_file_path);
for (const suffix of ["-wal", "-shm", "-journal"]) {
fs.rmSync(`${db_file_path}${suffix}`, { force: true });
}
fs.renameSync(tmp_file_path, db_file_path);
}