neoorm 0.3.0 → 0.4.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.
- package/README.md +12 -6
- package/dist/bin/neoorm.js +45 -15
- package/dist/bin/neoorm.js.map +1 -1
- package/dist/codegen/diff-manifest.d.ts +7 -7
- package/dist/codegen/diff-manifest.d.ts.map +1 -1
- package/dist/codegen/diff-manifest.js +67 -54
- package/dist/codegen/diff-manifest.js.map +1 -1
- package/dist/codegen/generate-summary.js.map +1 -1
- package/dist/codegen/generate.d.ts.map +1 -1
- package/dist/codegen/generate.js +11 -1
- package/dist/codegen/generate.js.map +1 -1
- package/dist/codegen/manifest-relations.d.ts.map +1 -1
- package/dist/codegen/manifest-relations.js +21 -0
- package/dist/codegen/manifest-relations.js.map +1 -1
- package/dist/codegen/schema-to-manifest.js.map +1 -1
- package/dist/config.d.ts +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +1 -1
- package/dist/config.js.map +1 -1
- package/dist/dialect/postgres.d.ts +3 -4
- package/dist/dialect/postgres.d.ts.map +1 -1
- package/dist/dialect/postgres.js +19 -11
- package/dist/dialect/postgres.js.map +1 -1
- package/dist/dialect/shared.d.ts +6 -0
- package/dist/dialect/shared.d.ts.map +1 -0
- package/dist/dialect/shared.js +16 -0
- package/dist/dialect/shared.js.map +1 -0
- package/dist/dialect/sqlite.d.ts +4 -0
- package/dist/dialect/sqlite.d.ts.map +1 -0
- package/dist/dialect/sqlite.js +276 -0
- package/dist/dialect/sqlite.js.map +1 -0
- package/dist/dialect/types.d.ts +7 -0
- package/dist/dialect/types.d.ts.map +1 -1
- package/dist/init/scaffold.js.map +1 -1
- package/dist/introspect/pull.d.ts +3 -2
- package/dist/introspect/pull.d.ts.map +1 -1
- package/dist/introspect/pull.js +124 -13
- package/dist/introspect/pull.js.map +1 -1
- package/dist/introspect/queries.d.ts +9 -9
- package/dist/introspect/queries.d.ts.map +1 -1
- package/dist/introspect/queries.js +16 -16
- package/dist/introspect/queries.js.map +1 -1
- package/dist/introspect/sqlite/to-manifest.d.ts +4 -0
- package/dist/introspect/sqlite/to-manifest.d.ts.map +1 -0
- package/dist/introspect/sqlite/to-manifest.js +166 -0
- package/dist/introspect/sqlite/to-manifest.js.map +1 -0
- package/dist/introspect/to-manifest.d.ts +2 -2
- package/dist/introspect/to-manifest.d.ts.map +1 -1
- package/dist/introspect/to-manifest.js +20 -12
- package/dist/introspect/to-manifest.js.map +1 -1
- package/dist/migrate/runner.d.ts +14 -14
- package/dist/migrate/runner.d.ts.map +1 -1
- package/dist/migrate/runner.js +83 -88
- package/dist/migrate/runner.js.map +1 -1
- package/dist/plugins/builtin.d.ts +1 -0
- package/dist/plugins/builtin.d.ts.map +1 -1
- package/dist/plugins/builtin.js +96 -6
- package/dist/plugins/builtin.js.map +1 -1
- package/dist/plugins/json/operators.d.ts.map +1 -1
- package/dist/plugins/json/operators.js +14 -5
- package/dist/plugins/json/operators.js.map +1 -1
- package/dist/plugins/types.d.ts +4 -4
- package/dist/plugins/types.d.ts.map +1 -1
- package/dist/runtime/client.d.ts +32 -7
- package/dist/runtime/client.d.ts.map +1 -1
- package/dist/runtime/client.js +68 -9
- package/dist/runtime/client.js.map +1 -1
- package/dist/runtime/driver.d.ts +28 -0
- package/dist/runtime/driver.d.ts.map +1 -0
- package/dist/runtime/driver.js +265 -0
- package/dist/runtime/driver.js.map +1 -0
- package/dist/runtime/errors.d.ts +1 -1
- package/dist/runtime/errors.d.ts.map +1 -1
- package/dist/runtime/errors.js +1 -0
- package/dist/runtime/errors.js.map +1 -1
- package/dist/runtime/executor.d.ts +11 -3
- package/dist/runtime/executor.d.ts.map +1 -1
- package/dist/runtime/executor.js +69 -37
- package/dist/runtime/executor.js.map +1 -1
- package/dist/runtime/pg-error.d.ts +1 -1
- package/dist/runtime/pg-error.d.ts.map +1 -1
- package/dist/runtime/pg-error.js +6 -1
- package/dist/runtime/pg-error.js.map +1 -1
- package/dist/runtime/query/aggregate.d.ts.map +1 -1
- package/dist/runtime/query/aggregate.js +5 -4
- package/dist/runtime/query/aggregate.js.map +1 -1
- package/dist/runtime/query/compile.d.ts +42 -16
- package/dist/runtime/query/compile.d.ts.map +1 -1
- package/dist/runtime/query/compile.js +479 -91
- package/dist/runtime/query/compile.js.map +1 -1
- package/dist/runtime/query/count.d.ts.map +1 -1
- package/dist/runtime/query/count.js +7 -3
- package/dist/runtime/query/count.js.map +1 -1
- package/dist/runtime/query/create.d.ts +5 -0
- package/dist/runtime/query/create.d.ts.map +1 -1
- package/dist/runtime/query/create.js +89 -23
- package/dist/runtime/query/create.js.map +1 -1
- package/dist/runtime/query/cursor.d.ts +4 -3
- package/dist/runtime/query/cursor.d.ts.map +1 -1
- package/dist/runtime/query/cursor.js +13 -9
- package/dist/runtime/query/cursor.js.map +1 -1
- package/dist/runtime/query/delete.d.ts +2 -1
- package/dist/runtime/query/delete.d.ts.map +1 -1
- package/dist/runtime/query/delete.js +27 -14
- package/dist/runtime/query/delete.js.map +1 -1
- package/dist/runtime/query/execute.d.ts +11 -4
- package/dist/runtime/query/execute.d.ts.map +1 -1
- package/dist/runtime/query/execute.js +20 -5
- package/dist/runtime/query/execute.js.map +1 -1
- package/dist/runtime/query/find-or-create.d.ts +17 -0
- package/dist/runtime/query/find-or-create.d.ts.map +1 -0
- package/dist/runtime/query/find-or-create.js +90 -0
- package/dist/runtime/query/find-or-create.js.map +1 -0
- package/dist/runtime/query/find.d.ts +13 -4
- package/dist/runtime/query/find.d.ts.map +1 -1
- package/dist/runtime/query/find.js +201 -47
- package/dist/runtime/query/find.js.map +1 -1
- package/dist/runtime/query/manifest-lookup.d.ts +3 -2
- package/dist/runtime/query/manifest-lookup.d.ts.map +1 -1
- package/dist/runtime/query/manifest-lookup.js +5 -4
- package/dist/runtime/query/manifest-lookup.js.map +1 -1
- package/dist/runtime/query/paginate.d.ts.map +1 -1
- package/dist/runtime/query/paginate.js +16 -11
- package/dist/runtime/query/paginate.js.map +1 -1
- package/dist/runtime/query/primary-key.d.ts +9 -6
- package/dist/runtime/query/primary-key.d.ts.map +1 -1
- package/dist/runtime/query/primary-key.js +65 -35
- package/dist/runtime/query/primary-key.js.map +1 -1
- package/dist/runtime/query/relation-planner.d.ts +74 -0
- package/dist/runtime/query/relation-planner.d.ts.map +1 -0
- package/dist/runtime/query/relation-planner.js +648 -0
- package/dist/runtime/query/relation-planner.js.map +1 -0
- package/dist/runtime/query/relation-writes.d.ts +2 -1
- package/dist/runtime/query/relation-writes.d.ts.map +1 -1
- package/dist/runtime/query/relation-writes.js +46 -53
- package/dist/runtime/query/relation-writes.js.map +1 -1
- package/dist/runtime/query/table-index.d.ts +61 -0
- package/dist/runtime/query/table-index.d.ts.map +1 -0
- package/dist/runtime/query/table-index.js +152 -0
- package/dist/runtime/query/table-index.js.map +1 -0
- package/dist/runtime/query/unique.d.ts +3 -2
- package/dist/runtime/query/unique.d.ts.map +1 -1
- package/dist/runtime/query/unique.js +7 -6
- package/dist/runtime/query/unique.js.map +1 -1
- package/dist/runtime/query/update.d.ts +3 -1
- package/dist/runtime/query/update.d.ts.map +1 -1
- package/dist/runtime/query/update.js +117 -36
- package/dist/runtime/query/update.js.map +1 -1
- package/dist/runtime/query/updated-at.d.ts +6 -4
- package/dist/runtime/query/updated-at.d.ts.map +1 -1
- package/dist/runtime/query/updated-at.js +23 -9
- package/dist/runtime/query/updated-at.js.map +1 -1
- package/dist/runtime/query/upsert.d.ts.map +1 -1
- package/dist/runtime/query/upsert.js +11 -9
- package/dist/runtime/query/upsert.js.map +1 -1
- package/dist/runtime/sqlite-open.d.ts +3 -0
- package/dist/runtime/sqlite-open.d.ts.map +1 -0
- package/dist/runtime/sqlite-open.js +22 -0
- package/dist/runtime/sqlite-open.js.map +1 -0
- package/dist/runtime/transaction.d.ts +5 -0
- package/dist/runtime/transaction.d.ts.map +1 -0
- package/dist/runtime/transaction.js +26 -0
- package/dist/runtime/transaction.js.map +1 -0
- package/dist/runtime/types.d.ts +9 -4
- package/dist/runtime/types.d.ts.map +1 -1
- package/dist/schema/column.d.ts +1 -1
- package/dist/schema/column.d.ts.map +1 -1
- package/dist/schema/column.js +1 -1
- package/dist/schema/column.js.map +1 -1
- package/dist/schema/define-schema.js.map +1 -1
- package/dist/schema/index.d.ts +2 -2
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/index.js +1 -1
- package/dist/schema/index.js.map +1 -1
- package/dist/schema/relation-types.d.ts +1 -0
- package/dist/schema/relation-types.d.ts.map +1 -1
- package/dist/schema/types.d.ts +12 -0
- package/dist/schema/types.d.ts.map +1 -1
- package/dist/sql/builder.d.ts.map +1 -1
- package/dist/sql/template.d.ts +7 -0
- package/dist/sql/template.d.ts.map +1 -1
- package/dist/sql/template.js +89 -3
- package/dist/sql/template.js.map +1 -1
- package/dist/utils/case.d.ts +4 -0
- package/dist/utils/case.d.ts.map +1 -1
- package/dist/utils/case.js +11 -0
- package/dist/utils/case.js.map +1 -1
- package/dist/utils/uuid.js.map +1 -1
- package/package.json +21 -4
package/README.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<strong>NeoOrm</strong> is a TypeScript-first SQL ORM built for people who want <strong>type safety without the complexity</strong>.
|
|
4
4
|
Schema → codegen → typed client — you own the SQL, we handle the boilerplate.
|
|
5
5
|
|
|
6
|
-
PostgreSQL
|
|
6
|
+
PostgreSQL and SQLite dialects ship today — MySQL and others are on the roadmap.
|
|
7
7
|
</p>
|
|
8
8
|
|
|
9
9
|
<p>
|
|
@@ -14,10 +14,11 @@
|
|
|
14
14
|
</p>
|
|
15
15
|
|
|
16
16
|
```
|
|
17
|
-
npm install neoorm pg
|
|
17
|
+
npm install neoorm pg # PostgreSQL
|
|
18
|
+
npm install neoorm # SQLite (no extra driver needed)
|
|
18
19
|
```
|
|
19
20
|
|
|
20
|
-
Requires **Node.js 20+** (
|
|
21
|
+
Requires **Node.js 20+** (Node.js 22.5+ for SQLite on Node — or Bun, or pass your own `db` instance; see [SQLite](docs/sqlite.md)).
|
|
21
22
|
|
|
22
23
|
---
|
|
23
24
|
|
|
@@ -30,7 +31,7 @@ Most ORMs force you to learn their query language, fight their type system, or s
|
|
|
30
31
|
- **Schema as code** — one source of truth for types and the database
|
|
31
32
|
- **Generated client** — zero-cost abstractions, full autocomplete
|
|
32
33
|
- **Relations done right** — nested reads, writes, and filters without N+1 footguns
|
|
33
|
-
- **PostgreSQL powered** — arrays, JSONB, PostGIS, enums, full-text, extensions — no abstraction layer that gets in the way.
|
|
34
|
+
- **PostgreSQL powered** — arrays, JSONB, PostGIS, enums, full-text, extensions — no abstraction layer that gets in the way. SQLite ships too for local dev and single-file deployments; MySQL and more are coming.
|
|
34
35
|
- **Migrations built-in** — diff your schema, get SQL, deploy. Rollback supported.
|
|
35
36
|
|
|
36
37
|
---
|
|
@@ -84,9 +85,13 @@ const posts = await db.posts.findMany({
|
|
|
84
85
|
<td><strong>🔌 Plugin system</strong><br/>Column type plugins for PostGIS (geometry, geography, spatial operators), citext, and custom extensions.</td>
|
|
85
86
|
</tr>
|
|
86
87
|
<tr>
|
|
87
|
-
<td><strong>🐘 PostgreSQL powered</strong><br/>JSONB, arrays (`TEXT[]`, `INTEGER[]`), `NUMERIC`, `BYTEA`, native enums, UUID v4/v7, serial identity, `CITEXT`, extensions
|
|
88
|
+
<td><strong>🐘 PostgreSQL powered</strong><br/>JSONB, arrays (`TEXT[]`, `INTEGER[]`), `NUMERIC`, `BYTEA`, native enums, UUID v4/v7, serial identity, `CITEXT`, extensions.</td>
|
|
88
89
|
<td><strong>🎯 TypeScript end-to-end</strong><br/>Strict types from schema to query results. Discriminated payload types for `with` includes. Compile-time union checking on enums.</td>
|
|
89
90
|
</tr>
|
|
91
|
+
<tr>
|
|
92
|
+
<td><strong>🪶 SQLite dialect</strong><br/>Zero-config local dev and testing — no database server, no driver install. Works on Node 22.5+ and Bun, or with your own `db` handle. See [SQLite](docs/sqlite.md).</td>
|
|
93
|
+
<td></td>
|
|
94
|
+
</tr>
|
|
90
95
|
</table>
|
|
91
96
|
|
|
92
97
|
---
|
|
@@ -103,6 +108,7 @@ const posts = await db.posts.findMany({
|
|
|
103
108
|
| [Migrations](docs/migrations.md) | Deploy, dev, status, rollback, reset |
|
|
104
109
|
| [CLI reference](docs/cli.md) | All commands and flags |
|
|
105
110
|
| [Configuration](docs/configuration.md) | Config file options reference |
|
|
111
|
+
| [SQLite](docs/sqlite.md) | SQLite dialect, drivers, type mapping, limitations |
|
|
106
112
|
| [Plugins](docs/plugins.md) | PostGIS, citext, custom plugins |
|
|
107
113
|
|
|
108
114
|
See the [blog example](examples/blog/schema.ts) for a complete schema, and [queries.example.ts](examples/blog/queries.example.ts) for typed queries and mutations.
|
|
@@ -128,7 +134,7 @@ NeoOrm was built because existing TypeScript ORMs either sacrificed type safety
|
|
|
128
134
|
- **Schema is the source of truth** — not decorators, not reflection, not a proprietary DSL. Your schema file is plain TypeScript.
|
|
129
135
|
- **Generated code is a compile-time artifact** — no runtime dependency on the schema. Swap the schema, regenerate, everything still compiles.
|
|
130
136
|
- **SQL is not hidden** — the client compiles to parameterized SQL that you can inspect. No magic, no surprises.
|
|
131
|
-
- **PostgreSQL first** — we ship
|
|
137
|
+
- **PostgreSQL and SQLite first** — we ship Postgres and SQLite dialects and lean into each one's strengths. MySQL and other dialects are on the roadmap and will slot into the same architecture.
|
|
132
138
|
|
|
133
139
|
---
|
|
134
140
|
|
package/dist/bin/neoorm.js
CHANGED
|
@@ -6,9 +6,31 @@ import { Pool } from "pg";
|
|
|
6
6
|
import packageJson from "../../package.json" with { type: "json" };
|
|
7
7
|
import { formatGenerateSummary, generateFromSchema, } from "../codegen/generate.js";
|
|
8
8
|
import { loadConfig } from "../config.js";
|
|
9
|
+
import { postgresDialect } from "../dialect/postgres.js";
|
|
10
|
+
import { sqliteDialect } from "../dialect/sqlite.js";
|
|
9
11
|
import { formatInitNextSteps, runInit } from "../init/scaffold.js";
|
|
10
|
-
import { introspectPostgres } from "../introspect/pull.js";
|
|
12
|
+
import { introspectPostgres, introspectSqlite } from "../introspect/pull.js";
|
|
11
13
|
import { dbPush, dbPushWarnings, formatMigrateStatus, migrateDeploy, migrateDown, migrateReset, migrateStatus, } from "../migrate/runner.js";
|
|
14
|
+
import { pgClient, sqliteClient } from "../runtime/driver.js";
|
|
15
|
+
import { openSqliteDatabase } from "../runtime/sqlite-open.js";
|
|
16
|
+
function connectDb(config) {
|
|
17
|
+
if (config.datasource.provider === "sqlite") {
|
|
18
|
+
const db = openSqliteDatabase(config.datasource.url);
|
|
19
|
+
const client = sqliteClient(db);
|
|
20
|
+
return {
|
|
21
|
+
client,
|
|
22
|
+
dialect: sqliteDialect,
|
|
23
|
+
close: () => client.close(),
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
const pool = new Pool({ connectionString: config.datasource.url });
|
|
27
|
+
const client = pgClient(pool);
|
|
28
|
+
return {
|
|
29
|
+
client,
|
|
30
|
+
dialect: postgresDialect,
|
|
31
|
+
close: () => pool.end(),
|
|
32
|
+
};
|
|
33
|
+
}
|
|
12
34
|
const program = new Command();
|
|
13
35
|
program.name("neoorm").description("NeoOrm CLI").version(packageJson.version);
|
|
14
36
|
program
|
|
@@ -90,23 +112,27 @@ program
|
|
|
90
112
|
const config = await loadConfig(cwd);
|
|
91
113
|
const outDir = resolve(cwd, config.out);
|
|
92
114
|
const migrationsDir = join(outDir, "migrations");
|
|
93
|
-
const dbSchema = config.datasource.
|
|
94
|
-
|
|
115
|
+
const dbSchema = config.datasource.provider === "postgresql"
|
|
116
|
+
? config.datasource.schema
|
|
117
|
+
: undefined;
|
|
118
|
+
const { client, dialect, close } = connectDb(config);
|
|
95
119
|
try {
|
|
96
120
|
if (subcommand === "status") {
|
|
97
|
-
const status = await migrateStatus(
|
|
121
|
+
const status = await migrateStatus(client, dialect, migrationsDir, dbSchema);
|
|
98
122
|
for (const line of formatMigrateStatus(status, migrationsDir)) {
|
|
99
123
|
console.log(line);
|
|
100
124
|
}
|
|
101
125
|
return;
|
|
102
126
|
}
|
|
103
127
|
if (subcommand === "reset") {
|
|
104
|
-
const { reapplied } = await migrateReset(
|
|
128
|
+
const { reapplied } = await migrateReset(client, dialect, migrationsDir, {
|
|
105
129
|
force: options.force ?? false,
|
|
106
130
|
...(options.skipApply ? { skipApply: true } : {}),
|
|
107
131
|
...(dbSchema ? { schema: dbSchema } : {}),
|
|
108
132
|
});
|
|
109
|
-
console.log(
|
|
133
|
+
console.log(config.datasource.provider === "sqlite"
|
|
134
|
+
? "✓ Database reset (all tables dropped and recreated)"
|
|
135
|
+
: `✓ Database schema reset (${dbSchema ?? "public"} schema dropped and recreated)`);
|
|
110
136
|
if (options.skipApply) {
|
|
111
137
|
console.log(" Skipped re-applying migrations (--skip-apply)");
|
|
112
138
|
}
|
|
@@ -127,7 +153,7 @@ program
|
|
|
127
153
|
console.error("--steps must be a positive integer");
|
|
128
154
|
process.exit(1);
|
|
129
155
|
}
|
|
130
|
-
const reverted = await migrateDown(
|
|
156
|
+
const reverted = await migrateDown(client, dialect, migrationsDir, {
|
|
131
157
|
steps,
|
|
132
158
|
outDir,
|
|
133
159
|
...(dbSchema ? { schema: dbSchema } : {}),
|
|
@@ -144,7 +170,7 @@ program
|
|
|
144
170
|
return;
|
|
145
171
|
}
|
|
146
172
|
if (subcommand === "deploy" || subcommand === "dev") {
|
|
147
|
-
const applied = await migrateDeploy(
|
|
173
|
+
const applied = await migrateDeploy(client, dialect, migrationsDir, dbSchema);
|
|
148
174
|
if (applied.length === 0) {
|
|
149
175
|
console.log("No pending migrations");
|
|
150
176
|
}
|
|
@@ -172,7 +198,7 @@ program
|
|
|
172
198
|
console.warn(`Warning: ${warning}`);
|
|
173
199
|
}
|
|
174
200
|
if (migrationName) {
|
|
175
|
-
const newlyApplied = await migrateDeploy(
|
|
201
|
+
const newlyApplied = await migrateDeploy(client, dialect, join(outDir, "migrations"), dbSchema);
|
|
176
202
|
if (newlyApplied.length > 0) {
|
|
177
203
|
console.log(`Applied new migration: ${newlyApplied.join(", ")}`);
|
|
178
204
|
}
|
|
@@ -184,7 +210,7 @@ program
|
|
|
184
210
|
process.exit(1);
|
|
185
211
|
}
|
|
186
212
|
finally {
|
|
187
|
-
await
|
|
213
|
+
await close();
|
|
188
214
|
}
|
|
189
215
|
});
|
|
190
216
|
program
|
|
@@ -196,8 +222,10 @@ program
|
|
|
196
222
|
.action(async (subcommand, options) => {
|
|
197
223
|
const cwd = process.cwd();
|
|
198
224
|
const config = await loadConfig(cwd);
|
|
199
|
-
const
|
|
200
|
-
|
|
225
|
+
const dbSchema = config.datasource.provider === "postgresql"
|
|
226
|
+
? config.datasource.schema
|
|
227
|
+
: undefined;
|
|
228
|
+
const { client, dialect, close } = connectDb(config);
|
|
201
229
|
try {
|
|
202
230
|
if (subcommand === "push") {
|
|
203
231
|
const outDir = resolve(cwd, config.out);
|
|
@@ -207,7 +235,7 @@ program
|
|
|
207
235
|
console.error("Run neoorm generate first");
|
|
208
236
|
process.exit(1);
|
|
209
237
|
}
|
|
210
|
-
const { appliedStatements, destructiveBlocked } = await dbPush(
|
|
238
|
+
const { appliedStatements, destructiveBlocked } = await dbPush(client, dialect, manifest, {
|
|
211
239
|
...(options.acceptDataLoss
|
|
212
240
|
? { acceptDataLoss: true }
|
|
213
241
|
: {}),
|
|
@@ -225,7 +253,9 @@ program
|
|
|
225
253
|
}
|
|
226
254
|
}
|
|
227
255
|
else if (subcommand === "pull") {
|
|
228
|
-
const content =
|
|
256
|
+
const content = config.datasource.provider === "sqlite"
|
|
257
|
+
? await introspectSqlite(client)
|
|
258
|
+
: await introspectPostgres(client, dbSchema ? { schema: dbSchema } : {});
|
|
229
259
|
const outputPath = resolve(cwd, options.output ?? "schema.pulled.ts");
|
|
230
260
|
await writeFile(outputPath, content, "utf-8");
|
|
231
261
|
console.log(`Schema written to ${outputPath}`);
|
|
@@ -236,7 +266,7 @@ program
|
|
|
236
266
|
}
|
|
237
267
|
}
|
|
238
268
|
finally {
|
|
239
|
-
await
|
|
269
|
+
await close();
|
|
240
270
|
}
|
|
241
271
|
});
|
|
242
272
|
program.parse();
|
package/dist/bin/neoorm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"neoorm.js","sourceRoot":"","sources":["../../src/bin/neoorm.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"neoorm.js","sourceRoot":"","sources":["../../src/bin/neoorm.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import type { DestructiveChange, Manifest, ManifestColumn, ManifestDiff, TableDiff } from "../dialect/types.js";
|
|
2
|
-
export declare function columnSqlType(col: ManifestColumn, manifest?: Manifest): string;
|
|
3
|
-
export declare function columnsEqual(a: ManifestColumn, b: ManifestColumn, manifest?: Manifest): boolean;
|
|
1
|
+
import type { DestructiveChange, Dialect, Manifest, ManifestColumn, ManifestDiff, TableDiff } from "../dialect/types.js";
|
|
2
|
+
export declare function columnSqlType(col: ManifestColumn, manifest?: Manifest, dialect?: Dialect): string;
|
|
3
|
+
export declare function columnsEqual(a: ManifestColumn, b: ManifestColumn, manifest?: Manifest, dialect?: Dialect): boolean;
|
|
4
4
|
export declare function buildMigrationSql(tableDiffs: TableDiff[], extensions?: string[], manifest?: Manifest, newEnumTypes?: Record<string, {
|
|
5
5
|
values: readonly string[];
|
|
6
|
-
}
|
|
7
|
-
export declare function diffManifest(prev: Manifest | null, next: Manifest): ManifestDiff;
|
|
6
|
+
}>, dialect?: Dialect): string[];
|
|
7
|
+
export declare function diffManifest(prev: Manifest | null, next: Manifest, dialect?: Dialect): ManifestDiff;
|
|
8
8
|
export declare function emptyManifest(): Manifest;
|
|
9
9
|
/** SQL to roll back a forward migration (next → prev). */
|
|
10
|
-
export declare function buildDownSql(prev: Manifest | null, next: Manifest): string[];
|
|
11
|
-
export declare function resolveMigrationSql(diff: ManifestDiff, prev: Manifest | null, next: Manifest, acceptDataLoss: boolean): {
|
|
10
|
+
export declare function buildDownSql(prev: Manifest | null, next: Manifest, dialect?: Dialect): string[];
|
|
11
|
+
export declare function resolveMigrationSql(diff: ManifestDiff, prev: Manifest | null, next: Manifest, acceptDataLoss: boolean, dialect?: Dialect): {
|
|
12
12
|
sql: string[];
|
|
13
13
|
blocked: DestructiveChange[];
|
|
14
14
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diff-manifest.d.ts","sourceRoot":"","sources":["../../src/codegen/diff-manifest.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"diff-manifest.d.ts","sourceRoot":"","sources":["../../src/codegen/diff-manifest.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAEX,iBAAiB,EACjB,OAAO,EAEP,QAAQ,EACR,cAAc,EACd,YAAY,EAGZ,SAAS,EACT,MAAM,qBAAqB,CAAC;AAQ7B,wBAAgB,aAAa,CAC5B,GAAG,EAAE,cAAc,EACnB,QAAQ,CAAC,EAAE,QAAQ,EACnB,OAAO,GAAE,OAAyB,GAChC,MAAM,CAER;AA+CD,wBAAgB,YAAY,CAC3B,CAAC,EAAE,cAAc,EACjB,CAAC,EAAE,cAAc,EACjB,QAAQ,CAAC,EAAE,QAAQ,EACnB,OAAO,GAAE,OAAyB,GAChC,OAAO,CAeT;AAsdD,wBAAgB,iBAAiB,CAChC,UAAU,EAAE,SAAS,EAAE,EACvB,UAAU,GAAE,MAAM,EAAO,EACzB,QAAQ,CAAC,EAAE,QAAQ,EACnB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,CAAC,EAC5D,OAAO,GAAE,OAAyB,GAChC,MAAM,EAAE,CA2DV;AAoCD,wBAAgB,YAAY,CAC3B,IAAI,EAAE,QAAQ,GAAG,IAAI,EACrB,IAAI,EAAE,QAAQ,EACd,OAAO,GAAE,OAAyB,GAChC,YAAY,CA2Ed;AAED,wBAAgB,aAAa,IAAI,QAAQ,CAMxC;AAED,0DAA0D;AAC1D,wBAAgB,YAAY,CAC3B,IAAI,EAAE,QAAQ,GAAG,IAAI,EACrB,IAAI,EAAE,QAAQ,EACd,OAAO,GAAE,OAAyB,GAChC,MAAM,EAAE,CAKV;AAED,wBAAgB,mBAAmB,CAClC,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,QAAQ,GAAG,IAAI,EACrB,IAAI,EAAE,QAAQ,EACd,cAAc,EAAE,OAAO,EACvB,OAAO,GAAE,OAAyB,GAChC;IAAE,GAAG,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,iBAAiB,EAAE,CAAA;CAAE,CAkDjD;AAcD,wBAAgB,qBAAqB,CACpC,IAAI,EAAE,QAAQ,GAAG,IAAI,EACrB,IAAI,EAAE,QAAQ,EACd,IAAI,EAAE,YAAY,GAChB,MAAM,EAAE,CA8DV;AAED,wBAAgB,yBAAyB,CACxC,WAAW,EAAE,iBAAiB,EAAE,GAC9B,MAAM,EAAE,CAyBV"}
|
|
@@ -1,19 +1,22 @@
|
|
|
1
|
-
import { canAutoCastType, DEFAULT_PG_SCHEMA,
|
|
1
|
+
import { canAutoCastType, DEFAULT_PG_SCHEMA, postgresDialect, resolveFkConstraintName, resolveIndexSqlName, resolveUniqueConstraintName, } from "../dialect/postgres.js";
|
|
2
2
|
function tablesBySqlName(manifest) {
|
|
3
3
|
return new Map(Object.values(manifest.tables).map((table) => [table.sqlName, table]));
|
|
4
4
|
}
|
|
5
|
-
export function columnSqlType(col, manifest) {
|
|
6
|
-
return
|
|
5
|
+
export function columnSqlType(col, manifest, dialect = postgresDialect) {
|
|
6
|
+
return dialect.columnType(col, manifest);
|
|
7
7
|
}
|
|
8
|
-
function isUnsafeTypeChange(alter, manifest) {
|
|
8
|
+
function isUnsafeTypeChange(alter, manifest, dialect = postgresDialect) {
|
|
9
9
|
if (!alter.setType || alter.fromSqlType === undefined) {
|
|
10
10
|
return false;
|
|
11
11
|
}
|
|
12
|
-
return !canAutoCastType(alter.fromSqlType, columnSqlType(alter.setType, manifest));
|
|
12
|
+
return !canAutoCastType(alter.fromSqlType, columnSqlType(alter.setType, manifest, dialect));
|
|
13
13
|
}
|
|
14
14
|
function effectiveNullable(col) {
|
|
15
15
|
return col.primary ? false : col.nullable;
|
|
16
16
|
}
|
|
17
|
+
function onDeleteEqual(a, b) {
|
|
18
|
+
return (a ?? "no action") === (b ?? "no action");
|
|
19
|
+
}
|
|
17
20
|
function isColumnUniqueIndex(table, index) {
|
|
18
21
|
if (!index.unique || index.columns.length !== 1) {
|
|
19
22
|
return false;
|
|
@@ -29,7 +32,7 @@ function defaultsEqual(a, b) {
|
|
|
29
32
|
function typeOptionsEqual(a, b) {
|
|
30
33
|
return JSON.stringify(a ?? {}) === JSON.stringify(b ?? {});
|
|
31
34
|
}
|
|
32
|
-
export function columnsEqual(a, b, manifest) {
|
|
35
|
+
export function columnsEqual(a, b, manifest, dialect = postgresDialect) {
|
|
33
36
|
return (a.kind === b.kind &&
|
|
34
37
|
effectiveNullable(a) === effectiveNullable(b) &&
|
|
35
38
|
a.unique === b.unique &&
|
|
@@ -38,9 +41,10 @@ export function columnsEqual(a, b, manifest) {
|
|
|
38
41
|
defaultsEqual(a, b) &&
|
|
39
42
|
typeOptionsEqual(a.typeOptions, b.typeOptions) &&
|
|
40
43
|
a.checkExpression === b.checkExpression &&
|
|
41
|
-
columnSqlType(a, manifest
|
|
44
|
+
columnSqlType(a, manifest, dialect) ===
|
|
45
|
+
columnSqlType(b, manifest, dialect) &&
|
|
42
46
|
(a.kind !== "fk" ||
|
|
43
|
-
(a.fkTarget === b.fkTarget && a.onDelete
|
|
47
|
+
(a.fkTarget === b.fkTarget && onDeleteEqual(a.onDelete, b.onDelete))));
|
|
44
48
|
}
|
|
45
49
|
function isFkColumn(c) {
|
|
46
50
|
return c.kind === "fk" && c.fkTarget !== undefined;
|
|
@@ -117,7 +121,7 @@ function diffForeignKeys(prevTable, nextTable) {
|
|
|
117
121
|
continue;
|
|
118
122
|
}
|
|
119
123
|
if (prevCol.fkTarget !== nextCol.fkTarget ||
|
|
120
|
-
prevCol.onDelete
|
|
124
|
+
!onDeleteEqual(prevCol.onDelete, nextCol.onDelete)) {
|
|
121
125
|
const add = {
|
|
122
126
|
target: nextCol.fkTarget,
|
|
123
127
|
};
|
|
@@ -146,13 +150,13 @@ function diffForeignKeys(prevTable, nextTable) {
|
|
|
146
150
|
}
|
|
147
151
|
return changes;
|
|
148
152
|
}
|
|
149
|
-
function buildColumnAlter(prevCol, nextCol, prevTable, alterSqlName, prevManifest, nextManifest) {
|
|
153
|
+
function buildColumnAlter(prevCol, nextCol, prevTable, alterSqlName, prevManifest, nextManifest, dialect = postgresDialect) {
|
|
150
154
|
const alter = { sqlName: alterSqlName };
|
|
151
155
|
let hasAlter = false;
|
|
152
|
-
if (columnSqlType(prevCol, prevManifest) !==
|
|
153
|
-
columnSqlType(nextCol, nextManifest)) {
|
|
156
|
+
if (columnSqlType(prevCol, prevManifest, dialect) !==
|
|
157
|
+
columnSqlType(nextCol, nextManifest, dialect)) {
|
|
154
158
|
alter.setType = { ...nextCol, sqlName: alterSqlName };
|
|
155
|
-
alter.fromSqlType = columnSqlType(prevCol, prevManifest);
|
|
159
|
+
alter.fromSqlType = columnSqlType(prevCol, prevManifest, dialect);
|
|
156
160
|
hasAlter = true;
|
|
157
161
|
}
|
|
158
162
|
if (effectiveNullable(prevCol) !== effectiveNullable(nextCol)) {
|
|
@@ -186,7 +190,7 @@ function buildColumnAlter(prevCol, nextCol, prevTable, alterSqlName, prevManifes
|
|
|
186
190
|
}
|
|
187
191
|
return hasAlter ? alter : null;
|
|
188
192
|
}
|
|
189
|
-
function diffColumns(prevTable, nextTable, prevManifest, nextManifest) {
|
|
193
|
+
function diffColumns(prevTable, nextTable, prevManifest, nextManifest, dialect = postgresDialect) {
|
|
190
194
|
const prevByTs = new Map(prevTable.columns.map((c) => [c.tsName, c]));
|
|
191
195
|
const nextByTs = new Map(nextTable.columns.map((c) => [c.tsName, c]));
|
|
192
196
|
const prevBySql = new Map(prevTable.columns.map((c) => [c.sqlName, c]));
|
|
@@ -230,14 +234,14 @@ function diffColumns(prevTable, nextTable, prevManifest, nextManifest) {
|
|
|
230
234
|
const alterSqlName = prevCol.sqlName !== nextCol.sqlName
|
|
231
235
|
? nextCol.sqlName
|
|
232
236
|
: prevCol.sqlName;
|
|
233
|
-
const alter = buildColumnAlter(prevCol, nextCol, prevTable, alterSqlName, prevManifest, nextManifest);
|
|
237
|
+
const alter = buildColumnAlter(prevCol, nextCol, prevTable, alterSqlName, prevManifest, nextManifest, dialect);
|
|
234
238
|
if (alter) {
|
|
235
239
|
alterColumns.push(alter);
|
|
236
240
|
}
|
|
237
241
|
}
|
|
238
242
|
return { addColumns, dropColumns, renameColumns, alterColumns };
|
|
239
243
|
}
|
|
240
|
-
function diffTable(prevTable, nextTable, prevManifest, nextManifest) {
|
|
244
|
+
function diffTable(prevTable, nextTable, prevManifest, nextManifest, dialect = postgresDialect) {
|
|
241
245
|
if (!prevTable && nextTable) {
|
|
242
246
|
return {
|
|
243
247
|
table: nextTable,
|
|
@@ -255,7 +259,7 @@ function diffTable(prevTable, nextTable, prevManifest, nextManifest) {
|
|
|
255
259
|
if (!prevTable || !nextTable) {
|
|
256
260
|
return null;
|
|
257
261
|
}
|
|
258
|
-
const columnDiff = diffColumns(prevTable, nextTable, prevManifest, nextManifest);
|
|
262
|
+
const columnDiff = diffColumns(prevTable, nextTable, prevManifest, nextManifest, dialect);
|
|
259
263
|
const { addColumns, dropColumns, renameColumns, alterColumns } = columnDiff;
|
|
260
264
|
const { addIndexes, dropIndexes } = diffIndexes(prevTable, nextTable);
|
|
261
265
|
const fkChanges = diffForeignKeys(prevTable, nextTable);
|
|
@@ -281,7 +285,7 @@ function diffTable(prevTable, nextTable, prevManifest, nextManifest) {
|
|
|
281
285
|
...(fkChanges.length > 0 ? { fkChanges } : {}),
|
|
282
286
|
};
|
|
283
287
|
}
|
|
284
|
-
function classifyDestructive(diff, prevTable) {
|
|
288
|
+
function classifyDestructive(diff, prevTable, dialect = postgresDialect) {
|
|
285
289
|
const changes = [];
|
|
286
290
|
const tableName = diff.table.sqlName;
|
|
287
291
|
const manifest = diff.manifest;
|
|
@@ -290,7 +294,7 @@ function classifyDestructive(diff, prevTable) {
|
|
|
290
294
|
kind: "drop_table",
|
|
291
295
|
table: tableName,
|
|
292
296
|
detail: `Drop table "${tableName}"`,
|
|
293
|
-
sql:
|
|
297
|
+
sql: dialect.emitDropTable(diff.table),
|
|
294
298
|
});
|
|
295
299
|
return changes;
|
|
296
300
|
}
|
|
@@ -299,13 +303,13 @@ function classifyDestructive(diff, prevTable) {
|
|
|
299
303
|
kind: "drop_column",
|
|
300
304
|
table: tableName,
|
|
301
305
|
detail: `Drop column "${tableName}"."${col}"`,
|
|
302
|
-
sql: `ALTER TABLE ${
|
|
306
|
+
sql: `ALTER TABLE ${dialect.quoteIdentifier(tableName)} DROP COLUMN ${dialect.quoteIdentifier(col)};`,
|
|
303
307
|
});
|
|
304
308
|
}
|
|
305
309
|
for (const alter of diff.alterColumns ?? []) {
|
|
306
|
-
if (alter.setType && isUnsafeTypeChange(alter, manifest)) {
|
|
307
|
-
for (const sql of
|
|
308
|
-
if (sql.includes(" TYPE ")) {
|
|
310
|
+
if (alter.setType && isUnsafeTypeChange(alter, manifest, dialect)) {
|
|
311
|
+
for (const sql of dialect.emitAlterColumn(diff.table, alter, manifest)) {
|
|
312
|
+
if (sql.includes(" TYPE ") || sql.includes("CREATE TABLE ")) {
|
|
309
313
|
changes.push({
|
|
310
314
|
kind: "alter_column_type_manual",
|
|
311
315
|
table: tableName,
|
|
@@ -335,7 +339,7 @@ function classifyDestructive(diff, prevTable) {
|
|
|
335
339
|
kind: "drop_index",
|
|
336
340
|
table: tableName,
|
|
337
341
|
detail: `Drop index "${indexName}" on "${tableName}"`,
|
|
338
|
-
sql:
|
|
342
|
+
sql: dialect.emitDropIndex(indexName),
|
|
339
343
|
});
|
|
340
344
|
}
|
|
341
345
|
for (const change of diff.fkChanges ?? []) {
|
|
@@ -344,18 +348,18 @@ function classifyDestructive(diff, prevTable) {
|
|
|
344
348
|
kind: "drop_fk",
|
|
345
349
|
table: tableName,
|
|
346
350
|
detail: `Drop foreign key on "${tableName}"."${change.column}"`,
|
|
347
|
-
sql:
|
|
351
|
+
sql: dialect.emitDropConstraint(tableName, change.drop),
|
|
348
352
|
});
|
|
349
353
|
}
|
|
350
354
|
}
|
|
351
355
|
return changes;
|
|
352
356
|
}
|
|
353
|
-
function stripDestructiveFromDiff(diff) {
|
|
357
|
+
function stripDestructiveFromDiff(diff, dialect = postgresDialect) {
|
|
354
358
|
if (diff.drop) {
|
|
355
359
|
return null;
|
|
356
360
|
}
|
|
357
361
|
const fkChanges = diff.fkChanges?.filter((change) => !change.drop);
|
|
358
|
-
const alterColumns = diff.alterColumns?.filter((alter) => !alter.setType || !isUnsafeTypeChange(alter, diff.manifest));
|
|
362
|
+
const alterColumns = diff.alterColumns?.filter((alter) => !alter.setType || !isUnsafeTypeChange(alter, diff.manifest, dialect));
|
|
359
363
|
const stripped = {
|
|
360
364
|
table: diff.table,
|
|
361
365
|
...(diff.create ? { create: diff.create } : {}),
|
|
@@ -379,41 +383,47 @@ function stripDestructiveFromDiff(diff) {
|
|
|
379
383
|
(stripped.fkChanges?.length ?? 0) > 0;
|
|
380
384
|
return hasChanges ? stripped : null;
|
|
381
385
|
}
|
|
382
|
-
export function buildMigrationSql(tableDiffs, extensions = [], manifest, newEnumTypes) {
|
|
386
|
+
export function buildMigrationSql(tableDiffs, extensions = [], manifest, newEnumTypes, dialect = postgresDialect) {
|
|
383
387
|
const sql = [];
|
|
388
|
+
const isSqlite = dialect.name === "sqlite";
|
|
384
389
|
const schemaNames = new Set(Object.values(manifest?.tables ?? {})
|
|
385
390
|
.map((table) => table.schemaName)
|
|
386
391
|
.filter((schema) => schema !== undefined && schema !== DEFAULT_PG_SCHEMA));
|
|
387
392
|
for (const schema of schemaNames) {
|
|
388
|
-
|
|
393
|
+
const schemaSql = dialect.emitCreateSchema(schema);
|
|
394
|
+
if (schemaSql) {
|
|
395
|
+
sql.push(schemaSql);
|
|
396
|
+
}
|
|
389
397
|
}
|
|
390
398
|
if (extensions.length > 0) {
|
|
391
|
-
sql.push(...
|
|
399
|
+
sql.push(...dialect.emitCreateExtensions(extensions));
|
|
392
400
|
}
|
|
393
401
|
if (newEnumTypes && Object.keys(newEnumTypes).length > 0) {
|
|
394
|
-
sql.push(...emitCreateEnumTypes(newEnumTypes));
|
|
402
|
+
sql.push(...dialect.emitCreateEnumTypes(newEnumTypes));
|
|
395
403
|
}
|
|
396
404
|
const alterDiffs = tableDiffs.filter((d) => !d.create && !d.drop);
|
|
397
405
|
const dropDiffs = tableDiffs.filter((d) => d.drop);
|
|
398
406
|
const createDiffs = tableDiffs.filter((d) => d.create);
|
|
399
407
|
for (const diff of alterDiffs) {
|
|
400
|
-
sql.push(...
|
|
408
|
+
sql.push(...dialect.emitAlterTable(diff.table, diff));
|
|
401
409
|
}
|
|
402
410
|
for (const diff of dropDiffs) {
|
|
403
|
-
sql.push(
|
|
411
|
+
sql.push(dialect.emitDropTable(diff.table));
|
|
404
412
|
}
|
|
405
413
|
for (const diff of createDiffs) {
|
|
406
|
-
sql.push(
|
|
407
|
-
inlineForeignKeys:
|
|
414
|
+
sql.push(dialect.emitCreateTable(diff.table, {
|
|
415
|
+
inlineForeignKeys: isSqlite,
|
|
408
416
|
...(manifest ? { manifest } : {}),
|
|
409
417
|
}));
|
|
410
418
|
for (const index of diff.table.indexes) {
|
|
411
419
|
if (!index.unique) {
|
|
412
|
-
sql.push(
|
|
420
|
+
sql.push(dialect.emitCreateIndex(diff.table, index));
|
|
413
421
|
}
|
|
414
422
|
}
|
|
415
|
-
|
|
416
|
-
|
|
423
|
+
if (!isSqlite) {
|
|
424
|
+
for (const col of fkColumns(diff.table)) {
|
|
425
|
+
sql.push(dialect.emitAddForeignKey(diff.table, col));
|
|
426
|
+
}
|
|
417
427
|
}
|
|
418
428
|
}
|
|
419
429
|
return sql;
|
|
@@ -441,26 +451,29 @@ function diffEnumTypes(prev, next) {
|
|
|
441
451
|
}
|
|
442
452
|
return { newEnumTypes, destructive };
|
|
443
453
|
}
|
|
444
|
-
export function diffManifest(prev, next) {
|
|
454
|
+
export function diffManifest(prev, next, dialect = postgresDialect) {
|
|
445
455
|
if (!prev) {
|
|
446
456
|
const sql = [];
|
|
447
457
|
const schemaNames = new Set(Object.values(next.tables)
|
|
448
458
|
.map((table) => table.schemaName)
|
|
449
459
|
.filter((schema) => schema !== undefined && schema !== DEFAULT_PG_SCHEMA));
|
|
450
460
|
for (const schema of schemaNames) {
|
|
451
|
-
|
|
461
|
+
const schemaSql = dialect.emitCreateSchema(schema);
|
|
462
|
+
if (schemaSql) {
|
|
463
|
+
sql.push(schemaSql);
|
|
464
|
+
}
|
|
452
465
|
}
|
|
453
466
|
const extensions = next.extensions ?? [];
|
|
454
|
-
sql.push(...
|
|
467
|
+
sql.push(...dialect.emitCreateExtensions(extensions));
|
|
455
468
|
if (next.enumTypes) {
|
|
456
|
-
sql.push(...emitCreateEnumTypes(next.enumTypes));
|
|
469
|
+
sql.push(...dialect.emitCreateEnumTypes(next.enumTypes));
|
|
457
470
|
}
|
|
458
471
|
const tables = Object.values(next.tables);
|
|
459
472
|
for (const table of tables) {
|
|
460
|
-
sql.push(
|
|
473
|
+
sql.push(dialect.emitCreateTable(table, { manifest: next }));
|
|
461
474
|
for (const index of table.indexes) {
|
|
462
475
|
if (!index.unique) {
|
|
463
|
-
sql.push(
|
|
476
|
+
sql.push(dialect.emitCreateIndex(table, index));
|
|
464
477
|
}
|
|
465
478
|
}
|
|
466
479
|
}
|
|
@@ -477,14 +490,14 @@ export function diffManifest(prev, next) {
|
|
|
477
490
|
for (const sqlName of allSqlNames) {
|
|
478
491
|
const prevTable = prevBySql.get(sqlName);
|
|
479
492
|
const nextTable = nextBySql.get(sqlName);
|
|
480
|
-
const diff = diffTable(prevTable, nextTable, prev, next);
|
|
493
|
+
const diff = diffTable(prevTable, nextTable, prev, next, dialect);
|
|
481
494
|
if (!diff)
|
|
482
495
|
continue;
|
|
483
496
|
tableDiffs.push(diff);
|
|
484
|
-
destructive.push(...classifyDestructive(diff, prevTable));
|
|
497
|
+
destructive.push(...classifyDestructive(diff, prevTable, dialect));
|
|
485
498
|
}
|
|
486
499
|
destructive.push(...enumDestructive);
|
|
487
|
-
const sql = buildMigrationSql(tableDiffs, newExtensions, next, newEnumTypes);
|
|
500
|
+
const sql = buildMigrationSql(tableDiffs, newExtensions, next, newEnumTypes, dialect);
|
|
488
501
|
return { isInitial: false, sql, destructive };
|
|
489
502
|
}
|
|
490
503
|
export function emptyManifest() {
|
|
@@ -495,13 +508,13 @@ export function emptyManifest() {
|
|
|
495
508
|
};
|
|
496
509
|
}
|
|
497
510
|
/** SQL to roll back a forward migration (next → prev). */
|
|
498
|
-
export function buildDownSql(prev, next) {
|
|
511
|
+
export function buildDownSql(prev, next, dialect = postgresDialect) {
|
|
499
512
|
const target = prev ?? emptyManifest();
|
|
500
|
-
const diff = diffManifest(next, target);
|
|
501
|
-
const { sql } = resolveMigrationSql(diff, next, target, true);
|
|
513
|
+
const diff = diffManifest(next, target, dialect);
|
|
514
|
+
const { sql } = resolveMigrationSql(diff, next, target, true, dialect);
|
|
502
515
|
return sql;
|
|
503
516
|
}
|
|
504
|
-
export function resolveMigrationSql(diff, prev, next, acceptDataLoss) {
|
|
517
|
+
export function resolveMigrationSql(diff, prev, next, acceptDataLoss, dialect = postgresDialect) {
|
|
505
518
|
if (acceptDataLoss) {
|
|
506
519
|
const blocked = diff.destructive.filter((change) => change.kind === "alter_column_type_manual" ||
|
|
507
520
|
change.kind === "alter_enum_manual");
|
|
@@ -527,10 +540,10 @@ export function resolveMigrationSql(diff, prev, next, acceptDataLoss) {
|
|
|
527
540
|
for (const sqlName of allSqlNames) {
|
|
528
541
|
const prevTable = prevBySql.get(sqlName);
|
|
529
542
|
const nextTable = nextBySql.get(sqlName);
|
|
530
|
-
const tableDiff = diffTable(prevTable, nextTable, prev, next);
|
|
543
|
+
const tableDiff = diffTable(prevTable, nextTable, prev, next, dialect);
|
|
531
544
|
if (!tableDiff)
|
|
532
545
|
continue;
|
|
533
|
-
const stripped = stripDestructiveFromDiff(tableDiff);
|
|
546
|
+
const stripped = stripDestructiveFromDiff(tableDiff, dialect);
|
|
534
547
|
if (stripped) {
|
|
535
548
|
safeDiffs.push(stripped);
|
|
536
549
|
}
|
|
@@ -538,7 +551,7 @@ export function resolveMigrationSql(diff, prev, next, acceptDataLoss) {
|
|
|
538
551
|
const prevExtensions = new Set(prev.extensions ?? []);
|
|
539
552
|
const newExtensions = (next.extensions ?? []).filter((ext) => !prevExtensions.has(ext));
|
|
540
553
|
return {
|
|
541
|
-
sql: buildMigrationSql(safeDiffs, newExtensions, next),
|
|
554
|
+
sql: buildMigrationSql(safeDiffs, newExtensions, next, undefined, dialect),
|
|
542
555
|
blocked: diff.destructive,
|
|
543
556
|
};
|
|
544
557
|
}
|