@alchemy.run/drizzle 2.0.0-beta.85 → 2.0.0-beta.86

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/lib/Schema.d.ts CHANGED
@@ -4,6 +4,27 @@ import * as FileSystem from "effect/FileSystem";
4
4
  import * as Path from "effect/Path";
5
5
  import type { Providers } from "./Providers.ts";
6
6
  export type Dialect = "postgres" | "mysql" | "sqlite";
7
+ /**
8
+ * Options passed through to `drizzle-kit generate`, matching the fields of
9
+ * the same name in `drizzle.config.ts`. `dialect`, `schema` and `out` come
10
+ * from {@link SchemaProps}.
11
+ */
12
+ export type SchemaGenerateOptions = {
13
+ /**
14
+ * Separate statements with `--> statement-breakpoint` markers. Set to
15
+ * `false` to match migrations generated with `breakpoints: false`.
16
+ *
17
+ * @default true
18
+ */
19
+ breakpoints?: boolean;
20
+ /**
21
+ * Generate even when migrations from parallel branches conflict, writing
22
+ * a merge migration. Not supported for postgres.
23
+ *
24
+ * @default false
25
+ */
26
+ ignoreConflicts?: boolean;
27
+ };
7
28
  export type SchemaProps = {
8
29
  /**
9
30
  * Path to the schema module, relative to the current working directory.
@@ -30,6 +51,12 @@ export type SchemaProps = {
30
51
  * @default "postgres"
31
52
  */
32
53
  dialect?: Dialect;
54
+ /**
55
+ * Options passed through to `drizzle-kit generate`.
56
+ *
57
+ * @example { breakpoints: false }
58
+ */
59
+ generate?: SchemaGenerateOptions;
33
60
  };
