@paroicms/internal-server-lib 1.21.1 → 1.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -20,12 +20,27 @@ export declare function createOrOpenSqliteConnection(options: {
20
20
  logger: BasicAppLogger;
21
21
  knexLogger?: Knex.Logger;
22
22
  migrateDb: (cn: Knex) => Promise<DbMigrationReport>;
23
+ ensureDependsOn?: {
24
+ dependsOn: string;
25
+ onMismatch: "error" | "reset";
26
+ };
23
27
  }): Promise<{
24
28
  cn: Knex;
25
- isNewDatabase: boolean;
29
+ newDatabase: "created" | "reset" | false;
26
30
  migrationReport: DbMigrationReport;
31
+ databaseId: string;
27
32
  }>;
28
- export declare function executeDdl(cn: Knex, ddlFile: string): Promise<void>;
33
+ export declare function insertNewDatabaseMetadataValues(cn: Knex, options: {
34
+ dbSchemaName: string;
35
+ dependsOn?: string;
36
+ }): Promise<{
37
+ databaseId: string;
38
+ }>;
39
+ export declare function generateDatabaseId(): string;
40
+ export declare function executeDdl(cn: Knex, ddlFile: string, { dropAll }?: {
41
+ dropAll?: boolean;
42
+ }): Promise<void>;
43
+ export declare function dropAllUserTables(cn: Knex): Promise<void>;
29
44
  export declare function getMetadataValue(cn: Knex, { dbSchemaName, key }: {
30
45
  dbSchemaName: string;
31
46
  key: string;
@@ -1,11 +1,12 @@
1
- import { readFile } from "node:fs/promises";
2
1
  import { type } from "arktype";
3
2
  import knex from "knex";
3
+ import { randomUUID } from "node:crypto";
4
+ import { readFile } from "node:fs/promises";
4
5
  import { pathExists } from "./fs-utils.js";
5
6
  export const METADATA_TABLE_NAME = "PaMetadata";
6
7
  export const DB_SCHEMA_VERSION_KEY = "dbSchemaVersion";
7
8
  export async function createOrOpenSqliteConnection(options) {
8
- const { sqliteFile, ddlFile, dbSchemaName, canCreate, migrateDb, logger, knexLogger } = options;
9
+ const { sqliteFile, ddlFile, dbSchemaName, canCreate, migrateDb, logger, knexLogger, ensureDependsOn, } = options;
9
10
  const isNewDatabase = !(await pathExists(sqliteFile));
10
11
  if (isNewDatabase && !canCreate) {
11
12
  throw new Error(`missing '${dbSchemaName}' database`);
@@ -28,14 +29,86 @@ export async function createOrOpenSqliteConnection(options) {
28
29
  idleTimeoutMillis: 30_000,
29
30
  },
30
31
  });
32
+ let wasReset = false;
33
+ let shouldInitializeMetadata = false;
31
34
  if (isNewDatabase) {
32
35
  await executeDdl(cn, ddlFile);
33
36
  logger.info(`created '${dbSchemaName}' database`);
37
+ shouldInitializeMetadata = true;
34
38
  }
35
- const migrationReport = await migrateDb(cn);
36
- return { cn, isNewDatabase, migrationReport };
39
+ let migrationReport = await migrateDb(cn);
40
+ if (migrationReport.migrated && isNewDatabase) {
41
+ throw new Error(`unexpected migration of newly created '${dbSchemaName}' database from version ${migrationReport.fromVersion} to ${migrationReport.schemaVersion}`);
42
+ }
43
+ if (ensureDependsOn) {
44
+ const storedDependsOn = await getMetadataValue(cn, {
45
+ dbSchemaName,
46
+ key: "dependsOn",
47
+ });
48
+ if (storedDependsOn !== ensureDependsOn.dependsOn) {
49
+ if (ensureDependsOn.onMismatch === "error" || isNewDatabase) {
50
+ throw new Error(`[${dbSchemaName}] dependsOn mismatch: expected '${ensureDependsOn.dependsOn}', found '${storedDependsOn}'`);
51
+ }
52
+ logger.info(`[${dbSchemaName}] Reset database due to '${ensureDependsOn.dependsOn}', previous value was '${storedDependsOn}'`);
53
+ await executeDdl(cn, ddlFile, { dropAll: true });
54
+ wasReset = true;
55
+ shouldInitializeMetadata = true;
56
+ migrationReport = await migrateDb(cn);
57
+ }
58
+ }
59
+ let databaseId;
60
+ if (shouldInitializeMetadata) {
61
+ const inserted = await insertNewDatabaseMetadataValues(cn, {
62
+ dbSchemaName,
63
+ dependsOn: ensureDependsOn?.dependsOn,
64
+ });
65
+ databaseId = inserted.databaseId;
66
+ }
67
+ else {
68
+ databaseId = await getMetadataValue(cn, {
69
+ dbSchemaName,
70
+ key: "databaseId",
71
+ });
72
+ if (databaseId === undefined) {
73
+ throw new Error(`[${dbSchemaName}] missing 'databaseId' in '${METADATA_TABLE_NAME}'`);
74
+ }
75
+ }
76
+ return {
77
+ cn,
78
+ newDatabase: isNewDatabase ? "created" : wasReset ? "reset" : false,
79
+ migrationReport,
80
+ databaseId,
81
+ };
37
82
  }
38
- export async function executeDdl(cn, ddlFile) {
83
+ export async function insertNewDatabaseMetadataValues(cn, options) {
84
+ const { dbSchemaName, dependsOn } = options;
85
+ const databaseId = generateDatabaseId();
86
+ await setMetadataValue(cn, {
87
+ dbSchemaName,
88
+ key: "databaseId",
89
+ value: databaseId,
90
+ });
91
+ if (dependsOn) {
92
+ await setMetadataValue(cn, {
93
+ dbSchemaName,
94
+ key: "dependsOn",
95
+ value: dependsOn,
96
+ });
97
+ }
98
+ return { databaseId };
99
+ }
100
+ export function generateDatabaseId() {
101
+ return randomUUID();
102
+ }
103
+ const DropAllUserTablesRowAT = type({
104
+ name: "string",
105
+ type: "string",
106
+ "+": "reject",
107
+ });
108
+ export async function executeDdl(cn, ddlFile, { dropAll } = {}) {
109
+ if (dropAll) {
110
+ await dropAllUserTables(cn);
111
+ }
39
112
  const ddl = await readFile(ddlFile, {
40
113
  encoding: "utf-8",
41
114
  });
@@ -49,6 +122,35 @@ export async function executeDdl(cn, ddlFile) {
49
122
  }
50
123
  }
51
124
  }
125
+ export async function dropAllUserTables(cn) {
126
+ await cn.raw("pragma foreign_keys = 0");
127
+ try {
128
+ const rows = await cn("sqlite_master")
129
+ .select("name", "type")
130
+ .whereIn("type", ["table", "view"])
131
+ .where("name", "not like", "sqlite_%");
132
+ for (const row of rows) {
133
+ const { name, type } = DropAllUserTablesRowAT.assert(row);
134
+ const quotedName = name.replace(/"/g, '"');
135
+ if (type === "view") {
136
+ await cn.raw(`drop view if exists "${quotedName}"`);
137
+ }
138
+ else {
139
+ await cn.raw(`drop table if exists "${quotedName}"`);
140
+ }
141
+ }
142
+ const sqliteSequenceExists = await cn("sqlite_master")
143
+ .select("name")
144
+ .where({ type: "table", name: "sqlite_sequence" })
145
+ .first();
146
+ if (sqliteSequenceExists) {
147
+ await cn.raw("delete from sqlite_sequence");
148
+ }
149
+ }
150
+ finally {
151
+ await cn.raw("pragma foreign_keys = 1");
152
+ }
153
+ }
52
154
  function onlySqlComment(sql) {
53
155
  const lines = sql.split(/\r\n?|\n/);
54
156
  for (let line of lines) {
@@ -110,6 +212,7 @@ export async function setMetadataDbSchemaVersion(cn, { dbSchemaName, value }) {
110
212
  });
111
213
  }
112
214
  const MigrateMetadataTableAT = type({ dbVersion: "number", "+": "reject" });
215
+ // Note: deprecated table
113
216
  async function migrateMetadataTable(cn, dbSchemaName) {
114
217
  const row = await cn("PaDbMetadata")
115
218
  .select("dbVersion")
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite-db-init.js","sourceRoot":"","sources":["../src/sqlite-db-init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sqlite-db-init.js","sourceRoot":"","sources":["../src/sqlite-db-init.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paroicms/internal-server-lib",
3
- "version": "1.21.1",
3
+ "version": "1.22.0",
4
4
  "description": "Common utilitaries for the paroicms server.",
5
5
  "author": "Paroi Team",
6
6
  "keywords": [
@@ -24,10 +24,10 @@
24
24
  },
25
25
  "dependencies": {
26
26
  "@paroi/async-lib": "~0.3.1",
27
- "@paroicms/internal-anywhere-lib": "1.35.1",
28
- "@paroicms/public-anywhere-lib": "0.36.1",
29
- "@paroicms/public-server-lib": "0.46.1",
30
- "@paroicms/script-lib": "0.3.1",
27
+ "@paroicms/internal-anywhere-lib": "1.35.2",
28
+ "@paroicms/public-anywhere-lib": "0.37.0",
29
+ "@paroicms/public-server-lib": "0.47.0",
30
+ "@paroicms/script-lib": "0.3.2",
31
31
  "@typeonly/validator": "~1.1.2",
32
32
  "arktype": "~2.1.20",
33
33
  "knex": "~3.1.0",