@effect/sql-mysql2 4.0.0-beta.66 → 4.0.0-beta.68

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.
@@ -1,5 +1,22 @@
1
1
  /**
2
- * @since 1.0.0
2
+ * MySQL client implementation for Effect SQL, backed by the `mysql2` driver.
3
+ *
4
+ * This module exposes constructors and layers for providing both the MySQL-specific
5
+ * `MysqlClient` service and the generic `SqlClient` service. It is intended for server
6
+ * applications, background workers, migrations, and tests that need Effect SQL query
7
+ * compilation, scoped resource management, streaming queries, and consistent `SqlError`
8
+ * classification for MySQL driver failures.
9
+ *
10
+ * Each client owns a scoped mysql2 pool, validates connectivity with `SELECT 1` during
11
+ * acquisition, and closes the pool when the surrounding scope is released. You can configure
12
+ * the pool from a connection URI or discrete connection fields; when `url` is supplied it
13
+ * takes precedence over the host, port, database, username, and password fields. Regular
14
+ * queries run through the shared pool, while transactions acquire a dedicated pooled
15
+ * connection for their lifetime, so long-running transactions and streams can occupy pool
16
+ * capacity. Size `maxConnections`, `connectionTTL`, and any mysql2 `poolConfig` with that in
17
+ * mind.
18
+ *
19
+ * @since 4.0.0
3
20
  */
4
21
  import * as Config from "effect/Config";
5
22
  import * as Context from "effect/Context";
@@ -14,31 +31,41 @@ import { SqlError } from "effect/unstable/sql/SqlError";
14
31
  import * as Statement from "effect/unstable/sql/Statement";
15
32
  import * as Mysql from "mysql2";
16
33
  /**
17
- * @category type ids
18
- * @since 1.0.0
34
+ * Runtime type identifier used to mark `MysqlClient` values.
35
+ *
36
+ * @category type IDs
37
+ * @since 4.0.0
19
38
  */
20
39
  export declare const TypeId: TypeId;
21
40
  /**
22
- * @category type ids
23
- * @since 1.0.0
41
+ * Type-level identifier used to mark `MysqlClient` values.
42
+ *
43
+ * @category type IDs
44
+ * @since 4.0.0
24
45
  */
25
46
  export type TypeId = "~@effect/sql-mysql2/MysqlClient";
26
47
  /**
48
+ * mysql2-backed SQL client service, extending `SqlClient` with its runtime type marker and client configuration.
49
+ *
27
50
  * @category models
28
- * @since 1.0.0
51
+ * @since 4.0.0
29
52
  */
30
53
  export interface MysqlClient extends Client.SqlClient {
31
54
  readonly [TypeId]: TypeId;
32
55
  readonly config: MysqlClientConfig;
33
56
  }
34
57
  /**
58
+ * Context tag used to access the `MysqlClient` service.
59
+ *
35
60
  * @category tags
36
- * @since 1.0.0
61
+ * @since 4.0.0
37
62
  */
38
63
  export declare const MysqlClient: Context.Service<MysqlClient, MysqlClient>;
39
64
  /**
65
+ * Configuration for a mysql2 client, including connection URI or connection fields, pool options, span attributes, and query/result name transforms.
66
+ *
40
67
  * @category models
41
- * @since 1.0.0
68
+ * @since 4.0.0
42
69
  */