34
61
  export type Schema = Resource<"Drizzle.Schema", SchemaProps, {
35
62
  /** Path to the migrations directory, relative to the current working directory. */
@@ -1 +1 @@
1
- {"version":3,"file":"Schema.d.ts","sourceRoot":"","sources":["../src/Schema.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,QAAQ,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG5C,OAAO,KAAK,UAAU,MAAM,mBAAmB,CAAC;AAGhD,OAAO,KAAK,IAAI,MAAM,aAAa,CAAC;AAIpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,MAAM,MAAM,OAAO,GAAG,UAAU,GAAG,OAAO,GAAG,QAAQ,CAAC;AAkJtD,MAAM,MAAM,WAAW,GAAG;IACxB;;;;;;;OAOG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;;;;;;OAQG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG,QAAQ,CAC3B,gBAAgB,EAChB,WAAW,EACX;IACE,mFAAmF;IACnF,GAAG,EAAE,MAAM,CAAC;IACZ;;;;;OAKG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB,gEAAgE;IAChE,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB,EACD,KAAK,EACL,SAAS,CACV,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,eAAO,MAAM,MAAM,yCAAqC,CAAC;AAqEzD,eAAO,MAAM,cAAc,yGAgSxB,CAAC"}
1
+ {"version":3,"file":"Schema.d.ts","sources":["../src/Schema.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,QAAQ,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG5C,OAAO,KAAK,UAAU,MAAM,mBAAmB,CAAC;AAGhD,OAAO,KAAK,IAAI,MAAM,aAAa,CAAC;AAIpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,MAAM,MAAM,OAAO,GAAG,UAAU,GAAG,OAAO,GAAG,QAAQ,CAAC;AAkJtD;;;;GAIG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC;;;;;OAKG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB;;;;;;;OAOG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;;;;;;OAQG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,qBAAqB,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG,QAAQ,CAC3B,gBAAgB,EAChB,WAAW,EACX;IACE,mFAAmF;IACnF,GAAG,EAAE,MAAM,CAAC;IACZ;;;;;OAKG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB,gEAAgE;IAChE,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB,EACD,KAAK,EACL,SAAS,CACV,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,eAAO,MAAM,MAAM,yCAAqC,CAAC;AAwEzD,eAAO,MAAM,cAAc,yGAkSxB,CAAC"}
package/lib/Schema.js CHANGED
@@ -1,5 +1,14 @@
1
- var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExtension) || function (path, preserveJsx) {
1
+ var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExtension) || function (path, preserveJsx, extraExtensions, ignoreCase) {
2
2
  if (typeof path === "string" && /^\.\.?\//.test(path)) {
3
+ if (extraExtensions) {
4
+ for (var extension in extraExtensions) {
5
+ var suffix = path.slice(-extension.length);
6
+ if (suffix === extension || ignoreCase && suffix.toLowerCase() === extension.toLowerCase()) {
7
+ var output = extraExtensions[extension];
8
+ return output === extension ? path : path.slice(0, -extension.length) + output;
9
+ }
10
+ }
11
+ }
3
12
  return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {
4
13
  return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js");
5
14
  });
@@ -128,8 +137,11 @@ const importModule = (module) => Effect.tryPromise({
128
137
  // the global.
129
138
  const exitTrap = Semaphore.makeUnsafe(1);
130
139
  const callDrizzleKit = (command, run) => Effect.acquireUseRelease(Effect.sync(() => {
131
- // oxlint-disable-next-line typescript/unbound-method -- saved only to restore `process.exit` verbatim, never called unbound
132
- const trap = { exit: process.exit, exited: false };
140
+ // Saved only to restore `process.exit` verbatim, never called unbound.
141
+ // Read through `Reflect.get`: whether `typescript/unbound-method`
142
+ // flags `process.exit` depends on which `process` typing the linter's
143
+ // program resolves, which unrelated files change.
144
+ const trap = { exit: Reflect.get(process, "exit"), exited: false };
133
145
  process.exit = () => {
134
146
  trap.exited = true;
135
147
  throw new Error("drizzle-kit exited");
@@ -282,6 +294,7 @@ export const SchemaProvider = () => Provider.effect(Schema, Effect.gen(function*
282
294
  // questions (columns of a renamed table), so ask until none are left.
283
295
  const result = yield* Effect.gen(function* () {
284
296
  const result = yield* drizzleKit.generate({
297
+ ...props.generate,
285
298
  dialect: cliDialect(props),
286
299
  schema: schemaGlob(props),
287
300
  out,
@@ -316,7 +329,7 @@ export const SchemaProvider = () => Provider.effect(Schema, Effect.gen(function*
316
329
  },
317
330
  // Keyed by props: an interrupted create's recovery `read` sees the
318
331
  // persisted props, which may differ from the ones being deployed.
319
- (effect, props) => effect.pipe(Effect.scoped, Artifacts.cached(`detectDrift:${cliDialect(props)}:${resolveSchema(props)}:${resolveOut(props)}`)));
332
+ (effect, props) => effect.pipe(Effect.scoped, Artifacts.cached(`detectDrift:${cliDialect(props)}:${resolveSchema(props)}:${resolveOut(props)}:${JSON.stringify(props.generate ?? {})}`)));
320
333
  /**
321
334
  * Upgrade `out` if needed and generate the pending migration with the
322
335
  * answers gathered by {@link detectDrift}.
@@ -328,6 +341,7 @@ export const SchemaProvider = () => Provider.effect(Schema, Effect.gen(function*
328
341
  if (changed) {
329
342
  yield* fs.makeDirectory(out, { recursive: true });
330
343
  const result = yield* drizzleKit.generate({
344
+ ...props.generate,
331
345
  dialect: cliDialect(props),
332
346
  schema: schemaGlob(props),
333
347
  out,
package/lib/Schema.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Schema.js","sourceRoot":"","sources":["../src/Schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Schema.js","sources":["../src/Schema.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AAMxB,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,8BAA8B,EAC9B,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AAMxB,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,8BAA8B,EAC9B,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC"}
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AAExB,wEAAwE;AACxE,iEAAiE;AACjE,yEAAyE;AACzE,gDAAgD;AAChD,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,8BAA8B,EAC9B,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,0EAA0E;AAC1E,2EAA2E;AAC3E,2EAA2E;AAC3E,mEAAmE;AACnE,iEAAiE"}
1
+ {"version":3,"file":"index.js","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AAExB,wEAAwE;AACxE,iEAAiE;AACjE,yEAAyE;AACzE,gDAAgD;AAChD,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,8BAA8B,EAC9B,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,0EAA0E;AAC1E,2EAA2E;AAC3E,2EAA2E;AAC3E,mEAAmE;AACnE,iEAAiE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alchemy.run/drizzle",
3
- "version": "2.0.0-beta.85",
3
+ "version": "2.0.0-beta.86",
4
4
  "description": "Drizzle ORM integration for Alchemy: schemas, migrations and Effect SQL clients.",
5
5
  "keywords": [
6
6
  "alchemy",
@@ -45,31 +45,31 @@
45
45
  "access": "public"
46
46
  },
47
47
  "dependencies": {
48
- "@alchemy.run/sql": "2.0.0-beta.85",
49
- "@effect/sql-d1": "^4.1.0",
50
- "@effect/sql-sqlite-do": "^4.1.0"
48
+ "@alchemy.run/sql": "2.0.0-beta.86",
49
+ "@effect/sql-d1": "^4.1.4",
50
+ "@effect/sql-sqlite-do": "^4.1.4"
51
51
  },
52
52
  "devDependencies": {
53
- "@alchemy.run/cloudflare": "2.0.0-beta.85",
53
+ "@alchemy.run/cloudflare": "2.0.0-beta.86",
54
54
  "@cloudflare/workers-types": "5.20261026.1",
55
- "@effect/sql-libsql": "^4.1.0",
56
- "@effect/sql-mysql2": "^4.1.0",
57
- "@effect/sql-pg": "^4.1.0",
55
+ "@effect/sql-libsql": "^4.1.4",
56
+ "@effect/sql-mysql2": "^4.1.4",
57
+ "@effect/sql-pg": "^4.1.4",
58
58
  "@types/bun": "1.4.3",
59
- "alchemy": "2.0.0-beta.85",
59
+ "alchemy": "2.0.0-beta.86",
60
60
  "drizzle-orm": "1.0.0-rc.5",
61
- "effect": "^4.1.0",
62
- "typescript": "^7.0.2"
61
+ "effect": "^4.1.4",
62
+ "typescript": "^7.1.0-dev.20261105.1"
63
63
  },
64
64
  "peerDependencies": {
65
- "@alchemy.run/cloudflare": "2.0.0-beta.85",
66
- "@effect/sql-libsql": "^4.1.0",
67
- "@effect/sql-mysql2": "^4.1.0",
68
- "@effect/sql-pg": "^4.1.0",
69
- "alchemy": "2.0.0-beta.85",
65
+ "@alchemy.run/cloudflare": "2.0.0-beta.86",
66
+ "@effect/sql-libsql": "^4.1.4",
67
+ "@effect/sql-mysql2": "^4.1.4",
68
+ "@effect/sql-pg": "^4.1.4",
69
+ "alchemy": "2.0.0-beta.86",
70
70
  "drizzle-kit": "1.0.0-rc.5",
71
71
  "drizzle-orm": "1.0.0-rc.5",
72
- "effect": "^4.1.0"
72
+ "effect": "^4.1.4"
73
73
  },
74
74
  "peerDependenciesMeta": {
75
75
  "@alchemy.run/cloudflare": {
package/src/D1.ts CHANGED
@@ -1,12 +1,10 @@
1
+ // `@alchemy.run/cloudflare` is an optional peer — its value import is
2
+ // deferred to the call so `@alchemy.run/drizzle` resolves without it.
1
3
  import type { D1DatabaseSource } from "@alchemy.run/cloudflare/D1/SQL";
2
4
  import * as D1Client from "@effect/sql-d1/D1Client";
3
- import { makeExecutionMemo } from "alchemy/Runtime/ExecutionMemo";
4
- import { proxyChain } from "alchemy/Util/proxy-chain";
5
5
  import type { AnyRelations, EmptyRelations } from "drizzle-orm";
6
- import type { EffectSQLiteD1Database } from "drizzle-orm/effect-d1";
7
6
  import * as SQLiteD1Drizzle from "drizzle-orm/effect-d1";
8
7
  import * as Effect from "effect/Effect";
9
- import * as Layer from "effect/Layer";
10
8
 
11
9
  /**
12
10
  * Open a Drizzle database over a Cloudflare D1 binding using the
@@ -14,11 +12,8 @@ import * as Layer from "effect/Layer";
14
12
  * `@effect/sql-d1`'s `D1Client`).
15
13
  *
16
14
  * Accepts the client returned by `Cloudflare.D1.QueryDatabase(db)` — or its
17
- * `raw` effect directly — and returns a chainable Proxy over
18
- * `EffectSQLiteD1Database` (via `proxyChain`): every property read records a
19
- * step, every call records args, and the chain is replayed against the
20
- * resolved drizzle db when it's finally yielded as an Effect. Callers don't
21
- * need a separate `yield* conn` step:
15
+ * `raw` effect directly. Resolve it once at Construction phase and use it
16
+ * from any handler:
22
17
  *
23
18
  * ```typescript
24
19
  * const d1 = yield* Cloudflare.D1.QueryDatabase(Db);
@@ -29,49 +24,30 @@ import * as Layer from "effect/Layer";
29
24
  * });
30
25
  * ```
31
26
  *
32
- * The client build is deferred until the first query and memoized on the
33
- * current execution's `Scope` (via {@link makeExecutionMemo}), so the
34
- * `D1Client` (and its prepared-statement cache) is built at most once per
35
- * execution — a Worker `fetch`/`queue`/`scheduled` event, a Durable Object
36
- * call, or a Workflow run — and reused across every query in that execution.
37
- * Resolving the binding is likewise deferred, so deploy / plan-time
38
- * invocations (where `WorkerEnvironment` isn't provided) never touch D1.
27
+ * The database is a real `EffectSQLiteD1Database`. Queries, subqueries, CTEs
28
+ * and `sql` fragments are built by drizzle's own code, without the binding.
29
+ * Running a query resolves the binding. The `D1Client` over it (and its
30
+ * prepared-statement cache) is built at most once per execution — a Worker
31
+ * `fetch`/`queue`/`scheduled` event, a Durable Object call, or a Workflow
32
+ * run — and reused by every query in it. Deploy / plan-time invocations
33
+ * (where `WorkerEnvironment` isn't provided) never touch D1.
39
34
  *
40
- * The client is built against that same execution scope, so its finalizer
41
- * fires when the scope closes — when the request / run settles, not when the
42
- * Worker's isolate-lifetime init completes. Wrapping queries in a nested
43
- * `Effect.scoped` narrows both the memo and the client's lifetime to that
44
- * block: memo key and finalizer target are always the same scope object, so
45
- * they cannot disagree.
35
+ * The client belongs to the execution's `Scope` and is released when the
36
+ * request / run settles. Wrapping queries in a nested `Effect.scoped` gives
37
+ * that block its own client, released when the block ends.
46
38
  *
47
39
  * @binding
48
40
  */
49
- export const D1 = <TRelations extends AnyRelations = EmptyRelations, E = never, R = never>(
41
+ export const D1 = Effect.fn(function* <
42
+ TRelations extends AnyRelations = EmptyRelations,
43
+ E = never,
44
+ R = never,
45
+ >(
50
46
  database: D1DatabaseSource<E, R>,
51
47
  config?: SQLiteD1Drizzle.EffectDrizzleSQLiteD1Config<TRelations>,
52
- ) =>
53
- Effect.map(
54
- makeExecutionMemo(
55
- Effect.gen(function* () {
56
- const db = yield* Effect.isEffect(database) ? database : database.raw;
57
- const d1Ctx = yield* Layer.build(D1Client.layer({ db }));
58
- return yield* SQLiteD1Drizzle.makeWithDefaults(
59
- config ?? ({} as SQLiteD1Drizzle.EffectDrizzleSQLiteD1Config<TRelations>),
60
- ).pipe(Effect.provideContext(d1Ctx));
61
- }),
62
- ),
63
- (db) =>
64
- proxyChain<
65
- EffectSQLiteD1Database<TRelations> & {
66
- $client: D1Client.D1Client;
67
- }
68
- >(
69
- db as Effect.Effect<
70
- EffectSQLiteD1Database<TRelations> & {
71
- $client: D1Client.D1Client;
72
- },
73
- any,
74
- any
75
- >,
76
- ),
77
- );
48
+ ) {
49
+ const SQL = yield* Effect.promise(() => import("@alchemy.run/cloudflare/D1/SQL"));
50
+ return yield* SQLiteD1Drizzle.makeWithDefaults(
51
+ config ?? ({} as SQLiteD1Drizzle.EffectDrizzleSQLiteD1Config<TRelations>),
52
+ ).pipe(Effect.provideServiceEffect(D1Client.D1Client, SQL.D1(database)));
53
+ });
package/src/LibSQL.ts CHANGED
@@ -1,26 +1,15 @@
1
1
  import type { LibSQLConfig, LibSQLSource } from "@alchemy.run/sql/SQLite";
2
- // `@effect/sql-libsql` (and @libsql/client underneath) are optional peers —
3
- // value imports are deferred to first use so `@alchemy.run/drizzle` resolves
4
- // without them installed.
5
- import type * as LibsqlClient from "@effect/sql-libsql/LibsqlClient";
6
- import { makeExecutionMemo } from "alchemy/Runtime/ExecutionMemo";
7
- import { proxyChain } from "alchemy/Util/proxy-chain";
8
2
  import type { AnyRelations, EmptyRelations } from "drizzle-orm";
9
- import type { EffectLibsqlDatabase } from "drizzle-orm/effect-libsql";
10
3
  import type { EffectDrizzleSQLiteConfig } from "drizzle-orm/sqlite-core/effect/utils";
11
4
  import * as Effect from "effect/Effect";
12
- import * as Layer from "effect/Layer";
13
5
 
14
6
  /**
15
7
  * Open a Drizzle database over a libSQL database (e.g. Turso) using the
16
8
  * `drizzle-orm/effect-libsql` integration.
17
9
  *
18
10
  * Accepts the client returned by `Turso.Connect(db)` — or any
19
- * `{ url, authToken }` — and returns a chainable Proxy over
20
- * `EffectLibsqlDatabase` (via `proxyChain`): every property read records a
21
- * step, every call records args, and the chain is replayed against the
22
- * resolved drizzle db when it's finally yielded as an Effect. Callers don't
23
- * need a separate `yield* conn` step:
11
+ * `{ url, authToken }`. Resolve it once at Construction phase and use it
12
+ * from any handler:
24
13
  *
25
14
  * ```typescript
26
15
  * const conn = yield* Turso.Connect(Db);
@@ -31,44 +20,42 @@ import * as Layer from "effect/Layer";
31
20
  * });
32
21
  * ```
33
22
  *
34
- * The client is built lazily on the first query and memoized on the
35
- * current execution's `Scope` (via {@link makeExecutionMemo}), so it is
36
- * created at most once per execution — a Worker `fetch`/`queue`/`scheduled`
37
- * event, a Durable Object call, a Workflow run, or a Lambda invocation —
38
- * and closed when that execution settles. Resolving the URL and token is
39
- * likewise deferred, so deploy / plan-time invocations never connect.
23
+ * The database is a real `EffectLibsqlDatabase`. Queries, subqueries, CTEs
24
+ * and `sql` fragments are built by drizzle's own code, with no connection.
25
+ * Running a query opens the client. It is opened at most once per execution
26
+ * — a Worker `fetch`/`queue`/`scheduled` event, a Durable Object call, a
27
+ * Workflow run, or a Lambda invocation — and closed when that execution
28
+ * settles. The URL and token resolve then too, so deploy / plan-time
29
+ * invocations never connect.
40
30
  *
41
31
  * `@effect/sql-libsql` client options (e.g. `intMode`) are passed via
42
32
  * `config.client`.
43
33
  *
44
34
  * @binding
45
35
  */
46
- export const LibSQL = <TRelations extends AnyRelations = EmptyRelations, E = never, R = never>(
36
+ export const LibSQL = Effect.fn(function* <
37
+ TRelations extends AnyRelations = EmptyRelations,
38
+ E = never,
39
+ R = never,
40
+ >(
47
41
  source: LibSQLSource<E, R>,
48
42
  config?: EffectDrizzleSQLiteConfig<TRelations> & {
49
43
  /** Overrides for the underlying `@effect/sql-libsql` client. */
50
44
  readonly client?: LibSQLConfig;
51
45
  },
52
- ) =>
53
- Effect.map(
54
- makeExecutionMemo(
55
- Effect.gen(function* () {
56
- const [LibsqlClient, LibsqlDrizzle, { resolveLibSQLConfig }] = yield* Effect.promise(() =>
57
- Promise.all([
58
- import("@effect/sql-libsql/LibsqlClient"),
59
- import("drizzle-orm/effect-libsql"),
60
- import("@alchemy.run/sql/SQLite"),
61
- ]),
62
- );
63
- const { client, ...drizzleConfig } = config ?? {};
64
- const ctx = yield* Layer.build(
65
- LibsqlClient.layer(yield* resolveLibSQLConfig(source, client)),
66
- );
67
- return yield* LibsqlDrizzle.makeWithDefaults(
68
- drizzleConfig as EffectDrizzleSQLiteConfig<TRelations>,
69
- ).pipe(Effect.provideContext(ctx));
70
- }),
71
- ),
72
- (db) =>
73
- proxyChain<EffectLibsqlDatabase<TRelations> & { $client: LibsqlClient.LibsqlClient }>(db),
46
+ ) {
47
+ // `@effect/sql-libsql` (and @libsql/client underneath) are optional peers —
48
+ // value imports are deferred to the call so `@alchemy.run/drizzle` resolves
49
+ // without them installed.
50
+ const [{ LibsqlClient }, LibsqlDrizzle, SQL] = yield* Effect.promise(() =>
51
+ Promise.all([
52
+ import("@effect/sql-libsql/LibsqlClient"),
53
+ import("drizzle-orm/effect-libsql"),
54
+ import("@alchemy.run/sql/SQLite"),
55
+ ]),
74
56
  );
57
+ const { client, ...drizzleConfig } = config ?? {};
58
+ return yield* LibsqlDrizzle.makeWithDefaults(
59
+ drizzleConfig as EffectDrizzleSQLiteConfig<TRelations>,
60
+ ).pipe(Effect.provideServiceEffect(LibsqlClient, SQL.LibSQL(source, client)));
61
+ });
package/src/MySQL.ts CHANGED
@@ -1,15 +1,10 @@
1
1
  import type { MySQLConfig } from "@alchemy.run/sql/MySQL";
2
2
  // `@effect/sql-mysql2` (and mysql2 underneath) are optional peers — value
3
- // imports are deferred to first use so `@alchemy.run/drizzle` resolves without
3
+ // imports are deferred to the call so `@alchemy.run/drizzle` resolves without
4
4
  // them installed.
5
- import type * as MysqlClient from "@effect/sql-mysql2/MysqlClient";
6
- import { makeExecutionMemo } from "alchemy/Runtime/ExecutionMemo";
7
- import { proxyChain } from "alchemy/Util/proxy-chain";
8
5
  import type { AnyRelations, EmptyRelations } from "drizzle-orm";
9
- import type { EffectMysql2Database } from "drizzle-orm/effect-mysql2";
10
6
  import type { EffectDrizzleMySqlConfig } from "drizzle-orm/mysql-core/effect/utils";
11
7
  import * as Effect from "effect/Effect";
12
- import * as Layer from "effect/Layer";
13
8
  import type * as Redacted from "effect/Redacted";
14
9
 
15
10
  /**
@@ -25,10 +20,12 @@ import type * as Redacted from "effect/Redacted";
25
20
  * });
26
21
  * ```
27
22
  *
28
- * The pool opens on the first query of an execution, is reused for every
29
- * query in it, and closes when the event settles (see
30
- * {@link makeExecutionMemo}); plan/deploy never connect. Workers defaults
31
- * ({@link resolveMySQLConfig}) are overridden via `config.client`:
23
+ * The database is a real `EffectMysql2Database`. Queries, subqueries, CTEs
24
+ * and `sql` fragments are built by drizzle's own code, with no connection.
25
+ * Running a query opens the pool. The pool is opened at most once per
26
+ * execution and closes when the event settles. The connection string
27
+ * resolves then too, so deploy / plan-time invocations never connect.
28
+ * Workers defaults (`resolveMySQLConfig`) are overridden via `config.client`:
32
29
  *
33
30
  * ```typescript
34
31
  * const db = yield* Drizzle.MySQL(connectionString, {
@@ -39,7 +36,11 @@ import type * as Redacted from "effect/Redacted";
39
36
  *
40
37
  * @binding
41
38
  */
42
- export const MySQL = <TRelations extends AnyRelations = EmptyRelations, E = never, R = never>(
39
+ export const MySQL = Effect.fn(function* <
40
+ TRelations extends AnyRelations = EmptyRelations,
41
+ E = never,
42
+ R = never,
43
+ >(
43
44
  connectionString: Effect.Effect<Redacted.Redacted<string>, E, R>,
44
45
  config?: EffectDrizzleMySqlConfig<TRelations> & {
45
46
  /**
@@ -49,38 +50,16 @@ export const MySQL = <TRelations extends AnyRelations = EmptyRelations, E = neve
49
50
  */
50
51
  readonly client?: Omit<MySQLConfig, "url">;
51
52
  },
52
- ) =>
53
- Effect.map(
54
- makeExecutionMemo(
55
- Effect.gen(function* () {
56
- const [MysqlClient, MySqlDrizzle, { resolveMySQLConfig }] = yield* Effect.promise(() =>
57
- Promise.all([
58
- import("@effect/sql-mysql2/MysqlClient"),
59
- import("drizzle-orm/effect-mysql2"),
60
- import("@alchemy.run/sql/MySQL"),
61
- ]),
62
- );
63
- const { client, ...drizzleConfig } = config ?? {};
64
- const mysqlCtx = yield* Layer.build(
65
- MysqlClient.layer(yield* resolveMySQLConfig({ ...client, url: connectionString })),
66
- );
67
- return yield* MySqlDrizzle.makeWithDefaults(
68
- drizzleConfig as EffectDrizzleMySqlConfig<TRelations>,
69
- ).pipe(Effect.provideContext(mysqlCtx));
70
- }),
71
- ),
72
- (db) =>
73
- proxyChain<
74
- EffectMysql2Database<TRelations> & {
75
- $client: MysqlClient.MysqlClient;
76
- }
77
- >(
78
- db as Effect.Effect<
79
- EffectMysql2Database<TRelations> & {
80
- $client: MysqlClient.MysqlClient;
81
- },
82
- any,
83
- any
84
- >,
85
- ),
53
+ ) {
54
+ const [{ MysqlClient }, MySqlDrizzle, SQL] = yield* Effect.promise(() =>
55
+ Promise.all([
56
+ import("@effect/sql-mysql2/MysqlClient"),
57
+ import("drizzle-orm/effect-mysql2"),
58
+ import("@alchemy.run/sql/MySQL"),
59
+ ]),
86
60
  );
61
+ const { client, ...drizzleConfig } = config ?? {};
62
+ return yield* MySqlDrizzle.makeWithDefaults(
63
+ drizzleConfig as EffectDrizzleMySqlConfig<TRelations>,
64
+ ).pipe(Effect.provideServiceEffect(MysqlClient, SQL.MySQL({ ...client, url: connectionString })));
65
+ });