alchemy 0.82.0 → 0.82.1
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.
- package/bin/alchemy.js +1 -1
- package/lib/cloudflare/d1-database.d.ts +21 -35
- package/lib/cloudflare/d1-database.d.ts.map +1 -1
- package/lib/cloudflare/d1-database.js +57 -100
- package/lib/cloudflare/d1-database.js.map +1 -1
- package/lib/cloudflare/d1-local-migrations.d.ts +3 -4
- package/lib/cloudflare/d1-local-migrations.d.ts.map +1 -1
- package/lib/cloudflare/d1-local-migrations.js +40 -12
- package/lib/cloudflare/d1-local-migrations.js.map +1 -1
- package/lib/cloudflare/d1-migrations.d.ts +0 -8
- package/lib/cloudflare/d1-migrations.d.ts.map +1 -1
- package/lib/cloudflare/d1-migrations.js +0 -35
- package/lib/cloudflare/d1-migrations.js.map +1 -1
- package/lib/cloudflare/d1-sql-file.d.ts +12 -0
- package/lib/cloudflare/d1-sql-file.d.ts.map +1 -0
- package/lib/cloudflare/d1-sql-file.js +38 -0
- package/lib/cloudflare/d1-sql-file.js.map +1 -0
- package/lib/state/d1-state-store.js +8 -8
- package/lib/state/d1-state-store.js.map +1 -1
- package/package.json +1 -1
- package/src/cloudflare/d1-database.ts +125 -187
- package/src/cloudflare/d1-local-migrations.ts +56 -18
- package/src/cloudflare/d1-migrations.ts +0 -43
- package/src/cloudflare/d1-sql-file.ts +52 -0
- package/src/state/d1-state-store.ts +8 -10
- package/workers/tunnel-proxy.js +1 -1
|
@@ -1,16 +1,5 @@
|
|
|
1
|
-
import { glob } from "glob";
|
|
2
|
-
import * as fs from "node:fs/promises";
|
|
3
|
-
import path from "pathe";
|
|
4
1
|
import { logger } from "../util/logger.js";
|
|
5
2
|
import { handleApiError } from "./api-error.js";
|
|
6
|
-
const getPrefix = (name) => {
|
|
7
|
-
const prefix = name.split("_")[0];
|
|
8
|
-
const num = Number.parseInt(prefix, 10);
|
|
9
|
-
return Number.isNaN(num) ? null : num;
|
|
10
|
-
};
|
|
11
|
-
async function readMigrationFile(filePath) {
|
|
12
|
-
return fs.readFile(filePath, "utf-8");
|
|
13
|
-
}
|
|
14
3
|
/**
|
|
15
4
|
* Detects the current schema of the migration table.
|
|
16
5
|
* Returns info about the table structure to determine if migration is needed.
|
|
@@ -112,30 +101,6 @@ async function migrateLegacySchema(options, schema) {
|
|
|
112
101
|
throw new Error(`Failed to migrate legacy migration table: ${error}`);
|
|
113
102
|
}
|
|
114
103
|
}
|
|
115
|
-
/**
|
|
116
|
-
* Reads migration SQL files from the migrationsDir, sorted by filename.
|
|
117
|
-
* @param migrationsDir Directory containing .sql migration files
|
|
118
|
-
*/
|
|
119
|
-
export async function listMigrationsFiles(migrationsDir) {
|
|
120
|
-
const entries = await glob("**/*.sql", {
|
|
121
|
-
cwd: migrationsDir,
|
|
122
|
-
});
|
|
123
|
-
const sqlFiles = entries.sort((a, b) => {
|
|
124
|
-
const aNum = getPrefix(a);
|
|
125
|
-
const bNum = getPrefix(b);
|
|
126
|
-
if (aNum !== null && bNum !== null)
|
|
127
|
-
return aNum - bNum;
|
|
128
|
-
if (aNum !== null)
|
|
129
|
-
return -1;
|
|
130
|
-
if (bNum !== null)
|
|
131
|
-
return 1;
|
|
132
|
-
return a.localeCompare(b);
|
|
133
|
-
});
|
|
134
|
-
return await Promise.all(sqlFiles.map(async (file) => ({
|
|
135
|
-
id: file,
|
|
136
|
-
sql: await readMigrationFile(path.join(migrationsDir, file)),
|
|
137
|
-
})));
|
|
138
|
-
}
|
|
139
104
|
/**
|
|
140
105
|
* Ensures the migrations table exists in the D1 database with wrangler-compatible schema.
|
|
141
106
|
* Handles migration from legacy 2-column schema to 3-column schema if needed.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d1-migrations.js","sourceRoot":"","sources":["../../src/cloudflare/d1-migrations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"d1-migrations.js","sourceRoot":"","sources":["../../src/cloudflare/d1-migrations.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export interface D1SqlFile {
|
|
2
|
+
id: string;
|
|
3
|
+
sql: string;
|
|
4
|
+
hash: string;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Lists SQL files from the directory, sorted by filename.
|
|
8
|
+
* @param directory Directory containing .sql files
|
|
9
|
+
*/
|
|
10
|
+
export declare function listSqlFiles(directory: string): Promise<D1SqlFile[]>;
|
|
11
|
+
export declare function readSqlFile(directory: string, name: string): Promise<D1SqlFile>;
|
|
12
|
+
//# sourceMappingURL=d1-sql-file.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"d1-sql-file.d.ts","sourceRoot":"","sources":["../../src/cloudflare/d1-sql-file.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAmB1E;AAED,wBAAsB,WAAW,CAC/B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,SAAS,CAAC,CAOpB"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import crypto from "node:crypto";
|
|
2
|
+
import fs from "node:fs/promises";
|
|
3
|
+
import path from "pathe";
|
|
4
|
+
/**
|
|
5
|
+
* Lists SQL files from the directory, sorted by filename.
|
|
6
|
+
* @param directory Directory containing .sql files
|
|
7
|
+
*/
|
|
8
|
+
export async function listSqlFiles(directory) {
|
|
9
|
+
const files = await Array.fromAsync(fs.glob("**/*.sql", {
|
|
10
|
+
cwd: directory,
|
|
11
|
+
}));
|
|
12
|
+
const sortedFiles = files.sort((a, b) => {
|
|
13
|
+
const aNum = getPrefix(a);
|
|
14
|
+
const bNum = getPrefix(b);
|
|
15
|
+
if (aNum !== null && bNum !== null)
|
|
16
|
+
return aNum - bNum;
|
|
17
|
+
if (aNum !== null)
|
|
18
|
+
return -1;
|
|
19
|
+
if (bNum !== null)
|
|
20
|
+
return 1;
|
|
21
|
+
return a.localeCompare(b);
|
|
22
|
+
});
|
|
23
|
+
return Promise.all(sortedFiles.map((id) => readSqlFile(directory, id)));
|
|
24
|
+
}
|
|
25
|
+
export async function readSqlFile(directory, name) {
|
|
26
|
+
const sql = await fs.readFile(path.resolve(directory, name), "utf-8");
|
|
27
|
+
const hash = crypto.createHash("sha256").update(sql).digest("hex");
|
|
28
|
+
const file = { id: name, sql, hash };
|
|
29
|
+
// Make the sql property non-enumerable so it's not included in state. This prevents state store errors caused by large sql files.
|
|
30
|
+
Object.defineProperty(file, "sql", { enumerable: false });
|
|
31
|
+
return file;
|
|
32
|
+
}
|
|
33
|
+
const getPrefix = (name) => {
|
|
34
|
+
const prefix = name.split("_")[0];
|
|
35
|
+
const num = Number.parseInt(prefix, 10);
|
|
36
|
+
return Number.isNaN(num) ? null : num;
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=d1-sql-file.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"d1-sql-file.js","sourceRoot":"","sources":["../../src/cloudflare/d1-sql-file.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,OAAO,CAAC;AAQzB;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,SAAiB;IAClD,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,SAAS,CACjC,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE;QAClB,GAAG,EAAE,SAAS;KACf,CAAC,CACH,CAAC;IAEF,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE;QACtD,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAC1B,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAE1B,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,IAAI,GAAG,IAAI,CAAC;QACvD,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,CAAC,CAAC,CAAC;QAC7B,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,CAAC,CAAC;QAE5B,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,WAAW,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,SAAiB,EACjB,IAAY;IAEZ,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;IACtE,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnE,MAAM,IAAI,GAAc,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;IAChD,kIAAkI;IAClI,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;IAC1D,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,EAAE;IACjC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAClC,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACxC,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;AACxC,CAAC,CAAC"}
|
|
@@ -44,10 +44,11 @@ const createDatabaseClient = memoize(async (options) => {
|
|
|
44
44
|
});
|
|
45
45
|
const upsertDatabase = async (api, databaseName) => {
|
|
46
46
|
const { listDatabases, createDatabase } = await import("../cloudflare/d1-database.js");
|
|
47
|
-
const {
|
|
47
|
+
const { listSqlFiles } = await import("../cloudflare/d1-sql-file.js");
|
|
48
|
+
const { applyMigrations } = await import("../cloudflare/d1-migrations.js");
|
|
48
49
|
const migrate = async (databaseId) => {
|
|
49
50
|
await applyMigrations({
|
|
50
|
-
migrationsFiles: await
|
|
51
|
+
migrationsFiles: await listSqlFiles(MIGRATIONS_DIRECTORY),
|
|
51
52
|
migrationsTable: "migrations",
|
|
52
53
|
accountId: api.accountId,
|
|
53
54
|
databaseId,
|
|
@@ -57,18 +58,17 @@ const upsertDatabase = async (api, databaseName) => {
|
|
|
57
58
|
};
|
|
58
59
|
const databases = await listDatabases(api, databaseName);
|
|
59
60
|
if (databases[0]) {
|
|
60
|
-
await migrate(databases[0].
|
|
61
|
+
await migrate(databases[0].uuid);
|
|
61
62
|
return {
|
|
62
|
-
id: databases[0].
|
|
63
|
+
id: databases[0].uuid,
|
|
63
64
|
};
|
|
64
65
|
}
|
|
65
|
-
const
|
|
66
|
+
const database = await createDatabase(api, databaseName, {
|
|
66
67
|
readReplication: { mode: "disabled" },
|
|
67
68
|
});
|
|
68
|
-
|
|
69
|
-
await migrate(res.result.uuid);
|
|
69
|
+
await migrate(database.uuid);
|
|
70
70
|
return {
|
|
71
|
-
id:
|
|
71
|
+
id: database.uuid,
|
|
72
72
|
};
|
|
73
73
|
};
|
|
74
74
|
//# sourceMappingURL=d1-state-store.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d1-state-store.js","sourceRoot":"","sources":["../../src/state/d1-state-store.ts"],"names":[],"mappings":"AACA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EACL,mBAAmB,GAGpB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAM7C;;GAEG;AACH,MAAM,OAAO,YAAa,SAAQ,eAAe;IAGrC;IAFV,YACE,KAAY,EACJ,UAA+B,EAAE;QAEzC,KAAK,CAAC,KAAK,CAAC,CAAC;QAFL,YAAO,GAAP,OAAO,CAA0B;IAG3C,CAAC;IAED,KAAK,CAAC,SAAS;QACb,MAAM,EAAE,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,EAAE,0BAA0B,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;QACvE,MAAM,UAAU,GAAG,IAAI,0BAA0B,CAAC,EAAE,EAAE;YACpD,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;SACxB,CAAC,CAAC;QACH,OAAO,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC9C,CAAC;CACF;AAED,MAAM,oBAAoB,GAAG,OAAO,CAAC,KAAK,EAAE,OAA4B,EAAE,EAAE;IAC1E,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,UAAU,CAClC,MAAM,CAAC,0BAA0B,CAAC,EAClC,cAAc,CACf,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,MAAM,cAAc,CACnC,GAAG,EACH,OAAO,CAAC,YAAY,IAAI,eAAe,CACxC,CAAC;IACF,MAAM,cAAc,GAAmB,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;QAC3D,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,uBAAuB,CAK5C,kBAAkB,EAClB,GAAG,CAAC,IAAI,CACN,aAAa,GAAG,CAAC,SAAS,gBAAgB,QAAQ,CAAC,EAAE,MAAM,EAC3D,EAAE,GAAG,EAAE,MAAM,EAAE,EACf;YACE,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;aACnC;SACF,CACF,CACF,CAAC;QACF,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;QACjC,OAAO;YACL,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;SACzC,CAAC;IACJ,CAAC,CAAC;IACF,OAAO,OAAO,CAAC,cAAc,EAAE;QAC7B,MAAM,EAAE,MAAM,MAAM,CAAC,aAAa,CAAC;KACpC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,MAAM,cAAc,GAAG,KAAK,EAAE,GAAkB,EAAE,YAAoB,EAAE,EAAE;IACxE,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CACpD,8BAA8B,CAC/B,CAAC;IACF,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"d1-state-store.js","sourceRoot":"","sources":["../../src/state/d1-state-store.ts"],"names":[],"mappings":"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"}
|