@effect/sql-sqlite-node 4.0.0-beta.66 → 4.0.0-beta.67

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.
@@ -8,18 +8,24 @@ import * as Reactivity from "effect/unstable/reactivity/Reactivity";
8
8
  import * as Client from "effect/unstable/sql/SqlClient";
9
9
  import { SqlError } from "effect/unstable/sql/SqlError";
10
10
  /**
11
+ * Runtime type identifier used to mark Node `SqliteClient` values.
12
+ *
11
13
  * @category type ids
12
- * @since 1.0.0
14
+ * @since 4.0.0
13
15
  */
14
16
  export declare const TypeId: TypeId;
15
17
  /**
18
+ * Type-level identifier used to mark Node `SqliteClient` values.
19
+ *
16
20
  * @category type ids
17
- * @since 1.0.0
21
+ * @since 4.0.0
18
22
  */
19
23
  export type TypeId = "~@effect/sql-sqlite-node/SqliteClient";
20
24
  /**
25
+ * Node SQLite client service, extending `SqlClient` with database export, backup, and extension loading helpers. `updateValues` is not supported.
26
+ *
21
27
  * @category models
22
- * @since 1.0.0
28
+ * @since 4.0.0
23
29
  */
24
30
  export interface SqliteClient extends Client.SqlClient {
25
31
  readonly [TypeId]: TypeId;
@@ -31,21 +37,27 @@ export interface SqliteClient extends Client.SqlClient {
31
37
  readonly updateValues: never;
32
38
  }
33
39
  /**
40
+ * Metadata returned from a Node SQLite backup operation, reporting total and remaining page counts.
41
+ *
34
42
  * @category models
35
- * @since 1.0.0
43
+ * @since 4.0.0
36
44
  */
37
45
  export interface BackupMetadata {
38
46
  readonly totalPages: number;
39
47
  readonly remainingPages: number;
40
48
  }
41
49
  /**
50
+ * Context service tag for the node SQLite client implementation.
51
+ *
42
52
  * @category tags
43
- * @since 1.0.0
53
+ * @since 4.0.0
44
54
  */
45
55
  export declare const SqliteClient: Context.Service<SqliteClient, SqliteClient>;
46
56
  /**
57
+ * Configuration for a node SQLite client backed by `better-sqlite3`, including the database filename, read-only mode, statement cache settings, WAL behavior, span attributes, and query/result name transforms.
58
+ *
47
59
  * @category models
48
- * @since 1.0.0
60
+ * @since 4.0.0
49
61
  */
50
62
  export interface SqliteClientConfig {
51
63
  readonly filename: string;
@@ -58,18 +70,24 @@ export interface SqliteClientConfig {
58
70
  readonly transformQueryNames?: ((str: string) => string) | undefined;
59
71
  }
60
72
  /**
73
+ * Creates a scoped node SQLite client from the supplied configuration, using a single serialized connection with WAL enabled by default and exposing SQLite-specific `export`, `backup`, and `loadExtension` operations.
74
+ *
61
75
  * @category constructor
62
- * @since 1.0.0
76
+ * @since 4.0.0
63
77
  */
64
78
  export declare const make: (options: SqliteClientConfig) => Effect.Effect<SqliteClient, never, Scope.Scope | Reactivity.Reactivity>;
65
79
  /**
80
+ * Builds a layer from an Effect `Config` value, providing both the node `SqliteClient` service and the generic `SqlClient` service.
81
+ *
66
82
  * @category layers
67
- * @since 1.0.0
83
+ * @since 4.0.0
68
84
  */
69
85
  export declare const layerConfig: (config: Config.Wrap<SqliteClientConfig>) => Layer.Layer<SqliteClient | Client.SqlClient, Config.ConfigError>;
70
86
  /**
87
+ * Builds a layer from a node SQLite client configuration, providing both `SqliteClient` and the generic `SqlClient` service.
88
+ *
71
89
  * @category layers
72
- * @since 1.0.0
90
+ * @since 4.0.0
73
91
  */
74
92
  export declare const layer: (config: SqliteClientConfig) => Layer.Layer<SqliteClient | Client.SqlClient>;
75
93
  //# sourceMappingURL=SqliteClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SqliteClient.d.ts","sourceRoot":"","sources":["../src/SqliteClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SqliteClient.d.ts","sourceRoot":"","sources":["../src/SqliteClient.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,19 @@
1
1
  /**
2
- * @since 1.0.0
2
+ * Node.js SQLite client implementation for Effect SQL, backed by `better-sqlite3`.
3
+ *
4
+ * This module exposes constructors and layers for providing both the SQLite-specific `SqliteClient`
5
+ * service and the generic `SqlClient` service. It is intended for file-backed or in-memory SQLite
6
+ * databases in Node applications, local development tools, tests, migrations, and embedded
7
+ * persistence use cases that need Effect SQL query compilation plus SQLite-specific operations such
8
+ * as exporting a database, creating backups, or loading native SQLite extensions.
9
+ *
10
+ * Each client owns one scoped `better-sqlite3` connection and serializes access through it. WAL mode
11
+ * is enabled by default, so set `disableWAL` when opening read-only databases or when the database
12
+ * location cannot change journal mode. Prepared statements are cached by SQL text, safe integer
13
+ * handling follows the `SqlClient` fiber-local setting, `executeStream` is not implemented, and
14
+ * SQLite does not support `updateValues`.
15
+ *
16
+ * @since 4.0.0
3
17
  */
4
18
  import Sqlite from "better-sqlite3";
5
19
  import * as Cache from "effect/Cache";
@@ -23,18 +37,24 @@ const classifyError = (cause, message, operation) => classifySqliteError(cause,
23
37
  operation
24
38
  });
25
39
  /**
40
+ * Runtime type identifier used to mark Node `SqliteClient` values.
41
+ *
26
42
  * @category type ids
27
- * @since 1.0.0
43
+ * @since 4.0.0
28
44
  */
29
45
  export const TypeId = "~@effect/sql-sqlite-node/SqliteClient";
30
46
  /**
47
+ * Context service tag for the node SQLite client implementation.
48
+ *
31
49
  * @category tags
32
- * @since 1.0.0
50
+ * @since 4.0.0
33
51
  */
34
52
  export const SqliteClient = /*#__PURE__*/Context.Service("@effect/sql-sqlite-node/SqliteClient");
35
53
  /**
54
+ * Creates a scoped node SQLite client from the supplied configuration, using a single serialized connection with WAL enabled by default and exposing SQLite-specific `export`, `backup`, and `loadExtension` operations.
55
+ *
36
56
  * @category constructor
37
- * @since 1.0.0
57
+ * @since 4.0.0
38
58
  */
39
59
  export const make = options => Effect.gen(function* () {
40
60
  const compiler = Statement.makeCompilerSqlite(options.transformQueryNames);
@@ -152,13 +172,17 @@ export const make = options => Effect.gen(function* () {
152
172
  });
153
173
  });
154
174
  /**
175
+ * Builds a layer from an Effect `Config` value, providing both the node `SqliteClient` service and the generic `SqlClient` service.
176
+ *
155
177
  * @category layers
156
- * @since 1.0.0
178
+ * @since 4.0.0
157
179
  */
158
180
  export const layerConfig = config => Layer.effectContext(Config.unwrap(config).pipe(Effect.flatMap(make), Effect.map(client => Context.make(SqliteClient, client).pipe(Context.add(Client.SqlClient, client))))).pipe(Layer.provide(Reactivity.layer));
159
181
  /**
182
+ * Builds a layer from a node SQLite client configuration, providing both `SqliteClient` and the generic `SqlClient` service.
183
+ *
160
184
  * @category layers
161
- * @since 1.0.0
185
+ * @since 4.0.0
162
186
  */
163
187
  export const layer = config => Layer.effectContext(Effect.map(make(config), client => Context.make(SqliteClient, client).pipe(Context.add(Client.SqlClient, client)))).pipe(Layer.provide(Reactivity.layer));
164
188
  //# sourceMappingURL=SqliteClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SqliteClient.js","names":["Sqlite","Cache","Config","Context","Duration","Effect","Fiber","identity","Layer","Scope","Semaphore","Stream","Reactivity","Client","classifySqliteError","SqlError","Statement","ATTR_DB_SYSTEM_NAME","classifyError","cause","message","operation","TypeId","SqliteClient","Service","make","options","gen","compiler","makeCompilerSqlite","transformQueryNames","transformRows","transformResultNames","defaultTransforms","array","undefined","makeConnection","scope","db","filename","readonly","addFinalizer","sync","close","disableWAL","pragma","prepareCache","capacity","prepareCacheSize","timeToLive","prepareCacheTTL","minutes","lookup","sql","try","prepare","catch","reason","runStatement","statement","params","raw","withFiber","fiber","get","context","SafeIntegers","safeIntegers","reader","succeed","all","result","run","fail","flatMap","s","runValues","acquireUseRelease","execute","map","executeRaw","executeValues","executeUnprepared","effect","executeStream","_sql","_params","die","export","serialize","backup","destination","tryPromise","loadExtension","path","semaphore","connection","acquirer","withPermits","transactionAcquirer","uninterruptibleMask","restore","getCurrent","getUnsafe","as","tap","take","release","Object","assign","spanAttributes","entries","config","_","layerConfig","effectContext","unwrap","pipe","client","add","SqlClient","provide","layer"],"sources":["../src/SqliteClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"SqliteClient.js","names":["Sqlite","Cache","Config","Context","Duration","Effect","Fiber","identity","Layer","Scope","Semaphore","Stream","Reactivity","Client","classifySqliteError","SqlError","Statement","ATTR_DB_SYSTEM_NAME","classifyError","cause","message","operation","TypeId","SqliteClient","Service","make","options","gen","compiler","makeCompilerSqlite","transformQueryNames","transformRows","transformResultNames","defaultTransforms","array","undefined","makeConnection","scope","db","filename","readonly","addFinalizer","sync","close","disableWAL","pragma","prepareCache","capacity","prepareCacheSize","timeToLive","prepareCacheTTL","minutes","lookup","sql","try","prepare","catch","reason","runStatement","statement","params","raw","withFiber","fiber","get","context","SafeIntegers","safeIntegers","reader","succeed","all","result","run","fail","flatMap","s","runValues","acquireUseRelease","execute","map","executeRaw","executeValues","executeUnprepared","effect","executeStream","_sql","_params","die","export","serialize","backup","destination","tryPromise","loadExtension","path","semaphore","connection","acquirer","withPermits","transactionAcquirer","uninterruptibleMask","restore","getCurrent","getUnsafe","as","tap","take","release","Object","assign","spanAttributes","entries","config","_","layerConfig","effectContext","unwrap","pipe","client","add","SqlClient","provide","layer"],"sources":["../src/SqliteClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,20 @@
1
1
  /**
2
- * @since 1.0.0
2
+ * Utilities for applying Effect SQL migrations to Node.js SQLite databases.
3
+ *
4
+ * This module re-exports the shared `Migrator` loaders and error types, then
5
+ * provides `run` and `layer` helpers for applying ordered migrations through the
6
+ * current SQLite `SqlClient`. It is typically used at application startup, in
7
+ * tests that create temporary database files, or in layer graphs that must
8
+ * ensure a file-backed SQLite schema exists before dependent services start.
9
+ *
10
+ * Migrations are recorded in `effect_sql_migrations` by default and are loaded
11
+ * using the shared `<id>_<name>` file or record-key convention. Only migrations
12
+ * with an id greater than the latest recorded id are applied, so every client
13
+ * involved in startup should point at the same SQLite filename. Concurrent
14
+ * writers can surface SQLite lock timeout errors, and this adapter does not
15
+ * currently write SQLite schema dumps for `schemaDirectory`.
16
+ *
17
+ * @since 4.0.0
3
18
  */
4
19
  import type * as Effect from "effect/Effect";
5
20
  import * as Layer from "effect/Layer";
@@ -7,17 +22,21 @@ import * as Migrator from "effect/unstable/sql/Migrator";
7
22
  import type * as Client from "effect/unstable/sql/SqlClient";
8
23
  import type { SqlError } from "effect/unstable/sql/SqlError";
9
24
  /**
10
- * @since 1.0.0
25
+ * @since 4.0.0
11
26
  */
12
27
  export * from "effect/unstable/sql/Migrator";
13
28
  /**
29
+ * Runs SQL migrations for a SQLite database using the shared `Migrator` implementation and the current `SqlClient`.
30
+ *
14
31
  * @category constructor
15
- * @since 1.0.0
32
+ * @since 4.0.0
16
33
  */
17
34
  export declare const run: <R2 = never>(options: Migrator.MigratorOptions<R2>) => Effect.Effect<ReadonlyArray<readonly [id: number, name: string]>, Migrator.MigrationError | SqlError, Client.SqlClient | R2>;
18
35
  /**
36
+ * Creates a layer that runs the configured SQLite migrations during layer construction and provides no services.
37
+ *
19
38
  * @category constructor
20
- * @since 1.0.0
39
+ * @since 4.0.0
21
40
  */
22
41
  export declare const layer: <R>(options: Migrator.MigratorOptions<R>) => Layer.Layer<never, Migrator.MigrationError | SqlError, Client.SqlClient | R>;
23
42
  //# sourceMappingURL=SqliteMigrator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SqliteMigrator.d.ts","sourceRoot":"","sources":["../src/SqliteMigrator.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,OAAO,EAAE,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,KAClC,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,CA2CrB,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":"SqliteMigrator.d.ts","sourceRoot":"","sources":["../src/SqliteMigrator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;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,OAAO,EAAE,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,KAClC,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,CA2CrB,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
+ * Runs SQL migrations for a SQLite database using the shared `Migrator` implementation and the current `SqlClient`.
9
+ *
8
10
  * @category constructor
9
- * @since 1.0.0
11
+ * @since 4.0.0
10
12
  */
11
13
  export const run = /*#__PURE__*/Migrator.make({
12
14
  // dumpSchema(path, table) {
@@ -52,8 +54,10 @@ export const run = /*#__PURE__*/Migrator.make({
52
54
  // }
53
55
  });
54
56
  /**
57
+ * Creates a layer that runs the configured SQLite migrations during layer construction and provides no services.
58
+ *
55
59
  * @category constructor
56
- * @since 1.0.0
60
+ * @since 4.0.0
57
61
  */
58
62
  export const layer = options => Layer.effectDiscard(run(options));
59
63
  //# sourceMappingURL=SqliteMigrator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SqliteMigrator.js","names":["Layer","Migrator","run","make","layer","options","effectDiscard"],"sources":["../src/SqliteMigrator.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;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":"SqliteMigrator.js","names":["Layer","Migrator","run","make","layer","options","effectDiscard"],"sources":["../src/SqliteMigrator.ts"],"sourcesContent":[null],"mappings":"AAmBA,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;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,12 @@
1
1
  /**
2
- * @since 1.0.0
2
+ * @since 4.0.0
3
3
  */
4
4
  /**
5
- * @since 1.0.0
5
+ * @since 4.0.0
6
6
  */
7
7
  export * as SqliteClient from "./SqliteClient.ts";
8
8
  /**
9
- * @since 1.0.0
9
+ * @since 4.0.0
10
10
  */
11
11
  export * as SqliteMigrator from "./SqliteMigrator.ts";
12
12
  //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -1,13 +1,13 @@
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
+ * @since 4.0.0
7
7
  */
8
8
  export * as SqliteClient from "./SqliteClient.js";
9
9
  /**
10
- * @since 1.0.0
10
+ * @since 4.0.0
11
11
  */
12
12
  export * as SqliteMigrator from "./SqliteMigrator.js";
13
13
  //# sourceMappingURL=index.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/sql-sqlite-node",
3
- "version": "4.0.0-beta.66",
3
+ "version": "4.0.0-beta.67",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "description": "A SQLite toolkit for Effect",
@@ -44,14 +44,14 @@
44
44
  },
45
45
  "devDependencies": {
46
46
  "@types/better-sqlite3": "^7.6.13",
47
- "@effect/platform-node": "^4.0.0-beta.66",
48
- "effect": "^4.0.0-beta.66"
47
+ "effect": "^4.0.0-beta.67",
48
+ "@effect/platform-node": "^4.0.0-beta.67"
49
49
  },
50
50
  "peerDependencies": {
51
- "effect": "^4.0.0-beta.66"
51
+ "effect": "^4.0.0-beta.67"
52
52
  },
53
53
  "dependencies": {
54
- "better-sqlite3": "^12.8.0"
54
+ "better-sqlite3": "^12.9.0"
55
55
  },
56
56
  "scripts": {
57
57
  "codegen": "effect-utils codegen",
@@ -1,5 +1,19 @@
1
1
  /**
2
- * @since 1.0.0
2
+ * Node.js SQLite client implementation for Effect SQL, backed by `better-sqlite3`.
3
+ *
4
+ * This module exposes constructors and layers for providing both the SQLite-specific `SqliteClient`
5
+ * service and the generic `SqlClient` service. It is intended for file-backed or in-memory SQLite
6
+ * databases in Node applications, local development tools, tests, migrations, and embedded
7
+ * persistence use cases that need Effect SQL query compilation plus SQLite-specific operations such
8
+ * as exporting a database, creating backups, or loading native SQLite extensions.
9
+ *
10
+ * Each client owns one scoped `better-sqlite3` connection and serializes access through it. WAL mode
11
+ * is enabled by default, so set `disableWAL` when opening read-only databases or when the database
12
+ * location cannot change journal mode. Prepared statements are cached by SQL text, safe integer
13
+ * handling follows the `SqlClient` fiber-local setting, `executeStream` is not implemented, and
14
+ * SQLite does not support `updateValues`.
15
+ *
16
+ * @since 4.0.0
3
17
  */
4
18
  import Sqlite from "better-sqlite3"
5
19
  import * as Cache from "effect/Cache"
@@ -25,20 +39,26 @@ const classifyError = (cause: unknown, message: string, operation: string) =>
25
39
  classifySqliteError(cause, { message, operation })
26
40
 
27
41
  /**
42
+ * Runtime type identifier used to mark Node `SqliteClient` values.
43
+ *
28
44
  * @category type ids
29
- * @since 1.0.0
45
+ * @since 4.0.0
30
46
  */
31
47
  export const TypeId: TypeId = "~@effect/sql-sqlite-node/SqliteClient"
32
48
 
33
49
  /**
50
+ * Type-level identifier used to mark Node `SqliteClient` values.
51
+ *
34
52
  * @category type ids
35
- * @since 1.0.0
53
+ * @since 4.0.0
36
54
  */
37
55
  export type TypeId = "~@effect/sql-sqlite-node/SqliteClient"
38
56
 
39
57
  /**
58
+ * Node SQLite client service, extending `SqlClient` with database export, backup, and extension loading helpers. `updateValues` is not supported.
59
+ *
40
60
  * @category models
41
- * @since 1.0.0
61
+ * @since 4.0.0
42
62
  */
43
63
  export interface SqliteClient extends Client.SqlClient {
44
64
  readonly [TypeId]: TypeId
@@ -52,8 +72,10 @@ export interface SqliteClient extends Client.SqlClient {
52
72
  }
53
73
 
54
74
  /**
75
+ * Metadata returned from a Node SQLite backup operation, reporting total and remaining page counts.
76
+ *
55
77
  * @category models
56
- * @since 1.0.0
78
+ * @since 4.0.0
57
79
  */
58
80
  export interface BackupMetadata {
59
81
  readonly totalPages: number
@@ -61,14 +83,18 @@ export interface BackupMetadata {
61
83
  }
62
84
 
63
85
  /**
86
+ * Context service tag for the node SQLite client implementation.
87
+ *
64
88
  * @category tags
65
- * @since 1.0.0
89
+ * @since 4.0.0
66
90
  */
67
91
  export const SqliteClient = Context.Service<SqliteClient>("@effect/sql-sqlite-node/SqliteClient")
68
92
 
69
93
  /**
94
+ * Configuration for a node SQLite client backed by `better-sqlite3`, including the database filename, read-only mode, statement cache settings, WAL behavior, span attributes, and query/result name transforms.
95
+ *
70
96
  * @category models
71
- * @since 1.0.0
97
+ * @since 4.0.0
72
98
  */
73
99
  export interface SqliteClientConfig {
74
100
  readonly filename: string
@@ -89,8 +115,10 @@ interface SqliteConnection extends Connection {
89
115
  }
90
116
 
91
117
  /**
118
+ * Creates a scoped node SQLite client from the supplied configuration, using a single serialized connection with WAL enabled by default and exposing SQLite-specific `export`, `backup`, and `loadExtension` operations.
119
+ *
92
120
  * @category constructor
93
- * @since 1.0.0
121
+ * @since 4.0.0
94
122
  */
95
123
  export const make = (
96
124
  options: SqliteClientConfig
@@ -254,8 +282,10 @@ export const make = (
254
282
  })
255
283
 
256
284
  /**
285
+ * Builds a layer from an Effect `Config` value, providing both the node `SqliteClient` service and the generic `SqlClient` service.
286
+ *
257
287
  * @category layers
258
- * @since 1.0.0
288
+ * @since 4.0.0
259
289
  */
260
290
  export const layerConfig = (
261
291
  config: Config.Wrap<SqliteClientConfig>
@@ -272,8 +302,10 @@ export const layerConfig = (
272
302
  ).pipe(Layer.provide(Reactivity.layer))
273
303
 
274
304
  /**
305
+ * Builds a layer from a node SQLite client configuration, providing both `SqliteClient` and the generic `SqlClient` service.
306
+ *
275
307
  * @category layers
276
- * @since 1.0.0
308
+ * @since 4.0.0
277
309
  */
278
310
  export const layer = (
279
311
  config: SqliteClientConfig
@@ -1,5 +1,20 @@
1
1
  /**
2
- * @since 1.0.0
2
+ * Utilities for applying Effect SQL migrations to Node.js SQLite databases.
3
+ *
4
+ * This module re-exports the shared `Migrator` loaders and error types, then
5
+ * provides `run` and `layer` helpers for applying ordered migrations through the
6
+ * current SQLite `SqlClient`. It is typically used at application startup, in
7
+ * tests that create temporary database files, or in layer graphs that must
8
+ * ensure a file-backed SQLite schema exists before dependent services start.
9
+ *
10
+ * Migrations are recorded in `effect_sql_migrations` by default and are loaded
11
+ * using the shared `<id>_<name>` file or record-key convention. Only migrations
12
+ * with an id greater than the latest recorded id are applied, so every client
13
+ * involved in startup should point at the same SQLite filename. Concurrent
14
+ * writers can surface SQLite lock timeout errors, and this adapter does not
15
+ * currently write SQLite schema dumps for `schemaDirectory`.
16
+ *
17
+ * @since 4.0.0
3
18
  */
4
19
  import type * as Effect from "effect/Effect"
5
20
  import * as Layer from "effect/Layer"
@@ -8,13 +23,15 @@ import type * as Client from "effect/unstable/sql/SqlClient"
8
23
  import type { SqlError } from "effect/unstable/sql/SqlError"
9
24
 
10
25
  /**
11
- * @since 1.0.0
26
+ * @since 4.0.0
12
27
  */
13
28
  export * from "effect/unstable/sql/Migrator"
14
29
 
15
30
  /**
31
+ * Runs SQL migrations for a SQLite database using the shared `Migrator` implementation and the current `SqlClient`.
32
+ *
16
33
  * @category constructor
17
- * @since 1.0.0
34
+ * @since 4.0.0
18
35
  */
19
36
  export const run: <R2 = never>(
20
37
  options: Migrator.MigratorOptions<R2>
@@ -67,8 +84,10 @@ export const run: <R2 = never>(
67
84
  })
68
85
 
69
86
  /**
87
+ * Creates a layer that runs the configured SQLite migrations during layer construction and provides no services.
88
+ *
70
89
  * @category constructor
71
- * @since 1.0.0
90
+ * @since 4.0.0
72
91
  */
73
92
  export const layer = <R>(
74
93
  options: Migrator.MigratorOptions<R>
package/src/index.ts CHANGED
@@ -1,15 +1,15 @@
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
+ * @since 4.0.0
9
9
  */
10
10
  export * as SqliteClient from "./SqliteClient.ts"
11
11
 
12
12
  /**
13
- * @since 1.0.0
13
+ * @since 4.0.0
14
14
  */
15
15
  export * as SqliteMigrator from "./SqliteMigrator.ts"