MCPcopy Create free account
hub / github.com/ReviewStage/stage-cli / getDb

Function getDb

packages/cli/src/db/client.ts:20–34  ·  view source on GitHub ↗
(opts: { dbPath?: string } = {})

Source from the content-addressed store, hash-verified

18let cached: CachedHandle | null = null;
19
20export function getDb(opts: { dbPath?: string } = {}): StageDb {
21 const dbPath = opts.dbPath ?? getDbPath();
22 if (cached && cached.path === dbPath) return cached.drizzle;
23 if (cached) closeDb();
24
25 const sqlite = new Database(dbPath);
26 sqlite.pragma("journal_mode = WAL");
27 sqlite.pragma("foreign_keys = ON");
28
29 const db = drizzle(sqlite, { schema });
30 migrate(db, { migrationsFolder: findMigrationsFolder() });
31
32 cached = { sqlite, drizzle: db, path: dbPath };
33 return db;
34}
35
36export function closeDb(): void {
37 if (!cached) return;

Callers 15

showFunction · 0.85
importChaptersFileFunction · 0.85
startWithRoutesFunction · 0.85
seedRunFunction · 0.85
insertRunFunction · 0.85
startFunction · 0.85
insertRunFunction · 0.85
startFunction · 0.85
startWithRoutesFunction · 0.85
insertCommittedRunFunction · 0.85

Calls 3

getDbPathFunction · 0.85
closeDbFunction · 0.85
findMigrationsFolderFunction · 0.85

Tested by 12

startWithRoutesFunction · 0.68
seedRunFunction · 0.68
insertRunFunction · 0.68
startFunction · 0.68
insertRunFunction · 0.68
startFunction · 0.68
startWithRoutesFunction · 0.68
insertCommittedRunFunction · 0.68
insertWorkingTreeRunFunction · 0.68
startWithRoutesFunction · 0.68
startWithRoutesFunction · 0.68
seedRunFunction · 0.68