rivetkit 2.3.11-rc.9 → 2.3.12-rc.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/dist/browser/client.d.ts +96 -14
- package/dist/browser/client.js +12 -2
- package/dist/browser/client.js.map +1 -1
- package/dist/browser/inspector/client.d.ts +139 -139
- package/dist/browser/inspector/client.js +12 -2
- package/dist/browser/inspector/client.js.map +1 -1
- package/dist/tsup/agent-os/index.cjs +146 -76
- package/dist/tsup/agent-os/index.cjs.map +1 -1
- package/dist/tsup/agent-os/index.d.cts +83 -9
- package/dist/tsup/agent-os/index.d.ts +83 -9
- package/dist/tsup/agent-os/index.js +146 -76
- package/dist/tsup/agent-os/index.js.map +1 -1
- package/dist/tsup/{chunk-IMRDHZM2.cjs → chunk-2D5PNV5A.cjs} +30 -5
- package/dist/tsup/chunk-2D5PNV5A.cjs.map +1 -0
- package/dist/tsup/{chunk-HNHLBM3Y.cjs → chunk-4KGXFC6M.cjs} +42 -5
- package/dist/tsup/chunk-4KGXFC6M.cjs.map +1 -0
- package/dist/tsup/{chunk-C5TORAVP.js → chunk-5UYNV4W6.js} +27 -2
- package/dist/tsup/{chunk-C5TORAVP.js.map → chunk-5UYNV4W6.js.map} +1 -1
- package/dist/tsup/{chunk-BZWKY6WO.cjs → chunk-6ETWXXAZ.cjs} +140 -140
- package/dist/tsup/{chunk-BZWKY6WO.cjs.map → chunk-6ETWXXAZ.cjs.map} +1 -1
- package/dist/tsup/{chunk-QWLJCP3X.js → chunk-6W5VGLFT.js} +42 -5
- package/dist/tsup/chunk-6W5VGLFT.js.map +1 -0
- package/dist/tsup/{chunk-HOZ3ZLZ2.js → chunk-A5BZEQOG.js} +6 -6
- package/dist/tsup/chunk-A5BZEQOG.js.map +1 -0
- package/dist/tsup/{chunk-6SBPWTXJ.cjs → chunk-BEPAAID2.cjs} +10 -9
- package/dist/tsup/chunk-BEPAAID2.cjs.map +1 -0
- package/dist/tsup/chunk-BZX4LYYD.cjs +14 -0
- package/dist/tsup/chunk-BZX4LYYD.cjs.map +1 -0
- package/dist/tsup/chunk-CMZBDX6Z.cjs +243 -0
- package/dist/tsup/chunk-CMZBDX6Z.cjs.map +1 -0
- package/dist/tsup/{chunk-V5CVATRU.cjs → chunk-DIHAXOB7.cjs} +7 -7
- package/dist/tsup/{chunk-V5CVATRU.cjs.map → chunk-DIHAXOB7.cjs.map} +1 -1
- package/dist/tsup/{chunk-LZ4TSBIP.js → chunk-HVHDZDM2.js} +13 -3
- package/dist/tsup/chunk-HVHDZDM2.js.map +1 -0
- package/dist/tsup/{chunk-XOOESJY7.js → chunk-JHHAMABO.js} +2 -2
- package/dist/tsup/{chunk-7AFZMFPQ.js → chunk-JTHHCZCZ.js} +10 -1
- package/dist/tsup/chunk-JTHHCZCZ.js.map +1 -0
- package/dist/tsup/chunk-KRPA4UOE.js +243 -0
- package/dist/tsup/chunk-KRPA4UOE.js.map +1 -0
- package/dist/tsup/{chunk-UEULFXUI.cjs → chunk-KVFIONKQ.cjs} +11 -2
- package/dist/tsup/chunk-KVFIONKQ.cjs.map +1 -0
- package/dist/tsup/chunk-MT33DKU4.js +14 -0
- package/dist/tsup/chunk-MT33DKU4.js.map +1 -0
- package/dist/tsup/{chunk-QVCO6DTZ.js → chunk-OZWVDFCA.js} +8 -7
- package/dist/tsup/chunk-OZWVDFCA.js.map +1 -0
- package/dist/tsup/{chunk-T56IZ42M.cjs → chunk-T4MKKCRF.cjs} +13 -3
- package/dist/tsup/chunk-T4MKKCRF.cjs.map +1 -0
- package/dist/tsup/{chunk-T5XVTVQY.cjs → chunk-VJ4KLJO5.cjs} +3 -3
- package/dist/tsup/{chunk-T5XVTVQY.cjs.map → chunk-VJ4KLJO5.cjs.map} +1 -1
- package/dist/tsup/{chunk-IOLZ3ONU.js → chunk-ZTPFJOBX.js} +3 -3
- package/dist/tsup/client/mod.cjs +6 -6
- package/dist/tsup/client/mod.d.cts +4 -3
- package/dist/tsup/client/mod.d.ts +4 -3
- package/dist/tsup/client/mod.js +5 -5
- package/dist/tsup/common/log.cjs +2 -2
- package/dist/tsup/common/log.js +1 -1
- package/dist/tsup/common/websocket.cjs +3 -3
- package/dist/tsup/common/websocket.js +2 -2
- package/dist/tsup/{config-CZcjyT5B.d.ts → config-C4OSv0QP.d.ts} +92 -7
- package/dist/tsup/{config-rGWrumlO.d.cts → config-DTGoWdkG.d.cts} +92 -7
- package/dist/tsup/{config-BxOimoGX.d.cts → config-ey2I2zz5.d.cts} +46 -6
- package/dist/tsup/{config-BxOimoGX.d.ts → config-ey2I2zz5.d.ts} +46 -6
- package/dist/tsup/{context-B8W8E8nW.d.cts → context-C6cvDNyk.d.cts} +2 -2
- package/dist/tsup/{context-_UrDZhEh.d.ts → context-CMygeBxS.d.ts} +2 -2
- package/dist/tsup/db/drizzle.cjs +18 -10
- package/dist/tsup/db/drizzle.cjs.map +1 -1
- package/dist/tsup/db/drizzle.d.cts +5 -6
- package/dist/tsup/db/drizzle.d.ts +5 -6
- package/dist/tsup/db/drizzle.js +13 -5
- package/dist/tsup/db/drizzle.js.map +1 -1
- package/dist/tsup/db/mod.cjs +5 -175
- package/dist/tsup/db/mod.cjs.map +1 -1
- package/dist/tsup/db/mod.d.cts +11 -4
- package/dist/tsup/db/mod.d.ts +11 -4
- package/dist/tsup/db/mod.js +4 -174
- package/dist/tsup/db/mod.js.map +1 -1
- package/dist/tsup/dynamic/mod.cjs +2 -2
- package/dist/tsup/dynamic/mod.d.cts +3 -2
- package/dist/tsup/dynamic/mod.d.ts +3 -2
- package/dist/tsup/dynamic/mod.js +1 -1
- package/dist/tsup/inspector/mod.cjs +5 -4
- package/dist/tsup/inspector/mod.cjs.map +1 -1
- package/dist/tsup/inspector/mod.d.cts +12 -146
- package/dist/tsup/inspector/mod.d.ts +12 -146
- package/dist/tsup/inspector/mod.js +4 -3
- package/dist/tsup/inspector/mod.js.map +1 -1
- package/dist/tsup/inspector/workflow.cjs +21 -0
- package/dist/tsup/inspector/workflow.cjs.map +1 -0
- package/dist/tsup/inspector/workflow.d.cts +144 -0
- package/dist/tsup/inspector/workflow.d.ts +144 -0
- package/dist/tsup/inspector/workflow.js +21 -0
- package/dist/tsup/inspector/workflow.js.map +1 -0
- package/dist/tsup/inspector-tab/mod.cjs +2 -2
- package/dist/tsup/inspector-tab/mod.d.cts +4 -3
- package/dist/tsup/inspector-tab/mod.d.ts +4 -3
- package/dist/tsup/inspector-tab/mod.js +1 -1
- package/dist/tsup/mod.cjs +743 -247
- package/dist/tsup/mod.cjs.map +1 -1
- package/dist/tsup/mod.d.cts +6 -5
- package/dist/tsup/mod.d.ts +6 -5
- package/dist/tsup/mod.js +670 -174
- package/dist/tsup/mod.js.map +1 -1
- package/dist/tsup/test/mod.cjs +7 -7
- package/dist/tsup/test/mod.d.cts +3 -2
- package/dist/tsup/test/mod.d.ts +3 -2
- package/dist/tsup/test/mod.js +5 -5
- package/dist/tsup/unstable/migrations.d.cts +1 -1
- package/dist/tsup/unstable/migrations.d.ts +1 -1
- package/dist/tsup/utils.cjs +2 -2
- package/dist/tsup/utils.js +1 -1
- package/dist/tsup/workflow/mod.cjs +89 -95
- package/dist/tsup/workflow/mod.cjs.map +1 -1
- package/dist/tsup/workflow/mod.d.cts +5 -4
- package/dist/tsup/workflow/mod.d.ts +5 -4
- package/dist/tsup/workflow/mod.js +86 -92
- package/dist/tsup/workflow/mod.js.map +1 -1
- package/package.json +19 -9
- package/src/actor/config.test.ts +65 -1
- package/src/actor/config.ts +169 -5
- package/src/actor/mod.ts +10 -1
- package/src/client/actor-common.ts +5 -14
- package/src/common/database/config.ts +50 -3
- package/src/common/database/mod.test.ts +142 -4
- package/src/common/database/mod.ts +210 -98
- package/src/common/database/native-database.ts +42 -3
- package/src/common/database/shared.ts +9 -0
- package/src/db/drizzle.test.ts +8 -1
- package/src/db/drizzle.ts +15 -4
- package/src/db/mod.ts +3 -0
- package/src/inspector/workflow.ts +61 -0
- package/src/registry/napi-runtime.ts +69 -1
- package/src/registry/native.ts +474 -161
- package/src/registry/run-handler-coordinator.test.ts +252 -0
- package/src/registry/run-handler-coordinator.ts +219 -0
- package/src/registry/runtime.ts +34 -1
- package/src/registry/wasm-runtime.ts +122 -17
- package/src/utils/node.ts +44 -28
- package/src/workflow/driver.ts +56 -58
- package/src/workflow/inspector.ts +10 -15
- package/src/workflow/mod.ts +48 -70
- package/dist/tsup/chunk-6SBPWTXJ.cjs.map +0 -1
- package/dist/tsup/chunk-7AFZMFPQ.js.map +0 -1
- package/dist/tsup/chunk-HNHLBM3Y.cjs.map +0 -1
- package/dist/tsup/chunk-HOZ3ZLZ2.js.map +0 -1
- package/dist/tsup/chunk-IMRDHZM2.cjs.map +0 -1
- package/dist/tsup/chunk-LZ4TSBIP.js.map +0 -1
- package/dist/tsup/chunk-QVCO6DTZ.js.map +0 -1
- package/dist/tsup/chunk-QWLJCP3X.js.map +0 -1
- package/dist/tsup/chunk-T56IZ42M.cjs.map +0 -1
- package/dist/tsup/chunk-UEULFXUI.cjs.map +0 -1
- /package/dist/tsup/{chunk-XOOESJY7.js.map → chunk-JHHAMABO.js.map} +0 -0
- /package/dist/tsup/{chunk-IOLZ3ONU.js.map → chunk-ZTPFJOBX.js.map} +0 -0
package/dist/tsup/db/mod.cjs
CHANGED
|
@@ -1,180 +1,10 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
var _chunkUEULFXUIcjs = require('../chunk-UEULFXUI.cjs');
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
var _chunkT56IZ42Mcjs = require('../chunk-T56IZ42M.cjs');
|
|
3
|
+
var _chunkCMZBDX6Zcjs = require('../chunk-CMZBDX6Z.cjs');
|
|
4
|
+
require('../chunk-KVFIONKQ.cjs');
|
|
5
|
+
require('../chunk-T4MKKCRF.cjs');
|
|
11
6
|
require('../chunk-4FC7TVS6.cjs');
|
|
12
7
|
|
|
13
|
-
// src/common/database/mod.ts
|
|
14
|
-
function hasMultipleStatements(query) {
|
|
15
|
-
const trimmed = query.trim().replace(/;+$/, "").trimEnd();
|
|
16
|
-
return trimmed.includes(";");
|
|
17
|
-
}
|
|
18
|
-
function db({
|
|
19
|
-
onMigrate,
|
|
20
|
-
warnOnManualTransactions = true
|
|
21
|
-
} = {}) {
|
|
22
|
-
return {
|
|
23
|
-
createClient: async (ctx) => {
|
|
24
|
-
const nativeDatabaseProvider = ctx.nativeDatabaseProvider;
|
|
25
|
-
if (!nativeDatabaseProvider) {
|
|
26
|
-
throw new Error(
|
|
27
|
-
"native SQLite is required, but the current runtime did not provide a native database provider"
|
|
28
|
-
);
|
|
29
|
-
}
|
|
30
|
-
const db2 = await nativeDatabaseProvider.open(ctx.actorId);
|
|
31
|
-
let closed = false;
|
|
32
|
-
let manualTransactionWarned = false;
|
|
33
|
-
const ensureOpen = () => {
|
|
34
|
-
if (closed) {
|
|
35
|
-
throw new Error(
|
|
36
|
-
"Database is closed. This usually means a background timer (setInterval, setTimeout) or a stray promise is still running after the actor stopped. Use c.abortSignal to clean up timers before the actor shuts down."
|
|
37
|
-
);
|
|
38
|
-
}
|
|
39
|
-
};
|
|
40
|
-
const createClient = (target, transactionScoped = false) => ({
|
|
41
|
-
execute: async (query, ...args) => {
|
|
42
|
-
var _a, _b, _c, _d;
|
|
43
|
-
ensureOpen();
|
|
44
|
-
if (!transactionScoped && warnOnManualTransactions && !manualTransactionWarned && !hasMultipleStatements(query) && _chunkUEULFXUIcjs.isManualTransactionControl.call(void 0, query)) {
|
|
45
|
-
manualTransactionWarned = true;
|
|
46
|
-
_chunkT56IZ42Mcjs.getLogger.call(void 0, "database").warn(
|
|
47
|
-
{ actorId: ctx.actorId },
|
|
48
|
-
"Manual cross-call SQLite transactions can interleave with other actor work. Use db.transaction() for coordinated transactions. Set warnOnManualTransactions: false in your db(...) configuration to disable this warning."
|
|
49
|
-
);
|
|
50
|
-
}
|
|
51
|
-
const kvReadsBefore = _nullishCoalesce(((_a = ctx.metrics) == null ? void 0 : _a.totalKvReads), () => ( 0));
|
|
52
|
-
const kvWritesBefore = _nullishCoalesce(((_b = ctx.metrics) == null ? void 0 : _b.totalKvWrites), () => ( 0));
|
|
53
|
-
const start = performance.now();
|
|
54
|
-
try {
|
|
55
|
-
if (args.length > 0) {
|
|
56
|
-
const bindings = args.length === 1 && _chunkUEULFXUIcjs.isSqliteBindingObject.call(void 0, args[0]) ? _chunkUEULFXUIcjs.toSqliteBindings.call(void 0, args[0]) : _chunkUEULFXUIcjs.toSqliteBindings.call(void 0, args);
|
|
57
|
-
const { rows, columns } = await target.execute(
|
|
58
|
-
query,
|
|
59
|
-
bindings
|
|
60
|
-
);
|
|
61
|
-
return rows.map(
|
|
62
|
-
(row) => rowToObject(row, columns)
|
|
63
|
-
);
|
|
64
|
-
}
|
|
65
|
-
if (!hasMultipleStatements(query)) {
|
|
66
|
-
const { rows, columns } = await target.execute(
|
|
67
|
-
query,
|
|
68
|
-
void 0
|
|
69
|
-
);
|
|
70
|
-
return rows.map(
|
|
71
|
-
(row) => rowToObject(row, columns)
|
|
72
|
-
);
|
|
73
|
-
}
|
|
74
|
-
return await execMultiStatement(target, query);
|
|
75
|
-
} finally {
|
|
76
|
-
const durationMs = performance.now() - start;
|
|
77
|
-
(_c = ctx.metrics) == null ? void 0 : _c.trackSql(query, durationMs);
|
|
78
|
-
if (ctx.metrics) {
|
|
79
|
-
const kvReads = ctx.metrics.totalKvReads - kvReadsBefore;
|
|
80
|
-
const kvWrites = ctx.metrics.totalKvWrites - kvWritesBefore;
|
|
81
|
-
(_d = ctx.log) == null ? void 0 : _d.debug({
|
|
82
|
-
msg: "sql query",
|
|
83
|
-
query: query.slice(0, 120),
|
|
84
|
-
durationMs,
|
|
85
|
-
kvReads,
|
|
86
|
-
kvWrites
|
|
87
|
-
});
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
},
|
|
91
|
-
transaction: async (callback, options) => {
|
|
92
|
-
_chunkUEULFXUIcjs.validateTransactionTimeout.call(void 0, options == null ? void 0 : options.timeout);
|
|
93
|
-
const transaction = await db2.beginTransaction(
|
|
94
|
-
options == null ? void 0 : options.timeout
|
|
95
|
-
);
|
|
96
|
-
const tx = createClient(transaction, true);
|
|
97
|
-
try {
|
|
98
|
-
const result = await callback(tx);
|
|
99
|
-
await transaction.commit();
|
|
100
|
-
return result;
|
|
101
|
-
} catch (error) {
|
|
102
|
-
try {
|
|
103
|
-
await transaction.rollback();
|
|
104
|
-
} catch (e) {
|
|
105
|
-
}
|
|
106
|
-
throw error;
|
|
107
|
-
}
|
|
108
|
-
},
|
|
109
|
-
close: async () => {
|
|
110
|
-
if (!closed) {
|
|
111
|
-
closed = true;
|
|
112
|
-
await db2.close();
|
|
113
|
-
}
|
|
114
|
-
},
|
|
115
|
-
nativeMetrics: () => {
|
|
116
|
-
var _a;
|
|
117
|
-
return _nullishCoalesce(((_a = db2.nativeMetrics) == null ? void 0 : _a.call(db2)), () => ( null));
|
|
118
|
-
}
|
|
119
|
-
});
|
|
120
|
-
const client = createClient(db2);
|
|
121
|
-
return client;
|
|
122
|
-
},
|
|
123
|
-
onMigrate: async (client) => {
|
|
124
|
-
if (onMigrate) {
|
|
125
|
-
await withMigrationSavepoint(
|
|
126
|
-
client,
|
|
127
|
-
(leased) => onMigrate(leased)
|
|
128
|
-
);
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
};
|
|
132
|
-
}
|
|
133
|
-
function rowToObject(row, columns) {
|
|
134
|
-
const rowObj = {};
|
|
135
|
-
for (let i = 0; i < columns.length; i++) {
|
|
136
|
-
rowObj[columns[i]] = row[i];
|
|
137
|
-
}
|
|
138
|
-
return rowObj;
|
|
139
|
-
}
|
|
140
|
-
async function execMultiStatement(db2, query) {
|
|
141
|
-
const results = [];
|
|
142
|
-
let columnNames = null;
|
|
143
|
-
await db2.exec(query, (row, columns) => {
|
|
144
|
-
if (!columnNames) {
|
|
145
|
-
columnNames = columns;
|
|
146
|
-
}
|
|
147
|
-
results.push(rowToObject(row, columnNames));
|
|
148
|
-
});
|
|
149
|
-
return results;
|
|
150
|
-
}
|
|
151
|
-
async function withMigrationSavepoint(client, callback) {
|
|
152
|
-
return await client.transaction(
|
|
153
|
-
async (transaction) => {
|
|
154
|
-
await transaction.execute("SAVEPOINT __rivet_on_migrate");
|
|
155
|
-
try {
|
|
156
|
-
const result = await callback(transaction);
|
|
157
|
-
await transaction.execute(
|
|
158
|
-
"RELEASE SAVEPOINT __rivet_on_migrate"
|
|
159
|
-
);
|
|
160
|
-
return result;
|
|
161
|
-
} catch (error) {
|
|
162
|
-
try {
|
|
163
|
-
await transaction.execute(
|
|
164
|
-
"ROLLBACK TO SAVEPOINT __rivet_on_migrate"
|
|
165
|
-
);
|
|
166
|
-
} finally {
|
|
167
|
-
await transaction.execute(
|
|
168
|
-
"RELEASE SAVEPOINT __rivet_on_migrate"
|
|
169
|
-
);
|
|
170
|
-
}
|
|
171
|
-
throw error;
|
|
172
|
-
}
|
|
173
|
-
},
|
|
174
|
-
{ timeout: _chunkUEULFXUIcjs.MIGRATION_TRANSACTION_TIMEOUT_MS }
|
|
175
|
-
);
|
|
176
|
-
}
|
|
177
|
-
|
|
178
8
|
|
|
179
|
-
exports.db = db;
|
|
9
|
+
exports.db = _chunkCMZBDX6Zcjs.db;
|
|
180
10
|
//# sourceMappingURL=mod.cjs.map
|
package/dist/tsup/db/mod.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/actors/actors/rivetkit-typescript/packages/rivetkit/dist/tsup/db/mod.cjs","../../../src/common/database/mod.ts"],"names":["db"],"mappings":"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","file":"/home/runner/work/actors/actors/rivetkit-typescript/packages/rivetkit/dist/tsup/db/mod.cjs","sourcesContent":[null,"import { getLogger } from \"@/common/log\";\nimport type {\n\tDatabaseProvider,\n\tRawAccess,\n\tSqliteDatabase,\n\tSqliteTransactionDatabase,\n} from \"./config\";\nimport {\n\tisManualTransactionControl,\n\tisSqliteBindingObject,\n\tMIGRATION_TRANSACTION_TIMEOUT_MS,\n\ttoSqliteBindings,\n\tvalidateTransactionTimeout,\n} from \"./shared\";\n\nexport type { RawAccess } from \"./config\";\n\ninterface DatabaseFactoryConfig {\n\tonMigrate?: (db: RawAccess) => Promise<void> | void;\n\twarnOnManualTransactions?: boolean;\n}\n\nfunction hasMultipleStatements(query: string): boolean {\n\tconst trimmed = query.trim().replace(/;+$/, \"\").trimEnd();\n\treturn trimmed.includes(\";\");\n}\n\nexport function db({\n\tonMigrate,\n\twarnOnManualTransactions = true,\n}: DatabaseFactoryConfig = {}): DatabaseProvider<RawAccess> {\n\treturn {\n\t\tcreateClient: async (ctx) => {\n\t\t\tconst nativeDatabaseProvider = ctx.nativeDatabaseProvider;\n\t\t\tif (!nativeDatabaseProvider) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t\"native SQLite is required, but the current runtime did not provide a native database provider\",\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tconst db = await nativeDatabaseProvider.open(ctx.actorId);\n\t\t\tlet closed = false;\n\t\t\tlet manualTransactionWarned = false;\n\t\t\tconst ensureOpen = () => {\n\t\t\t\tif (closed) {\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t\"Database is closed. This usually means a background timer (setInterval, setTimeout) or a stray promise is still running after the actor stopped. Use c.abortSignal to clean up timers before the actor shuts down.\",\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst createClient = (\n\t\t\t\ttarget: SqliteDatabase | SqliteTransactionDatabase,\n\t\t\t\ttransactionScoped = false,\n\t\t\t): RawAccess => ({\n\t\t\t\texecute: async <\n\t\t\t\t\tTRow extends Record<string, unknown> = Record<\n\t\t\t\t\t\tstring,\n\t\t\t\t\t\tunknown\n\t\t\t\t\t>,\n\t\t\t\t>(\n\t\t\t\t\tquery: string,\n\t\t\t\t\t...args: unknown[]\n\t\t\t\t): Promise<TRow[]> => {\n\t\t\t\t\tensureOpen();\n\t\t\t\t\tif (\n\t\t\t\t\t\t!transactionScoped &&\n\t\t\t\t\t\twarnOnManualTransactions &&\n\t\t\t\t\t\t!manualTransactionWarned &&\n\t\t\t\t\t\t!hasMultipleStatements(query) &&\n\t\t\t\t\t\tisManualTransactionControl(query)\n\t\t\t\t\t) {\n\t\t\t\t\t\tmanualTransactionWarned = true;\n\t\t\t\t\t\tgetLogger(\"database\").warn(\n\t\t\t\t\t\t\t{ actorId: ctx.actorId },\n\t\t\t\t\t\t\t\"Manual cross-call SQLite transactions can interleave with other actor work. Use db.transaction() for coordinated transactions. Set warnOnManualTransactions: false in your db(...) configuration to disable this warning.\",\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tconst kvReadsBefore = ctx.metrics?.totalKvReads ?? 0;\n\t\t\t\t\tconst kvWritesBefore = ctx.metrics?.totalKvWrites ?? 0;\n\t\t\t\t\tconst start = performance.now();\n\n\t\t\t\t\ttry {\n\t\t\t\t\t\tif (args.length > 0) {\n\t\t\t\t\t\t\tconst bindings =\n\t\t\t\t\t\t\t\targs.length === 1 &&\n\t\t\t\t\t\t\t\tisSqliteBindingObject(args[0])\n\t\t\t\t\t\t\t\t\t? toSqliteBindings(args[0])\n\t\t\t\t\t\t\t\t\t: toSqliteBindings(args);\n\t\t\t\t\t\t\tconst { rows, columns } = await target.execute(\n\t\t\t\t\t\t\t\tquery,\n\t\t\t\t\t\t\t\tbindings,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\treturn rows.map((row) =>\n\t\t\t\t\t\t\t\trowToObject<TRow>(row, columns),\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (!hasMultipleStatements(query)) {\n\t\t\t\t\t\t\tconst { rows, columns } = await target.execute(\n\t\t\t\t\t\t\t\tquery,\n\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\treturn rows.map((row) =>\n\t\t\t\t\t\t\t\trowToObject<TRow>(row, columns),\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn await execMultiStatement<TRow>(target, query);\n\t\t\t\t\t} finally {\n\t\t\t\t\t\tconst durationMs = performance.now() - start;\n\t\t\t\t\t\tctx.metrics?.trackSql(query, durationMs);\n\t\t\t\t\t\tif (ctx.metrics) {\n\t\t\t\t\t\t\tconst kvReads =\n\t\t\t\t\t\t\t\tctx.metrics.totalKvReads - kvReadsBefore;\n\t\t\t\t\t\t\tconst kvWrites =\n\t\t\t\t\t\t\t\tctx.metrics.totalKvWrites - kvWritesBefore;\n\t\t\t\t\t\t\tctx.log?.debug({\n\t\t\t\t\t\t\t\tmsg: \"sql query\",\n\t\t\t\t\t\t\t\tquery: query.slice(0, 120),\n\t\t\t\t\t\t\t\tdurationMs,\n\t\t\t\t\t\t\t\tkvReads,\n\t\t\t\t\t\t\t\tkvWrites,\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\ttransaction: async <T>(\n\t\t\t\t\tcallback: (tx: RawAccess) => Promise<T> | T,\n\t\t\t\t\toptions?: { timeout?: number },\n\t\t\t\t): Promise<T> => {\n\t\t\t\t\tvalidateTransactionTimeout(options?.timeout);\n\t\t\t\t\tconst transaction = await db.beginTransaction(\n\t\t\t\t\t\toptions?.timeout,\n\t\t\t\t\t);\n\t\t\t\t\tconst tx = createClient(transaction, true);\n\t\t\t\t\ttry {\n\t\t\t\t\t\tconst result = await callback(tx);\n\t\t\t\t\t\tawait transaction.commit();\n\t\t\t\t\t\treturn result;\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tawait transaction.rollback();\n\t\t\t\t\t\t} catch {\n\t\t\t\t\t\t\t// Preserve the callback or commit error after expiry cleanup.\n\t\t\t\t\t\t}\n\t\t\t\t\t\tthrow error;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tclose: async () => {\n\t\t\t\t\tif (!closed) {\n\t\t\t\t\t\tclosed = true;\n\t\t\t\t\t\tawait db.close();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tnativeMetrics: () => db.nativeMetrics?.() ?? null,\n\t\t\t});\n\t\t\tconst client = createClient(db);\n\t\t\treturn client;\n\t\t},\n\t\tonMigrate: async (client) => {\n\t\t\tif (onMigrate) {\n\t\t\t\tawait withMigrationSavepoint(client, (leased) =>\n\t\t\t\t\tonMigrate(leased),\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t};\n}\n\nfunction rowToObject<TRow extends Record<string, unknown>>(\n\trow: unknown[],\n\tcolumns: string[],\n): TRow {\n\tconst rowObj: Record<string, unknown> = {};\n\tfor (let i = 0; i < columns.length; i++) {\n\t\trowObj[columns[i]] = row[i];\n\t}\n\treturn rowObj as TRow;\n}\n\nasync function execMultiStatement<TRow extends Record<string, unknown>>(\n\tdb: Pick<SqliteDatabase, \"exec\">,\n\tquery: string,\n): Promise<TRow[]> {\n\tconst results: Record<string, unknown>[] = [];\n\tlet columnNames: string[] | null = null;\n\tawait db.exec(query, (row: unknown[], columns: string[]) => {\n\t\tif (!columnNames) {\n\t\t\tcolumnNames = columns;\n\t\t}\n\t\tresults.push(rowToObject(row, columnNames));\n\t});\n\treturn results as TRow[];\n}\n\nasync function withMigrationSavepoint<T>(\n\tclient: RawAccess,\n\tcallback: (leased: RawAccess) => Promise<T> | T,\n): Promise<T> {\n\treturn await client.transaction(\n\t\tasync (transaction) => {\n\t\t\tawait transaction.execute(\"SAVEPOINT __rivet_on_migrate\");\n\t\t\ttry {\n\t\t\t\tconst result = await callback(transaction);\n\t\t\t\tawait transaction.execute(\n\t\t\t\t\t\"RELEASE SAVEPOINT __rivet_on_migrate\",\n\t\t\t\t);\n\t\t\t\treturn result;\n\t\t\t} catch (error) {\n\t\t\t\ttry {\n\t\t\t\t\tawait transaction.execute(\n\t\t\t\t\t\t\"ROLLBACK TO SAVEPOINT __rivet_on_migrate\",\n\t\t\t\t\t);\n\t\t\t\t} finally {\n\t\t\t\t\tawait transaction.execute(\n\t\t\t\t\t\t\"RELEASE SAVEPOINT __rivet_on_migrate\",\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t},\n\t\t{ timeout: MIGRATION_TRANSACTION_TIMEOUT_MS },\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/actors/actors/rivetkit-typescript/packages/rivetkit/dist/tsup/db/mod.cjs"],"names":[],"mappings":"AAAA;AACE;AACF,yDAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B;AACE;AACF,kCAAC","file":"/home/runner/work/actors/actors/rivetkit-typescript/packages/rivetkit/dist/tsup/db/mod.cjs"}
|
package/dist/tsup/db/mod.d.cts
CHANGED
|
@@ -1,10 +1,17 @@
|
|
|
1
|
-
import { R as RawAccess, D as DatabaseProvider } from '../config-
|
|
2
|
-
export { A as AnyDatabaseProvider,
|
|
1
|
+
import { R as RawAccess, a as SqliteProfilingOptions, D as DatabaseProvider } from '../config-ey2I2zz5.cjs';
|
|
2
|
+
export { A as AnyDatabaseProvider, b as DatabaseProviderContext, I as InferDatabaseClient, N as NativeDatabaseProvider, c as RawDatabaseClient, d as SqliteBindings, e as SqliteDatabase, f as SqliteNativeMetrics, g as SqliteQueryResult, S as SqliteTransactionOptions } from '../config-ey2I2zz5.cjs';
|
|
3
3
|
|
|
4
4
|
interface DatabaseFactoryConfig {
|
|
5
5
|
onMigrate?: (db: RawAccess) => Promise<void> | void;
|
|
6
6
|
warnOnManualTransactions?: boolean;
|
|
7
|
+
/**
|
|
8
|
+
* SQLite profiling configuration.
|
|
9
|
+
*
|
|
10
|
+
* @experimental This entire configuration surface is experimental and
|
|
11
|
+
* subject to change without notice.
|
|
12
|
+
*/
|
|
13
|
+
profiling?: SqliteProfilingOptions;
|
|
7
14
|
}
|
|
8
|
-
declare function db({ onMigrate, warnOnManualTransactions, }?: DatabaseFactoryConfig): DatabaseProvider<RawAccess>;
|
|
15
|
+
declare function db({ onMigrate, warnOnManualTransactions, profiling, }?: DatabaseFactoryConfig): DatabaseProvider<RawAccess>;
|
|
9
16
|
|
|
10
|
-
export { DatabaseProvider, RawAccess, db };
|
|
17
|
+
export { DatabaseProvider, RawAccess, SqliteProfilingOptions, db };
|
package/dist/tsup/db/mod.d.ts
CHANGED
|
@@ -1,10 +1,17 @@
|
|
|
1
|
-
import { R as RawAccess, D as DatabaseProvider } from '../config-
|
|
2
|
-
export { A as AnyDatabaseProvider,
|
|
1
|
+
import { R as RawAccess, a as SqliteProfilingOptions, D as DatabaseProvider } from '../config-ey2I2zz5.js';
|
|
2
|
+
export { A as AnyDatabaseProvider, b as DatabaseProviderContext, I as InferDatabaseClient, N as NativeDatabaseProvider, c as RawDatabaseClient, d as SqliteBindings, e as SqliteDatabase, f as SqliteNativeMetrics, g as SqliteQueryResult, S as SqliteTransactionOptions } from '../config-ey2I2zz5.js';
|
|
3
3
|
|
|
4
4
|
interface DatabaseFactoryConfig {
|
|
5
5
|
onMigrate?: (db: RawAccess) => Promise<void> | void;
|
|
6
6
|
warnOnManualTransactions?: boolean;
|
|
7
|
+
/**
|
|
8
|
+
* SQLite profiling configuration.
|
|
9
|
+
*
|
|
10
|
+
* @experimental This entire configuration surface is experimental and
|
|
11
|
+
* subject to change without notice.
|
|
12
|
+
*/
|
|
13
|
+
profiling?: SqliteProfilingOptions;
|
|
7
14
|
}
|
|
8
|
-
declare function db({ onMigrate, warnOnManualTransactions, }?: DatabaseFactoryConfig): DatabaseProvider<RawAccess>;
|
|
15
|
+
declare function db({ onMigrate, warnOnManualTransactions, profiling, }?: DatabaseFactoryConfig): DatabaseProvider<RawAccess>;
|
|
9
16
|
|
|
10
|
-
export { DatabaseProvider, RawAccess, db };
|
|
17
|
+
export { DatabaseProvider, RawAccess, SqliteProfilingOptions, db };
|
package/dist/tsup/db/mod.js
CHANGED
|
@@ -1,179 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
validateTransactionTimeout
|
|
7
|
-
} from "../chunk-7AFZMFPQ.js";
|
|
8
|
-
import {
|
|
9
|
-
getLogger
|
|
10
|
-
} from "../chunk-LZ4TSBIP.js";
|
|
2
|
+
db
|
|
3
|
+
} from "../chunk-KRPA4UOE.js";
|
|
4
|
+
import "../chunk-JTHHCZCZ.js";
|
|
5
|
+
import "../chunk-HVHDZDM2.js";
|
|
11
6
|
import "../chunk-ZZ3WBRPD.js";
|
|
12
|
-
|
|
13
|
-
// src/common/database/mod.ts
|
|
14
|
-
function hasMultipleStatements(query) {
|
|
15
|
-
const trimmed = query.trim().replace(/;+$/, "").trimEnd();
|
|
16
|
-
return trimmed.includes(";");
|
|
17
|
-
}
|
|
18
|
-
function db({
|
|
19
|
-
onMigrate,
|
|
20
|
-
warnOnManualTransactions = true
|
|
21
|
-
} = {}) {
|
|
22
|
-
return {
|
|
23
|
-
createClient: async (ctx) => {
|
|
24
|
-
const nativeDatabaseProvider = ctx.nativeDatabaseProvider;
|
|
25
|
-
if (!nativeDatabaseProvider) {
|
|
26
|
-
throw new Error(
|
|
27
|
-
"native SQLite is required, but the current runtime did not provide a native database provider"
|
|
28
|
-
);
|
|
29
|
-
}
|
|
30
|
-
const db2 = await nativeDatabaseProvider.open(ctx.actorId);
|
|
31
|
-
let closed = false;
|
|
32
|
-
let manualTransactionWarned = false;
|
|
33
|
-
const ensureOpen = () => {
|
|
34
|
-
if (closed) {
|
|
35
|
-
throw new Error(
|
|
36
|
-
"Database is closed. This usually means a background timer (setInterval, setTimeout) or a stray promise is still running after the actor stopped. Use c.abortSignal to clean up timers before the actor shuts down."
|
|
37
|
-
);
|
|
38
|
-
}
|
|
39
|
-
};
|
|
40
|
-
const createClient = (target, transactionScoped = false) => ({
|
|
41
|
-
execute: async (query, ...args) => {
|
|
42
|
-
var _a, _b, _c, _d;
|
|
43
|
-
ensureOpen();
|
|
44
|
-
if (!transactionScoped && warnOnManualTransactions && !manualTransactionWarned && !hasMultipleStatements(query) && isManualTransactionControl(query)) {
|
|
45
|
-
manualTransactionWarned = true;
|
|
46
|
-
getLogger("database").warn(
|
|
47
|
-
{ actorId: ctx.actorId },
|
|
48
|
-
"Manual cross-call SQLite transactions can interleave with other actor work. Use db.transaction() for coordinated transactions. Set warnOnManualTransactions: false in your db(...) configuration to disable this warning."
|
|
49
|
-
);
|
|
50
|
-
}
|
|
51
|
-
const kvReadsBefore = ((_a = ctx.metrics) == null ? void 0 : _a.totalKvReads) ?? 0;
|
|
52
|
-
const kvWritesBefore = ((_b = ctx.metrics) == null ? void 0 : _b.totalKvWrites) ?? 0;
|
|
53
|
-
const start = performance.now();
|
|
54
|
-
try {
|
|
55
|
-
if (args.length > 0) {
|
|
56
|
-
const bindings = args.length === 1 && isSqliteBindingObject(args[0]) ? toSqliteBindings(args[0]) : toSqliteBindings(args);
|
|
57
|
-
const { rows, columns } = await target.execute(
|
|
58
|
-
query,
|
|
59
|
-
bindings
|
|
60
|
-
);
|
|
61
|
-
return rows.map(
|
|
62
|
-
(row) => rowToObject(row, columns)
|
|
63
|
-
);
|
|
64
|
-
}
|
|
65
|
-
if (!hasMultipleStatements(query)) {
|
|
66
|
-
const { rows, columns } = await target.execute(
|
|
67
|
-
query,
|
|
68
|
-
void 0
|
|
69
|
-
);
|
|
70
|
-
return rows.map(
|
|
71
|
-
(row) => rowToObject(row, columns)
|
|
72
|
-
);
|
|
73
|
-
}
|
|
74
|
-
return await execMultiStatement(target, query);
|
|
75
|
-
} finally {
|
|
76
|
-
const durationMs = performance.now() - start;
|
|
77
|
-
(_c = ctx.metrics) == null ? void 0 : _c.trackSql(query, durationMs);
|
|
78
|
-
if (ctx.metrics) {
|
|
79
|
-
const kvReads = ctx.metrics.totalKvReads - kvReadsBefore;
|
|
80
|
-
const kvWrites = ctx.metrics.totalKvWrites - kvWritesBefore;
|
|
81
|
-
(_d = ctx.log) == null ? void 0 : _d.debug({
|
|
82
|
-
msg: "sql query",
|
|
83
|
-
query: query.slice(0, 120),
|
|
84
|
-
durationMs,
|
|
85
|
-
kvReads,
|
|
86
|
-
kvWrites
|
|
87
|
-
});
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
},
|
|
91
|
-
transaction: async (callback, options) => {
|
|
92
|
-
validateTransactionTimeout(options == null ? void 0 : options.timeout);
|
|
93
|
-
const transaction = await db2.beginTransaction(
|
|
94
|
-
options == null ? void 0 : options.timeout
|
|
95
|
-
);
|
|
96
|
-
const tx = createClient(transaction, true);
|
|
97
|
-
try {
|
|
98
|
-
const result = await callback(tx);
|
|
99
|
-
await transaction.commit();
|
|
100
|
-
return result;
|
|
101
|
-
} catch (error) {
|
|
102
|
-
try {
|
|
103
|
-
await transaction.rollback();
|
|
104
|
-
} catch {
|
|
105
|
-
}
|
|
106
|
-
throw error;
|
|
107
|
-
}
|
|
108
|
-
},
|
|
109
|
-
close: async () => {
|
|
110
|
-
if (!closed) {
|
|
111
|
-
closed = true;
|
|
112
|
-
await db2.close();
|
|
113
|
-
}
|
|
114
|
-
},
|
|
115
|
-
nativeMetrics: () => {
|
|
116
|
-
var _a;
|
|
117
|
-
return ((_a = db2.nativeMetrics) == null ? void 0 : _a.call(db2)) ?? null;
|
|
118
|
-
}
|
|
119
|
-
});
|
|
120
|
-
const client = createClient(db2);
|
|
121
|
-
return client;
|
|
122
|
-
},
|
|
123
|
-
onMigrate: async (client) => {
|
|
124
|
-
if (onMigrate) {
|
|
125
|
-
await withMigrationSavepoint(
|
|
126
|
-
client,
|
|
127
|
-
(leased) => onMigrate(leased)
|
|
128
|
-
);
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
};
|
|
132
|
-
}
|
|
133
|
-
function rowToObject(row, columns) {
|
|
134
|
-
const rowObj = {};
|
|
135
|
-
for (let i = 0; i < columns.length; i++) {
|
|
136
|
-
rowObj[columns[i]] = row[i];
|
|
137
|
-
}
|
|
138
|
-
return rowObj;
|
|
139
|
-
}
|
|
140
|
-
async function execMultiStatement(db2, query) {
|
|
141
|
-
const results = [];
|
|
142
|
-
let columnNames = null;
|
|
143
|
-
await db2.exec(query, (row, columns) => {
|
|
144
|
-
if (!columnNames) {
|
|
145
|
-
columnNames = columns;
|
|
146
|
-
}
|
|
147
|
-
results.push(rowToObject(row, columnNames));
|
|
148
|
-
});
|
|
149
|
-
return results;
|
|
150
|
-
}
|
|
151
|
-
async function withMigrationSavepoint(client, callback) {
|
|
152
|
-
return await client.transaction(
|
|
153
|
-
async (transaction) => {
|
|
154
|
-
await transaction.execute("SAVEPOINT __rivet_on_migrate");
|
|
155
|
-
try {
|
|
156
|
-
const result = await callback(transaction);
|
|
157
|
-
await transaction.execute(
|
|
158
|
-
"RELEASE SAVEPOINT __rivet_on_migrate"
|
|
159
|
-
);
|
|
160
|
-
return result;
|
|
161
|
-
} catch (error) {
|
|
162
|
-
try {
|
|
163
|
-
await transaction.execute(
|
|
164
|
-
"ROLLBACK TO SAVEPOINT __rivet_on_migrate"
|
|
165
|
-
);
|
|
166
|
-
} finally {
|
|
167
|
-
await transaction.execute(
|
|
168
|
-
"RELEASE SAVEPOINT __rivet_on_migrate"
|
|
169
|
-
);
|
|
170
|
-
}
|
|
171
|
-
throw error;
|
|
172
|
-
}
|
|
173
|
-
},
|
|
174
|
-
{ timeout: MIGRATION_TRANSACTION_TIMEOUT_MS }
|
|
175
|
-
);
|
|
176
|
-
}
|
|
177
7
|
export {
|
|
178
8
|
db
|
|
179
9
|
};
|
package/dist/tsup/db/mod.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/common/database/mod.ts"],"sourcesContent":["import { getLogger } from \"@/common/log\";\nimport type {\n\tDatabaseProvider,\n\tRawAccess,\n\tSqliteDatabase,\n\tSqliteTransactionDatabase,\n} from \"./config\";\nimport {\n\tisManualTransactionControl,\n\tisSqliteBindingObject,\n\tMIGRATION_TRANSACTION_TIMEOUT_MS,\n\ttoSqliteBindings,\n\tvalidateTransactionTimeout,\n} from \"./shared\";\n\nexport type { RawAccess } from \"./config\";\n\ninterface DatabaseFactoryConfig {\n\tonMigrate?: (db: RawAccess) => Promise<void> | void;\n\twarnOnManualTransactions?: boolean;\n}\n\nfunction hasMultipleStatements(query: string): boolean {\n\tconst trimmed = query.trim().replace(/;+$/, \"\").trimEnd();\n\treturn trimmed.includes(\";\");\n}\n\nexport function db({\n\tonMigrate,\n\twarnOnManualTransactions = true,\n}: DatabaseFactoryConfig = {}): DatabaseProvider<RawAccess> {\n\treturn {\n\t\tcreateClient: async (ctx) => {\n\t\t\tconst nativeDatabaseProvider = ctx.nativeDatabaseProvider;\n\t\t\tif (!nativeDatabaseProvider) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t\"native SQLite is required, but the current runtime did not provide a native database provider\",\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tconst db = await nativeDatabaseProvider.open(ctx.actorId);\n\t\t\tlet closed = false;\n\t\t\tlet manualTransactionWarned = false;\n\t\t\tconst ensureOpen = () => {\n\t\t\t\tif (closed) {\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t\"Database is closed. This usually means a background timer (setInterval, setTimeout) or a stray promise is still running after the actor stopped. Use c.abortSignal to clean up timers before the actor shuts down.\",\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst createClient = (\n\t\t\t\ttarget: SqliteDatabase | SqliteTransactionDatabase,\n\t\t\t\ttransactionScoped = false,\n\t\t\t): RawAccess => ({\n\t\t\t\texecute: async <\n\t\t\t\t\tTRow extends Record<string, unknown> = Record<\n\t\t\t\t\t\tstring,\n\t\t\t\t\t\tunknown\n\t\t\t\t\t>,\n\t\t\t\t>(\n\t\t\t\t\tquery: string,\n\t\t\t\t\t...args: unknown[]\n\t\t\t\t): Promise<TRow[]> => {\n\t\t\t\t\tensureOpen();\n\t\t\t\t\tif (\n\t\t\t\t\t\t!transactionScoped &&\n\t\t\t\t\t\twarnOnManualTransactions &&\n\t\t\t\t\t\t!manualTransactionWarned &&\n\t\t\t\t\t\t!hasMultipleStatements(query) &&\n\t\t\t\t\t\tisManualTransactionControl(query)\n\t\t\t\t\t) {\n\t\t\t\t\t\tmanualTransactionWarned = true;\n\t\t\t\t\t\tgetLogger(\"database\").warn(\n\t\t\t\t\t\t\t{ actorId: ctx.actorId },\n\t\t\t\t\t\t\t\"Manual cross-call SQLite transactions can interleave with other actor work. Use db.transaction() for coordinated transactions. Set warnOnManualTransactions: false in your db(...) configuration to disable this warning.\",\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tconst kvReadsBefore = ctx.metrics?.totalKvReads ?? 0;\n\t\t\t\t\tconst kvWritesBefore = ctx.metrics?.totalKvWrites ?? 0;\n\t\t\t\t\tconst start = performance.now();\n\n\t\t\t\t\ttry {\n\t\t\t\t\t\tif (args.length > 0) {\n\t\t\t\t\t\t\tconst bindings =\n\t\t\t\t\t\t\t\targs.length === 1 &&\n\t\t\t\t\t\t\t\tisSqliteBindingObject(args[0])\n\t\t\t\t\t\t\t\t\t? toSqliteBindings(args[0])\n\t\t\t\t\t\t\t\t\t: toSqliteBindings(args);\n\t\t\t\t\t\t\tconst { rows, columns } = await target.execute(\n\t\t\t\t\t\t\t\tquery,\n\t\t\t\t\t\t\t\tbindings,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\treturn rows.map((row) =>\n\t\t\t\t\t\t\t\trowToObject<TRow>(row, columns),\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (!hasMultipleStatements(query)) {\n\t\t\t\t\t\t\tconst { rows, columns } = await target.execute(\n\t\t\t\t\t\t\t\tquery,\n\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\treturn rows.map((row) =>\n\t\t\t\t\t\t\t\trowToObject<TRow>(row, columns),\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn await execMultiStatement<TRow>(target, query);\n\t\t\t\t\t} finally {\n\t\t\t\t\t\tconst durationMs = performance.now() - start;\n\t\t\t\t\t\tctx.metrics?.trackSql(query, durationMs);\n\t\t\t\t\t\tif (ctx.metrics) {\n\t\t\t\t\t\t\tconst kvReads =\n\t\t\t\t\t\t\t\tctx.metrics.totalKvReads - kvReadsBefore;\n\t\t\t\t\t\t\tconst kvWrites =\n\t\t\t\t\t\t\t\tctx.metrics.totalKvWrites - kvWritesBefore;\n\t\t\t\t\t\t\tctx.log?.debug({\n\t\t\t\t\t\t\t\tmsg: \"sql query\",\n\t\t\t\t\t\t\t\tquery: query.slice(0, 120),\n\t\t\t\t\t\t\t\tdurationMs,\n\t\t\t\t\t\t\t\tkvReads,\n\t\t\t\t\t\t\t\tkvWrites,\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\ttransaction: async <T>(\n\t\t\t\t\tcallback: (tx: RawAccess) => Promise<T> | T,\n\t\t\t\t\toptions?: { timeout?: number },\n\t\t\t\t): Promise<T> => {\n\t\t\t\t\tvalidateTransactionTimeout(options?.timeout);\n\t\t\t\t\tconst transaction = await db.beginTransaction(\n\t\t\t\t\t\toptions?.timeout,\n\t\t\t\t\t);\n\t\t\t\t\tconst tx = createClient(transaction, true);\n\t\t\t\t\ttry {\n\t\t\t\t\t\tconst result = await callback(tx);\n\t\t\t\t\t\tawait transaction.commit();\n\t\t\t\t\t\treturn result;\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tawait transaction.rollback();\n\t\t\t\t\t\t} catch {\n\t\t\t\t\t\t\t// Preserve the callback or commit error after expiry cleanup.\n\t\t\t\t\t\t}\n\t\t\t\t\t\tthrow error;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tclose: async () => {\n\t\t\t\t\tif (!closed) {\n\t\t\t\t\t\tclosed = true;\n\t\t\t\t\t\tawait db.close();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tnativeMetrics: () => db.nativeMetrics?.() ?? null,\n\t\t\t});\n\t\t\tconst client = createClient(db);\n\t\t\treturn client;\n\t\t},\n\t\tonMigrate: async (client) => {\n\t\t\tif (onMigrate) {\n\t\t\t\tawait withMigrationSavepoint(client, (leased) =>\n\t\t\t\t\tonMigrate(leased),\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t};\n}\n\nfunction rowToObject<TRow extends Record<string, unknown>>(\n\trow: unknown[],\n\tcolumns: string[],\n): TRow {\n\tconst rowObj: Record<string, unknown> = {};\n\tfor (let i = 0; i < columns.length; i++) {\n\t\trowObj[columns[i]] = row[i];\n\t}\n\treturn rowObj as TRow;\n}\n\nasync function execMultiStatement<TRow extends Record<string, unknown>>(\n\tdb: Pick<SqliteDatabase, \"exec\">,\n\tquery: string,\n): Promise<TRow[]> {\n\tconst results: Record<string, unknown>[] = [];\n\tlet columnNames: string[] | null = null;\n\tawait db.exec(query, (row: unknown[], columns: string[]) => {\n\t\tif (!columnNames) {\n\t\t\tcolumnNames = columns;\n\t\t}\n\t\tresults.push(rowToObject(row, columnNames));\n\t});\n\treturn results as TRow[];\n}\n\nasync function withMigrationSavepoint<T>(\n\tclient: RawAccess,\n\tcallback: (leased: RawAccess) => Promise<T> | T,\n): Promise<T> {\n\treturn await client.transaction(\n\t\tasync (transaction) => {\n\t\t\tawait transaction.execute(\"SAVEPOINT __rivet_on_migrate\");\n\t\t\ttry {\n\t\t\t\tconst result = await callback(transaction);\n\t\t\t\tawait transaction.execute(\n\t\t\t\t\t\"RELEASE SAVEPOINT __rivet_on_migrate\",\n\t\t\t\t);\n\t\t\t\treturn result;\n\t\t\t} catch (error) {\n\t\t\t\ttry {\n\t\t\t\t\tawait transaction.execute(\n\t\t\t\t\t\t\"ROLLBACK TO SAVEPOINT __rivet_on_migrate\",\n\t\t\t\t\t);\n\t\t\t\t} finally {\n\t\t\t\t\tawait transaction.execute(\n\t\t\t\t\t\t\"RELEASE SAVEPOINT __rivet_on_migrate\",\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t},\n\t\t{ timeout: MIGRATION_TRANSACTION_TIMEOUT_MS },\n\t);\n}\n"],"mappings":"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","names":["db"]}
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunk4KGXFC6Mcjs = require('../chunk-4KGXFC6M.cjs');
|
|
4
4
|
|
|
5
5
|
// src/dynamic/internal.ts
|
|
6
6
|
var DYNAMIC_ACTOR_DEFINITION_SYMBOL = /* @__PURE__ */ Symbol.for(
|
|
@@ -9,7 +9,7 @@ var DYNAMIC_ACTOR_DEFINITION_SYMBOL = /* @__PURE__ */ Symbol.for(
|
|
|
9
9
|
|
|
10
10
|
// src/dynamic/mod.ts
|
|
11
11
|
function dynamicActor(input) {
|
|
12
|
-
const config =
|
|
12
|
+
const config = _chunk4KGXFC6Mcjs.ActorConfigSchema.parse({
|
|
13
13
|
actions: {}
|
|
14
14
|
});
|
|
15
15
|
return {
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { A as AnyActorDefinition } from '../config-
|
|
1
|
+
import { A as AnyActorDefinition } from '../config-DTGoWdkG.cjs';
|
|
2
2
|
import 'zod/v4';
|
|
3
|
-
import '../config-
|
|
3
|
+
import '../config-ey2I2zz5.cjs';
|
|
4
4
|
import '@rivetkit/rivetkit-wasm';
|
|
5
5
|
import 'zod';
|
|
6
6
|
import 'pino';
|
|
7
7
|
import '@rivetkit/virtual-websocket';
|
|
8
|
+
import '../inspector/workflow.cjs';
|
|
8
9
|
import '@standard-schema/spec';
|
|
9
10
|
import '../utils-DQDCphrl.cjs';
|
|
10
11
|
import 'hono';
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { A as AnyActorDefinition } from '../config-
|
|
1
|
+
import { A as AnyActorDefinition } from '../config-C4OSv0QP.js';
|
|
2
2
|
import 'zod/v4';
|
|
3
|
-
import '../config-
|
|
3
|
+
import '../config-ey2I2zz5.js';
|
|
4
4
|
import '@rivetkit/rivetkit-wasm';
|
|
5
5
|
import 'zod';
|
|
6
6
|
import 'pino';
|
|
7
7
|
import '@rivetkit/virtual-websocket';
|
|
8
|
+
import '../inspector/workflow.js';
|
|
8
9
|
import '@standard-schema/spec';
|
|
9
10
|
import '../utils-CV0akuDD.js';
|
|
10
11
|
import 'hono';
|
package/dist/tsup/dynamic/mod.js
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunkBEPAAID2cjs = require('../chunk-BEPAAID2.cjs');
|
|
4
|
+
require('../chunk-BZX4LYYD.cjs');
|
|
4
5
|
|
|
5
6
|
|
|
6
7
|
|
|
7
|
-
var
|
|
8
|
-
require('../chunk-
|
|
8
|
+
var _chunk2D5PNV5Acjs = require('../chunk-2D5PNV5A.cjs');
|
|
9
|
+
require('../chunk-T4MKKCRF.cjs');
|
|
9
10
|
require('../chunk-4FC7TVS6.cjs');
|
|
10
11
|
|
|
11
12
|
// src/common/bare/generated/inspector/v5.ts
|
|
@@ -795,5 +796,5 @@ function decodeToClient(bytes) {
|
|
|
795
796
|
|
|
796
797
|
|
|
797
798
|
|
|
798
|
-
exports.createWorkflowInspectorAdapter =
|
|
799
|
+
exports.createWorkflowInspectorAdapter = _chunkBEPAAID2cjs.createWorkflowInspectorAdapter; exports.decodeToClient = decodeToClient; exports.decodeToServer = decodeToServer; exports.decodeWorkflowHistoryTransport = _chunk2D5PNV5Acjs.decodeWorkflowHistoryTransport; exports.encodeToClient = encodeToClient; exports.encodeToServer = encodeToServer; exports.encodeWorkflowHistoryTransport = _chunk2D5PNV5Acjs.encodeWorkflowHistoryTransport; exports.readActionRequest = readActionRequest; exports.readActionResponse = readActionResponse; exports.readConnection = readConnection; exports.readConnectionsRequest = readConnectionsRequest; exports.readConnectionsResponse = readConnectionsResponse; exports.readConnectionsUpdated = readConnectionsUpdated; exports.readDatabaseSchemaRequest = readDatabaseSchemaRequest; exports.readDatabaseSchemaResponse = readDatabaseSchemaResponse; exports.readDatabaseTableRowsRequest = readDatabaseTableRowsRequest; exports.readDatabaseTableRowsResponse = readDatabaseTableRowsResponse; exports.readError = readError; exports.readInit = readInit; exports.readPatchStateRequest = readPatchStateRequest; exports.readQueueMessageSummary = readQueueMessageSummary; exports.readQueueRequest = readQueueRequest; exports.readQueueResponse = readQueueResponse; exports.readQueueStatus = readQueueStatus; exports.readQueueUpdated = readQueueUpdated; exports.readRpcsListRequest = readRpcsListRequest; exports.readRpcsListResponse = readRpcsListResponse; exports.readState = readState; exports.readStateRequest = readStateRequest; exports.readStateResponse = readStateResponse; exports.readStateUpdated = readStateUpdated; exports.readTabConfigEntry = readTabConfigEntry; exports.readToClient = readToClient; exports.readToClientBody = readToClientBody; exports.readToServer = readToServer; exports.readToServerBody = readToServerBody; exports.readTraceQueryRequest = readTraceQueryRequest; exports.readTraceQueryResponse = readTraceQueryResponse; exports.readWorkflowHistory = readWorkflowHistory; exports.readWorkflowHistoryRequest = readWorkflowHistoryRequest; exports.readWorkflowHistoryResponse = readWorkflowHistoryResponse; exports.readWorkflowHistoryUpdated = readWorkflowHistoryUpdated; exports.readWorkflowReplayRequest = readWorkflowReplayRequest; exports.readWorkflowReplayResponse = readWorkflowReplayResponse; exports.writeActionRequest = writeActionRequest; exports.writeActionResponse = writeActionResponse; exports.writeConnection = writeConnection; exports.writeConnectionsRequest = writeConnectionsRequest; exports.writeConnectionsResponse = writeConnectionsResponse; exports.writeConnectionsUpdated = writeConnectionsUpdated; exports.writeDatabaseSchemaRequest = writeDatabaseSchemaRequest; exports.writeDatabaseSchemaResponse = writeDatabaseSchemaResponse; exports.writeDatabaseTableRowsRequest = writeDatabaseTableRowsRequest; exports.writeDatabaseTableRowsResponse = writeDatabaseTableRowsResponse; exports.writeError = writeError; exports.writeInit = writeInit; exports.writePatchStateRequest = writePatchStateRequest; exports.writeQueueMessageSummary = writeQueueMessageSummary; exports.writeQueueRequest = writeQueueRequest; exports.writeQueueResponse = writeQueueResponse; exports.writeQueueStatus = writeQueueStatus; exports.writeQueueUpdated = writeQueueUpdated; exports.writeRpcsListRequest = writeRpcsListRequest; exports.writeRpcsListResponse = writeRpcsListResponse; exports.writeState = writeState; exports.writeStateRequest = writeStateRequest; exports.writeStateResponse = writeStateResponse; exports.writeStateUpdated = writeStateUpdated; exports.writeTabConfigEntry = writeTabConfigEntry; exports.writeToClient = writeToClient; exports.writeToClientBody = writeToClientBody; exports.writeToServer = writeToServer; exports.writeToServerBody = writeToServerBody; exports.writeTraceQueryRequest = writeTraceQueryRequest; exports.writeTraceQueryResponse = writeTraceQueryResponse; exports.writeWorkflowHistory = writeWorkflowHistory; exports.writeWorkflowHistoryRequest = writeWorkflowHistoryRequest; exports.writeWorkflowHistoryResponse = writeWorkflowHistoryResponse; exports.writeWorkflowHistoryUpdated = writeWorkflowHistoryUpdated; exports.writeWorkflowReplayRequest = writeWorkflowReplayRequest; exports.writeWorkflowReplayResponse = writeWorkflowReplayResponse;
|
|
799
800
|
//# sourceMappingURL=mod.cjs.map
|