43
70
  export interface MysqlClientConfig {
44
71
  /**
@@ -58,23 +85,31 @@ export interface MysqlClientConfig {
58
85
  readonly transformQueryNames?: ((str: string) => string) | undefined;
59
86
  }
60
87
  /**
88
+ * Creates a scoped MySQL client backed by a managed mysql2 pool, verifying connectivity and supporting streaming queries through mysql2 query streams.
89
+ *
61
90
  * @category constructors
62
- * @since 1.0.0
91
+ * @since 4.0.0
63
92
  */
64
93
  export declare const make: (options: MysqlClientConfig) => Effect.Effect<MysqlClient, SqlError, Scope | Reactivity.Reactivity>;
65
94
  /**
95
+ * Creates a layer from a `Config`-wrapped MySQL client configuration, providing both `MysqlClient` and `SqlClient`.
96
+ *
66
97
  * @category layers
67
- * @since 1.0.0
98
+ * @since 4.0.0
68
99
  */
69
100
  export declare const layerConfig: (config: Config.Wrap<MysqlClientConfig>) => Layer.Layer<MysqlClient | Client.SqlClient, Config.ConfigError | SqlError>;
70
101
  /**
102
+ * Creates a layer from a concrete MySQL client configuration, providing both `MysqlClient` and `SqlClient`.
103
+ *
71
104
  * @category layers
72
- * @since 1.0.0
105
+ * @since 4.0.0
73
106
  */
74
107
  export declare const layer: (config: MysqlClientConfig) => Layer.Layer<MysqlClient | Client.SqlClient, Config.ConfigError | SqlError>;
75
108
  /**
109
+ * Creates the MySQL statement compiler, using `?` placeholders and backtick-escaped identifiers.
110
+ *
76
111
  * @category compiler
77
- * @since 1.0.0
112
+ * @since 4.0.0
78
113
  */
79
114
  export declare const makeCompiler: (transform?: (_: string) => string) => Statement.Compiler;
80
115
  //# sourceMappingURL=MysqlClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MysqlClient.d.ts","sourceRoot":"","sources":["../src/MysqlClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MysqlClient.d.ts","sourceRoot":"","sources":["../src/MysqlClient.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,22 @@
1
1
  /**
2
- * @since 1.0.0
2
+ * MySQL client implementation for Effect SQL, backed by the `mysql2` driver.
3
+ *
4
+ * This module exposes constructors and layers for providing both the MySQL-specific
5
+ * `MysqlClient` service and the generic `SqlClient` service. It is intended for server
6
+ * applications, background workers, migrations, and tests that need Effect SQL query
7
+ * compilation, scoped resource management, streaming queries, and consistent `SqlError`
8
+ * classification for MySQL driver failures.
9
+ *
10
+ * Each client owns a scoped mysql2 pool, validates connectivity with `SELECT 1` during
11
+ * acquisition, and closes the pool when the surrounding scope is released. You can configure
12
+ * the pool from a connection URI or discrete connection fields; when `url` is supplied it
13
+ * takes precedence over the host, port, database, username, and password fields. Regular
14
+ * queries run through the shared pool, while transactions acquire a dedicated pooled
15
+ * connection for their lifetime, so long-running transactions and streams can occupy pool
16
+ * capacity. Size `maxConnections`, `connectionTTL`, and any mysql2 `poolConfig` with that in
17
+ * mind.
18
+ *
19
+ * @since 4.0.0
3
20
  */
4
21
  import * as Config from "effect/Config";
5
22
  import * as Context from "effect/Context";
@@ -103,18 +120,24 @@ const classifyError = (cause, message, operation) => {
103
120
  return new UnknownError(props);
104
121
  };
105
122
  /**
106
- * @category type ids
107
- * @since 1.0.0
123
+ * Runtime type identifier used to mark `MysqlClient` values.
124
+ *
125
+ * @category type IDs
126
+ * @since 4.0.0
108
127
  */
109
128
  export const TypeId = "~@effect/sql-mysql2/MysqlClient";
110
129
  /**
130
+ * Context tag used to access the `MysqlClient` service.
131
+ *
111
132
  * @category tags
112
- * @since 1.0.0
133
+ * @since 4.0.0
113
134
  */
114
135
  export const MysqlClient = /*#__PURE__*/Context.Service("@effect/sql-mysql2/MysqlClient");
115
136
  /**
137
+ * Creates a scoped MySQL client backed by a managed mysql2 pool, verifying connectivity and supporting streaming queries through mysql2 query streams.
138
+ *
116
139
  * @category constructors
117
- * @since 1.0.0
140
+ * @since 4.0.0
118
141
  */
119
142
  export const make = options => Effect.gen(function* () {
120
143
  const compiler = makeCompiler(options.transformQueryNames);
@@ -232,18 +255,24 @@ export const make = options => Effect.gen(function* () {
232
255
  });
233
256
  });
234
257
  /**
258
+ * Creates a layer from a `Config`-wrapped MySQL client configuration, providing both `MysqlClient` and `SqlClient`.
259
+ *
235
260
  * @category layers
236
- * @since 1.0.0
261
+ * @since 4.0.0
237
262
  */
238
263
  export const layerConfig = config => Layer.effectContext(Config.unwrap(config).pipe(Effect.flatMap(make), Effect.map(client => Context.make(MysqlClient, client).pipe(Context.add(Client.SqlClient, client))))).pipe(Layer.provide(Reactivity.layer));
239
264
  /**
265
+ * Creates a layer from a concrete MySQL client configuration, providing both `MysqlClient` and `SqlClient`.
266
+ *
240
267
  * @category layers
241
- * @since 1.0.0
268
+ * @since 4.0.0
242
269
  */
243
270
  export const layer = config => Layer.effectContext(Effect.map(make(config), client => Context.make(MysqlClient, client).pipe(Context.add(Client.SqlClient, client)))).pipe(Layer.provide(Reactivity.layer));
244
271
  /**
272
+ * Creates the MySQL statement compiler, using `?` placeholders and backtick-escaped identifiers.
273
+ *
245
274
  * @category compiler
246
- * @since 1.0.0
275
+ * @since 4.0.0
247
276
  */
248
277
  export const makeCompiler = transform => Statement.makeCompiler({
249
278
  dialect: "mysql",
@@ -1 +1 @@
1
- {"version":3,"file":"MysqlClient.js","names":["Config","Context","Duration","Effect","Layer","Redacted","Stream","Reactivity","Client","AuthenticationError","AuthorizationError","ConnectionError","ConstraintError","DeadlockError","LockTimeoutError","SqlError","SqlSyntaxError","StatementTimeoutError","UniqueViolation","UnknownError","asyncPauseResume","Statement","Mysql","ATTR_DB_SYSTEM_NAME","ATTR_DB_NAMESPACE","ATTR_SERVER_ADDRESS","ATTR_SERVER_PORT","mysqlErrnoFromCause","cause","undefined","errno","mysqlConnectionErrorCodes","Set","mysqlAuthorizationErrorCodes","mysqlSyntaxErrorCodes","mysqlConstraintErrorCodes","UNKNOWN_CONSTRAINT","normalizeConstraintIdentifier","identifier","trimmed","trim","length","mysqlCauseProperty","property","mysqlDuplicateEntryConstraintFromMessage","message","match","exec","mysqlDuplicateEntryConstraintFromCause","constraint","sqlMessageConstraint","classifyError","operation","props","has","TypeId","MysqlClient","Service","make","options","gen","compiler","makeCompiler","transformQueryNames","transformRows","transformResultNames","defaultTransforms","array","ConnectionImpl","conn","constructor","runRaw","sql","values","rowsAsArray","method","callback","resume","results","_fields","fail","reason","succeed","run","pipe","map","Array","isArray","execute","params","executeRaw","executeValues","executeUnprepared","executeStream","stream","queryStream","mapArray","_","pool","url","createPool","uri","value","multipleStatements","supportBigNumbers","connectionLimit","maxConnections","idleTimeout","connectionTTL","toMillis","fromInputUnsafe","poolConfig","host","port","database","user","username","password","acquireRelease","query","void","end","timeoutOrElse","duration","seconds","orElse","Error","poolConnection","acquireConn","getConnection","sync","release","transactionAcquirer","spanAttributes","Object","entries","push","assign","acquirer","config","layerConfig","effectContext","unwrap","flatMap","client","add","SqlClient","provide","layer","transform","dialect","placeholder","onIdentifier","withoutTransform","escape","onCustom","onRecordUpdate","defaultEscape","fnUntraced","emit","addFinalizer","destroy","buffer","taskPending","on","row","queueMicrotask","items","onPause","pause","onResume"],"sources":["../src/MysqlClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"MysqlClient.js","names":["Config","Context","Duration","Effect","Layer","Redacted","Stream","Reactivity","Client","AuthenticationError","AuthorizationError","ConnectionError","ConstraintError","DeadlockError","LockTimeoutError","SqlError","SqlSyntaxError","StatementTimeoutError","UniqueViolation","UnknownError","asyncPauseResume","Statement","Mysql","ATTR_DB_SYSTEM_NAME","ATTR_DB_NAMESPACE","ATTR_SERVER_ADDRESS","ATTR_SERVER_PORT","mysqlErrnoFromCause","cause","undefined","errno","mysqlConnectionErrorCodes","Set","mysqlAuthorizationErrorCodes","mysqlSyntaxErrorCodes","mysqlConstraintErrorCodes","UNKNOWN_CONSTRAINT","normalizeConstraintIdentifier","identifier","trimmed","trim","length","mysqlCauseProperty","property","mysqlDuplicateEntryConstraintFromMessage","message","match","exec","mysqlDuplicateEntryConstraintFromCause","constraint","sqlMessageConstraint","classifyError","operation","props","has","TypeId","MysqlClient","Service","make","options","gen","compiler","makeCompiler","transformQueryNames","transformRows","transformResultNames","defaultTransforms","array","ConnectionImpl","conn","constructor","runRaw","sql","values","rowsAsArray","method","callback","resume","results","_fields","fail","reason","succeed","run","pipe","map","Array","isArray","execute","params","executeRaw","executeValues","executeUnprepared","executeStream","stream","queryStream","mapArray","_","pool","url","createPool","uri","value","multipleStatements","supportBigNumbers","connectionLimit","maxConnections","idleTimeout","connectionTTL","toMillis","fromInputUnsafe","poolConfig","host","port","database","user","username","password","acquireRelease","query","void","end","timeoutOrElse","duration","seconds","orElse","Error","poolConnection","acquireConn","getConnection","sync","release","transactionAcquirer","spanAttributes","Object","entries","push","assign","acquirer","config","layerConfig","effectContext","unwrap","flatMap","client","add","SqlClient","provide","layer","transform","dialect","placeholder","onIdentifier","withoutTransform","escape","onCustom","onRecordUpdate","defaultEscape","fnUntraced","emit","addFinalizer","destroy","buffer","taskPending","on","row","queueMicrotask","items","onPause","pause","onResume"],"sources":["../src/MysqlClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,23 @@
1
1
  /**
2
- * @since 1.0.0
2
+ * Utilities for applying Effect SQL migrations to MySQL databases through the
3
+ * mysql2-backed `SqlClient`.
4
+ *
5
+ * This module re-exports the shared `Migrator` loaders and error types, then
6
+ * provides `run` and `layer` helpers for applying ordered migrations using the
7
+ * currently configured MySQL `SqlClient`. It is commonly used during application
8
+ * startup, in integration tests that provision a temporary schema, or in layer
9
+ * graphs where dependent services should not start until the database schema is
10
+ * current.
11
+ *
12
+ * Applied migrations are stored in `effect_sql_migrations` by default and use
13
+ * the shared `<id>_<name>` loader convention. Only migrations with ids greater
14
+ * than the latest recorded id are run. MySQL DDL can cause implicit commits, and
15
+ * this adapter relies on migration table constraints to detect concurrent
16
+ * runners, so coordinate startup runners and write migrations to tolerate
17
+ * MySQL's transactional semantics. Schema dump support is not enabled in this
18
+ * adapter, so `schemaDirectory` does not emit a MySQL dump.
19
+ *
20
+ * @since 4.0.0
3
21
  */
4
22
  import type * as Effect from "effect/Effect";
5
23
  import * as Layer from "effect/Layer";
@@ -7,17 +25,21 @@ import * as Migrator from "effect/unstable/sql/Migrator";
7
25
  import type * as Client from "effect/unstable/sql/SqlClient";
8
26
  import type { SqlError } from "effect/unstable/sql/SqlError";
9
27
  /**
10
- * @since 1.0.0
28
+ * @since 4.0.0
11
29
  */
12
30
  export * from "effect/unstable/sql/Migrator";
13
31
  /**
14
- * @category constructor
15
- * @since 1.0.0
32
+ * Runs SQL migrations using the configured `SqlClient`, returning the migrations that were applied.
33
+ *
34
+ * @category constructors
35
+ * @since 4.0.0
16
36
  */
17
37
  export declare const run: <R2 = never>({ loader, schemaDirectory, table }: Migrator.MigratorOptions<R2>) => Effect.Effect<ReadonlyArray<readonly [id: number, name: string]>, Migrator.MigrationError | SqlError, Client.SqlClient | R2>;
18
38
  /**
39
+ * Creates a layer that runs the configured SQL migrations during layer construction.
40
+ *
19
41
  * @category layers
20
- * @since 1.0.0
42
+ * @since 4.0.0
21
43
  */
22
44
  export declare const layer: <R>(options: Migrator.MigratorOptions<R>) => Layer.Layer<never, Migrator.MigrationError | SqlError, Client.SqlClient | R>;
23
45
  //# sourceMappingURL=MysqlMigrator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MysqlMigrator.d.ts","sourceRoot":"","sources":["../src/MysqlMigrator.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,QAAQ,MAAM,8BAA8B,CAAA;AACxD,OAAO,KAAK,KAAK,MAAM,MAAM,+BAA+B,CAAA;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AAE5D;;GAEG;AACH,cAAc,8BAA8B,CAAA;AAE5C;;;GAGG;AACH,eAAO,MAAM,GAAG,EAAE,CAAC,EAAE,GAAG,KAAK,EAC3B,EAAE,MAAM,EAAE,eAAe,EAAE,KAAK,EAAE,EAAE,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,KAC7D,MAAM,CAAC,MAAM,CAChB,aAAa,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAClD,QAAQ,CAAC,cAAc,GAAG,QAAQ,EAClC,MAAM,CAAC,SAAS,GAAG,EAAE,CAsDrB,CAAA;AAEF;;;GAGG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,EACrB,SAAS,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,KACnC,KAAK,CAAC,KAAK,CACZ,KAAK,EACL,QAAQ,CAAC,cAAc,GAAG,QAAQ,EAClC,MAAM,CAAC,SAAS,GAAG,CAAC,CACgB,CAAA"}
1
+ {"version":3,"file":"MysqlMigrator.d.ts","sourceRoot":"","sources":["../src/MysqlMigrator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,QAAQ,MAAM,8BAA8B,CAAA;AACxD,OAAO,KAAK,KAAK,MAAM,MAAM,+BAA+B,CAAA;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AAE5D;;GAEG;AACH,cAAc,8BAA8B,CAAA;AAE5C;;;;;GAKG;AACH,eAAO,MAAM,GAAG,EAAE,CAAC,EAAE,GAAG,KAAK,EAC3B,EAAE,MAAM,EAAE,eAAe,EAAE,KAAK,EAAE,EAAE,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,KAC7D,MAAM,CAAC,MAAM,CAChB,aAAa,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAClD,QAAQ,CAAC,cAAc,GAAG,QAAQ,EAClC,MAAM,CAAC,SAAS,GAAG,EAAE,CAsDrB,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,EACrB,SAAS,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,KACnC,KAAK,CAAC,KAAK,CACZ,KAAK,EACL,QAAQ,CAAC,cAAc,GAAG,QAAQ,EAClC,MAAM,CAAC,SAAS,GAAG,CAAC,CACgB,CAAA"}
@@ -1,12 +1,14 @@
1
1
  import * as Layer from "effect/Layer";
2
2
  import * as Migrator from "effect/unstable/sql/Migrator";
3
3
  /**
4
- * @since 1.0.0
4
+ * @since 4.0.0
5
5
  */
6
6
  export * from "effect/unstable/sql/Migrator";
7
7
  /**
8
- * @category constructor
9
- * @since 1.0.0
8
+ * Runs SQL migrations using the configured `SqlClient`, returning the migrations that were applied.
9
+ *
10
+ * @category constructors
11
+ * @since 4.0.0
10
12
  */
11
13
  export const run = /*#__PURE__*/Migrator.make({
12
14
  // TODO: re-add when Command module is available
@@ -63,8 +65,10 @@ export const run = /*#__PURE__*/Migrator.make({
63
65
  // }
64
66
  });
65
67
  /**
68
+ * Creates a layer that runs the configured SQL migrations during layer construction.
69
+ *
66
70
  * @category layers
67
- * @since 1.0.0
71
+ * @since 4.0.0
68
72
  */
69
73
  export const layer = options => Layer.effectDiscard(run(options));
70
74
  //# sourceMappingURL=MysqlMigrator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MysqlMigrator.js","names":["Layer","Migrator","run","make","layer","options","effectDiscard"],"sources":["../src/MysqlMigrator.ts"],"sourcesContent":[null],"mappings":"AAIA,OAAO,KAAKA,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,QAAQ,MAAM,8BAA8B;AAIxD;;;AAGA,cAAc,8BAA8B;AAE5C;;;;AAIA,OAAO,MAAMC,GAAG,gBAMZD,QAAQ,CAACE,IAAI,CAAC;EAChB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAAA,CACD,CAAC;AAEF;;;;AAIA,OAAO,MAAMC,KAAK,GAChBC,OAAoC,IAKjCL,KAAK,CAACM,aAAa,CAACJ,GAAG,CAACG,OAAO,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"MysqlMigrator.js","names":["Layer","Migrator","run","make","layer","options","effectDiscard"],"sources":["../src/MysqlMigrator.ts"],"sourcesContent":[null],"mappings":"AAsBA,OAAO,KAAKA,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,QAAQ,MAAM,8BAA8B;AAIxD;;;AAGA,cAAc,8BAA8B;AAE5C;;;;;;AAMA,OAAO,MAAMC,GAAG,gBAMZD,QAAQ,CAACE,IAAI,CAAC;EAChB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAAA,CACD,CAAC;AAEF;;;;;;AAMA,OAAO,MAAMC,KAAK,GAChBC,OAAoC,IAKjCL,KAAK,CAACM,aAAa,CAACJ,GAAG,CAACG,OAAO,CAAC,CAAC","ignoreList":[]}
package/dist/index.d.ts CHANGED
@@ -1,12 +1,47 @@
1
1
  /**
2
- * @since 1.0.0
2
+ * @since 4.0.0
3
3
  */
4
4
  /**
5
- * @since 1.0.0
5
+ * MySQL client implementation for Effect SQL, backed by the `mysql2` driver.
6
+ *
7
+ * This module exposes constructors and layers for providing both the MySQL-specific
8
+ * `MysqlClient` service and the generic `SqlClient` service. It is intended for server
9
+ * applications, background workers, migrations, and tests that need Effect SQL query
10
+ * compilation, scoped resource management, streaming queries, and consistent `SqlError`
11
+ * classification for MySQL driver failures.
12
+ *
13
+ * Each client owns a scoped mysql2 pool, validates connectivity with `SELECT 1` during
14
+ * acquisition, and closes the pool when the surrounding scope is released. You can configure
15
+ * the pool from a connection URI or discrete connection fields; when `url` is supplied it
16
+ * takes precedence over the host, port, database, username, and password fields. Regular
17
+ * queries run through the shared pool, while transactions acquire a dedicated pooled
18
+ * connection for their lifetime, so long-running transactions and streams can occupy pool
19
+ * capacity. Size `maxConnections`, `connectionTTL`, and any mysql2 `poolConfig` with that in
20
+ * mind.
21
+ *
22
+ * @since 4.0.0
6
23
  */
7
24
  export * as MysqlClient from "./MysqlClient.ts";
8
25
  /**
9
- * @since 1.0.0
26
+ * Utilities for applying Effect SQL migrations to MySQL databases through the
27
+ * mysql2-backed `SqlClient`.
28
+ *
29
+ * This module re-exports the shared `Migrator` loaders and error types, then
30
+ * provides `run` and `layer` helpers for applying ordered migrations using the
31
+ * currently configured MySQL `SqlClient`. It is commonly used during application
32
+ * startup, in integration tests that provision a temporary schema, or in layer
33
+ * graphs where dependent services should not start until the database schema is
34
+ * current.
35
+ *
36
+ * Applied migrations are stored in `effect_sql_migrations` by default and use
37
+ * the shared `<id>_<name>` loader convention. Only migrations with ids greater
38
+ * than the latest recorded id are run. MySQL DDL can cause implicit commits, and
39
+ * this adapter relies on migration table constraints to detect concurrent
40
+ * runners, so coordinate startup runners and write migrations to tolerate
41
+ * MySQL's transactional semantics. Schema dump support is not enabled in this
42
+ * adapter, so `schemaDirectory` does not emit a MySQL dump.
43
+ *
44
+ * @since 4.0.0
10
45
  */
11
46
  export * as MysqlMigrator from "./MysqlMigrator.ts";
12
47
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;GAEG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;GAEG;AACH,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA"}
package/dist/index.js CHANGED
@@ -1,13 +1,48 @@
1
1
  /**
2
- * @since 1.0.0
2
+ * @since 4.0.0
3
3
  */
4
4
  // @barrel: Auto-generated exports. Do not edit manually.
5
5
  /**
6
- * @since 1.0.0
6
+ * MySQL client implementation for Effect SQL, backed by the `mysql2` driver.
7
+ *
8
+ * This module exposes constructors and layers for providing both the MySQL-specific
9
+ * `MysqlClient` service and the generic `SqlClient` service. It is intended for server
10
+ * applications, background workers, migrations, and tests that need Effect SQL query
11
+ * compilation, scoped resource management, streaming queries, and consistent `SqlError`
12
+ * classification for MySQL driver failures.
13
+ *
14
+ * Each client owns a scoped mysql2 pool, validates connectivity with `SELECT 1` during
15
+ * acquisition, and closes the pool when the surrounding scope is released. You can configure
16
+ * the pool from a connection URI or discrete connection fields; when `url` is supplied it
17
+ * takes precedence over the host, port, database, username, and password fields. Regular
18
+ * queries run through the shared pool, while transactions acquire a dedicated pooled
19
+ * connection for their lifetime, so long-running transactions and streams can occupy pool
20
+ * capacity. Size `maxConnections`, `connectionTTL`, and any mysql2 `poolConfig` with that in
21
+ * mind.
22
+ *
23
+ * @since 4.0.0
7
24
  */
8
25
  export * as MysqlClient from "./MysqlClient.js";
9
26
  /**
10
- * @since 1.0.0
27
+ * Utilities for applying Effect SQL migrations to MySQL databases through the
28
+ * mysql2-backed `SqlClient`.
29
+ *
30
+ * This module re-exports the shared `Migrator` loaders and error types, then
31
+ * provides `run` and `layer` helpers for applying ordered migrations using the
32
+ * currently configured MySQL `SqlClient`. It is commonly used during application
33
+ * startup, in integration tests that provision a temporary schema, or in layer
34
+ * graphs where dependent services should not start until the database schema is
35
+ * current.
36
+ *
37
+ * Applied migrations are stored in `effect_sql_migrations` by default and use
38
+ * the shared `<id>_<name>` loader convention. Only migrations with ids greater
39
+ * than the latest recorded id are run. MySQL DDL can cause implicit commits, and
40
+ * this adapter relies on migration table constraints to detect concurrent
41
+ * runners, so coordinate startup runners and write migrations to tolerate
42
+ * MySQL's transactional semantics. Schema dump support is not enabled in this
43
+ * adapter, so `schemaDirectory` does not emit a MySQL dump.
44
+ *
45
+ * @since 4.0.0
11
46
  */
12
47
  export * as MysqlMigrator from "./MysqlMigrator.js";
13
48
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["MysqlClient","MysqlMigrator"],"sources":["../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAIA;AAEA;;;AAGA,OAAO,KAAKA,WAAW,MAAM,kBAAkB;AAE/C;;;AAGA,OAAO,KAAKC,aAAa,MAAM,oBAAoB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["MysqlClient","MysqlMigrator"],"sources":["../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAIA;AAEA;;;;;;;;;;;;;;;;;;;;AAoBA,OAAO,KAAKA,WAAW,MAAM,kBAAkB;AAE/C;;;;;;;;;;;;;;;;;;;;;AAqBA,OAAO,KAAKC,aAAa,MAAM,oBAAoB","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/sql-mysql2",
3
- "version": "4.0.0-beta.66",
3
+ "version": "4.0.0-beta.68",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "description": "A MySQL toolkit for Effect",
@@ -44,13 +44,13 @@
44
44
  },
45
45
  "devDependencies": {
46
46
  "@testcontainers/mysql": "^11.14.0",
47
- "effect": "^4.0.0-beta.66"
47
+ "effect": "^4.0.0-beta.68"
48
48
  },
49
49
  "peerDependencies": {
50
- "effect": "^4.0.0-beta.66"
50
+ "effect": "^4.0.0-beta.68"
51
51
  },
52
52
  "dependencies": {
53
- "mysql2": "^3.22.0"
53
+ "mysql2": "^3.22.3"
54
54
  },
55
55
  "scripts": {
56
56
  "codegen": "effect-utils codegen",
@@ -1,5 +1,22 @@
1
1
  /**
2
- * @since 1.0.0
2
+ * MySQL client implementation for Effect SQL, backed by the `mysql2` driver.
3
+ *
4
+ * This module exposes constructors and layers for providing both the MySQL-specific
5
+ * `MysqlClient` service and the generic `SqlClient` service. It is intended for server
6
+ * applications, background workers, migrations, and tests that need Effect SQL query
7
+ * compilation, scoped resource management, streaming queries, and consistent `SqlError`
8
+ * classification for MySQL driver failures.
9
+ *
10
+ * Each client owns a scoped mysql2 pool, validates connectivity with `SELECT 1` during
11
+ * acquisition, and closes the pool when the surrounding scope is released. You can configure
12
+ * the pool from a connection URI or discrete connection fields; when `url` is supplied it
13
+ * takes precedence over the host, port, database, username, and password fields. Regular
14
+ * queries run through the shared pool, while transactions acquire a dedicated pooled
15
+ * connection for their lifetime, so long-running transactions and streams can occupy pool
16
+ * capacity. Size `maxConnections`, `connectionTTL`, and any mysql2 `poolConfig` with that in
17
+ * mind.
18
+ *
19
+ * @since 4.0.0
3
20
  */
4
21
  import * as Config from "effect/Config"
5
22
  import * as Context from "effect/Context"
@@ -126,20 +143,26 @@ const classifyError = (
126
143
  }
127
144
 
128
145
  /**
129
- * @category type ids
130
- * @since 1.0.0
146
+ * Runtime type identifier used to mark `MysqlClient` values.
147
+ *
148
+ * @category type IDs
149
+ * @since 4.0.0
131
150
  */
132
151
  export const TypeId: TypeId = "~@effect/sql-mysql2/MysqlClient"
133
152
 
134
153
  /**
135
- * @category type ids
136
- * @since 1.0.0
154
+ * Type-level identifier used to mark `MysqlClient` values.
155
+ *
156
+ * @category type IDs
157
+ * @since 4.0.0
137
158
  */
138
159
  export type TypeId = "~@effect/sql-mysql2/MysqlClient"
139
160
 
140
161
  /**
162
+ * mysql2-backed SQL client service, extending `SqlClient` with its runtime type marker and client configuration.
163
+ *
141
164
  * @category models
142
- * @since 1.0.0
165
+ * @since 4.0.0
143
166
  */
144
167
  export interface MysqlClient extends Client.SqlClient {
145
168
  readonly [TypeId]: TypeId
@@ -147,14 +170,18 @@ export interface MysqlClient extends Client.SqlClient {
147
170
  }
148
171
 
149
172
  /**
173
+ * Context tag used to access the `MysqlClient` service.
174
+ *
150
175
  * @category tags
151
- * @since 1.0.0
176
+ * @since 4.0.0
152
177
  */
153
178
  export const MysqlClient = Context.Service<MysqlClient>("@effect/sql-mysql2/MysqlClient")
154
179
 
155
180
  /**
181
+ * Configuration for a mysql2 client, including connection URI or connection fields, pool options, span attributes, and query/result name transforms.
182
+ *
156
183
  * @category models
157
- * @since 1.0.0
184
+ * @since 4.0.0
158
185
  */
159
186
  export interface MysqlClientConfig {
160
187
  /**
@@ -180,8 +207,10 @@ export interface MysqlClientConfig {
180
207
  }
181
208
 
182
209
  /**
210
+ * Creates a scoped MySQL client backed by a managed mysql2 pool, verifying connectivity and supporting streaming queries through mysql2 query streams.
211
+ *
183
212
  * @category constructors
184
- * @since 1.0.0
213
+ * @since 4.0.0
185
214
  */
186
215
  export const make = (
187
216
  options: MysqlClientConfig
@@ -382,8 +411,10 @@ export const make = (
382
411
  })
383
412
 
384
413
  /**
414
+ * Creates a layer from a `Config`-wrapped MySQL client configuration, providing both `MysqlClient` and `SqlClient`.
415
+ *
385
416
  * @category layers
386
- * @since 1.0.0
417
+ * @since 4.0.0
387
418
  */
388
419
  export const layerConfig = (
389
420
  config: Config.Wrap<MysqlClientConfig>
@@ -400,8 +431,10 @@ export const layerConfig = (
400
431
  ).pipe(Layer.provide(Reactivity.layer))
401
432
 
402
433
  /**
434
+ * Creates a layer from a concrete MySQL client configuration, providing both `MysqlClient` and `SqlClient`.
435
+ *
403
436
  * @category layers
404
- * @since 1.0.0
437
+ * @since 4.0.0
405
438
  */
406
439
  export const layer = (
407
440
  config: MysqlClientConfig
@@ -414,8 +447,10 @@ export const layer = (
414
447
  ).pipe(Layer.provide(Reactivity.layer))
415
448
 
416
449
  /**
450
+ * Creates the MySQL statement compiler, using `?` placeholders and backtick-escaped identifiers.
451
+ *
417
452
  * @category compiler
418
- * @since 1.0.0
453
+ * @since 4.0.0
419
454
  */
420
455
  export const makeCompiler = (transform?: (_: string) => string) =>
421
456
  Statement.makeCompiler({
@@ -1,5 +1,23 @@
1
1
  /**
2
- * @since 1.0.0
2
+ * Utilities for applying Effect SQL migrations to MySQL databases through the
3
+ * mysql2-backed `SqlClient`.
4
+ *
5
+ * This module re-exports the shared `Migrator` loaders and error types, then
6
+ * provides `run` and `layer` helpers for applying ordered migrations using the
7
+ * currently configured MySQL `SqlClient`. It is commonly used during application
8
+ * startup, in integration tests that provision a temporary schema, or in layer
9
+ * graphs where dependent services should not start until the database schema is
10
+ * current.
11
+ *
12
+ * Applied migrations are stored in `effect_sql_migrations` by default and use
13
+ * the shared `<id>_<name>` loader convention. Only migrations with ids greater
14
+ * than the latest recorded id are run. MySQL DDL can cause implicit commits, and
15
+ * this adapter relies on migration table constraints to detect concurrent
16
+ * runners, so coordinate startup runners and write migrations to tolerate
17
+ * MySQL's transactional semantics. Schema dump support is not enabled in this
18
+ * adapter, so `schemaDirectory` does not emit a MySQL dump.
19
+ *
20
+ * @since 4.0.0
3
21
  */
4
22
  import type * as Effect from "effect/Effect"
5
23
  import * as Layer from "effect/Layer"
@@ -8,13 +26,15 @@ import type * as Client from "effect/unstable/sql/SqlClient"
8
26
  import type { SqlError } from "effect/unstable/sql/SqlError"
9
27
 
10
28
  /**
11
- * @since 1.0.0
29
+ * @since 4.0.0
12
30
  */
13
31
  export * from "effect/unstable/sql/Migrator"
14
32
 
15
33
  /**
16
- * @category constructor
17
- * @since 1.0.0
34
+ * Runs SQL migrations using the configured `SqlClient`, returning the migrations that were applied.
35
+ *
36
+ * @category constructors
37
+ * @since 4.0.0
18
38
  */
19
39
  export const run: <R2 = never>(
20
40
  { loader, schemaDirectory, table }: Migrator.MigratorOptions<R2>
@@ -78,8 +98,10 @@ export const run: <R2 = never>(
78
98
  })
79
99
 
80
100
  /**
101
+ * Creates a layer that runs the configured SQL migrations during layer construction.
102
+ *
81
103
  * @category layers
82
- * @since 1.0.0
104
+ * @since 4.0.0
83
105
  */
84
106
  export const layer = <R>(
85
107
  options: Migrator.MigratorOptions<R>
package/src/index.ts CHANGED
@@ -1,15 +1,50 @@
1
1
  /**
2
- * @since 1.0.0
2
+ * @since 4.0.0
3
3
  */
4
4
 
5
5
  // @barrel: Auto-generated exports. Do not edit manually.
6
6
 
7
7
  /**
8
- * @since 1.0.0
8
+ * MySQL client implementation for Effect SQL, backed by the `mysql2` driver.
9
+ *
10
+ * This module exposes constructors and layers for providing both the MySQL-specific
11
+ * `MysqlClient` service and the generic `SqlClient` service. It is intended for server
12
+ * applications, background workers, migrations, and tests that need Effect SQL query
13
+ * compilation, scoped resource management, streaming queries, and consistent `SqlError`
14
+ * classification for MySQL driver failures.
15
+ *
16
+ * Each client owns a scoped mysql2 pool, validates connectivity with `SELECT 1` during
17
+ * acquisition, and closes the pool when the surrounding scope is released. You can configure
18
+ * the pool from a connection URI or discrete connection fields; when `url` is supplied it
19
+ * takes precedence over the host, port, database, username, and password fields. Regular
20
+ * queries run through the shared pool, while transactions acquire a dedicated pooled
21
+ * connection for their lifetime, so long-running transactions and streams can occupy pool
22
+ * capacity. Size `maxConnections`, `connectionTTL`, and any mysql2 `poolConfig` with that in
23
+ * mind.
24
+ *
25
+ * @since 4.0.0
9
26
  */
10
27
  export * as MysqlClient from "./MysqlClient.ts"
11
28
 
12
29
  /**
13
- * @since 1.0.0
30
+ * Utilities for applying Effect SQL migrations to MySQL databases through the
31
+ * mysql2-backed `SqlClient`.
32
+ *
33
+ * This module re-exports the shared `Migrator` loaders and error types, then
34
+ * provides `run` and `layer` helpers for applying ordered migrations using the
35
+ * currently configured MySQL `SqlClient`. It is commonly used during application
36
+ * startup, in integration tests that provision a temporary schema, or in layer
37
+ * graphs where dependent services should not start until the database schema is
38
+ * current.
39
+ *
40
+ * Applied migrations are stored in `effect_sql_migrations` by default and use
41
+ * the shared `<id>_<name>` loader convention. Only migrations with ids greater
42
+ * than the latest recorded id are run. MySQL DDL can cause implicit commits, and
43
+ * this adapter relies on migration table constraints to detect concurrent
44
+ * runners, so coordinate startup runners and write migrations to tolerate
45
+ * MySQL's transactional semantics. Schema dump support is not enabled in this
46
+ * adapter, so `schemaDirectory` does not emit a MySQL dump.
47
+ *
48
+ * @since 4.0.0
14
49
  */
15
50
  export * as MysqlMigrator from "./MysqlMigrator.ts"