@effect/sql-sqlite-do 4.0.0-beta.5 → 4.0.0-beta.51

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.
@@ -3,10 +3,10 @@
3
3
  */
4
4
  import type { SqlStorage } from "@cloudflare/workers-types";
5
5
  import * as Config from "effect/Config";
6
+ import * as Context from "effect/Context";
6
7
  import * as Effect from "effect/Effect";
7
8
  import * as Layer from "effect/Layer";
8
9
  import * as Scope from "effect/Scope";
9
- import * as ServiceMap from "effect/ServiceMap";
10
10
  import * as Reactivity from "effect/unstable/reactivity/Reactivity";
11
11
  import * as Client from "effect/unstable/sql/SqlClient";
12
12
  /**
@@ -33,7 +33,7 @@ export interface SqliteClient extends Client.SqlClient {
33
33
  * @category tags
34
34
  * @since 1.0.0
35
35
  */
36
- export declare const SqliteClient: ServiceMap.Service<SqliteClient, SqliteClient>;
36
+ export declare const SqliteClient: Context.Service<SqliteClient, SqliteClient>;
37
37
  /**
38
38
  * @category models
39
39
  * @since 1.0.0
@@ -1 +1 @@
1
- {"version":3,"file":"SqliteClient.d.ts","sourceRoot":"","sources":["../src/SqliteClient.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,UAAU,MAAM,mBAAmB,CAAA;AAE/C,OAAO,KAAK,UAAU,MAAM,uCAAuC,CAAA;AACnE,OAAO,KAAK,MAAM,MAAM,+BAA+B,CAAA;AAOvD;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,MAA8C,CAAA;AAEnE;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,qCAAqC,CAAA;AAE1D;;;GAGG;AACH,MAAM,WAAW,YAAa,SAAQ,MAAM,CAAC,SAAS;IACpD,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAA;IAEnC,8BAA8B;IAC9B,QAAQ,CAAC,YAAY,EAAE,KAAK,CAAA;CAC7B;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY,gDAAyE,CAAA;AAElG;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,EAAE,UAAU,CAAA;IACvB,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;IAE7D,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,SAAS,CAAA;IACrE,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,SAAS,CAAA;CACrE;AAED;;;GAGG;AACH,eAAO,MAAM,IAAI,GACf,SAAS,kBAAkB,KAC1B,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC,UAAU,CAmHrE,CAAA;AAEJ;;;GAGG;AACH,eAAO,MAAM,WAAW,GACtB,QAAQ,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,KACtC,KAAK,CAAC,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,WAAW,CAUzB,CAAA;AAEzC;;;GAGG;AACH,eAAO,MAAM,KAAK,GAChB,QAAQ,kBAAkB,KACzB,KAAK,CAAC,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,SAAS,CAML,CAAA"}
1
+ {"version":3,"file":"SqliteClient.d.ts","sourceRoot":"","sources":["../src/SqliteClient.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAGrC,OAAO,KAAK,UAAU,MAAM,uCAAuC,CAAA;AACnE,OAAO,KAAK,MAAM,MAAM,+BAA+B,CAAA;AAUvD;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,MAA8C,CAAA;AAEnE;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,qCAAqC,CAAA;AAE1D;;;GAGG;AACH,MAAM,WAAW,YAAa,SAAQ,MAAM,CAAC,SAAS;IACpD,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAA;IAEnC,8BAA8B;IAC9B,QAAQ,CAAC,YAAY,EAAE,KAAK,CAAA;CAC7B;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY,6CAAsE,CAAA;AAE/F;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,EAAE,UAAU,CAAA;IACvB,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;IAE7D,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,SAAS,CAAA;IACrE,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,SAAS,CAAA;CACrE;AAED;;;GAGG;AACH,eAAO,MAAM,IAAI,GACf,SAAS,kBAAkB,KAC1B,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC,UAAU,CAmHrE,CAAA;AAEJ;;;GAGG;AACH,eAAO,MAAM,WAAW,GACtB,QAAQ,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,KACtC,KAAK,CAAC,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,WAAW,CAUzB,CAAA;AAEzC;;;GAGG;AACH,eAAO,MAAM,KAAK,GAChB,QAAQ,kBAAkB,KACzB,KAAK,CAAC,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,SAAS,CAML,CAAA"}
@@ -1,16 +1,21 @@
1
1
  import * as Config from "effect/Config";
2
+ import * as Context from "effect/Context";
2
3
  import * as Effect from "effect/Effect";
3
4
  import * as Fiber from "effect/Fiber";
4
5
  import { identity } from "effect/Function";
5
6
  import * as Layer from "effect/Layer";
6
7
  import * as Scope from "effect/Scope";
7
- import * as ServiceMap from "effect/ServiceMap";
8
+ import * as Semaphore from "effect/Semaphore";
8
9
  import * as Stream from "effect/Stream";
9
10
  import * as Reactivity from "effect/unstable/reactivity/Reactivity";
10
11
  import * as Client from "effect/unstable/sql/SqlClient";
11
- import { SqlError } from "effect/unstable/sql/SqlError";
12
+ import { classifySqliteError, SqlError } from "effect/unstable/sql/SqlError";
12
13
  import * as Statement from "effect/unstable/sql/Statement";
13
14
  const ATTR_DB_SYSTEM_NAME = "db.system.name";
15
+ const classifyError = (cause, message, operation) => classifySqliteError(cause, {
16
+ message,
17
+ operation
18
+ });
14
19
  /**
15
20
  * @category type ids
16
21
  * @since 1.0.0
@@ -20,7 +25,7 @@ export const TypeId = "~@effect/sql-sqlite-do/SqliteClient";
20
25
  * @category tags
21
26
  * @since 1.0.0
22
27
  */
23
- export const SqliteClient = /*#__PURE__*/ServiceMap.Service("@effect/sql-sqlite-do/SqliteClient");
28
+ export const SqliteClient = /*#__PURE__*/Context.Service("@effect/sql-sqlite-do/SqliteClient");
24
29
  /**
25
30
  * @category constructor
26
31
  * @since 1.0.0
@@ -45,8 +50,7 @@ export const make = options => Effect.gen(function* () {
45
50
  const runStatement = (sql, params = []) => Effect.try({
46
51
  try: () => Array.from(runIterator(sql, params)),
47
52
  catch: cause => new SqlError({
48
- cause,
49
- message: `Failed to execute statement`
53
+ reason: classifyError(cause, "Failed to execute statement", "execute")
50
54
  })
51
55
  });
52
56
  const runValues = (sql, params = []) => Effect.try({
@@ -60,8 +64,7 @@ export const make = options => Effect.gen(function* () {
60
64
  return row;
61
65
  }),
62
66
  catch: cause => new SqlError({
63
- cause,
64
- message: `Failed to execute statement`
67
+ reason: classifyError(cause, "Failed to execute statement", "execute")
65
68
  })
66
69
  });
67
70
  return identity({
@@ -85,12 +88,12 @@ export const make = options => Effect.gen(function* () {
85
88
  }
86
89
  });
87
90
  });
88
- const semaphore = yield* Effect.makeSemaphore(1);
91
+ const semaphore = yield* Semaphore.make(1);
89
92
  const connection = yield* makeConnection;
90
93
  const acquirer = semaphore.withPermits(1)(Effect.succeed(connection));
91
94
  const transactionAcquirer = Effect.uninterruptibleMask(restore => {
92
95
  const fiber = Fiber.getCurrent();
93
- const scope = ServiceMap.getUnsafe(fiber.services, Scope.Scope);
96
+ const scope = Context.getUnsafe(fiber.context, Scope.Scope);
94
97
  return Effect.as(Effect.tap(restore(semaphore.take(1)), () => Scope.addFinalizer(scope, semaphore.release(1))), connection);
95
98
  });
96
99
  return Object.assign(yield* Client.make({
@@ -108,10 +111,10 @@ export const make = options => Effect.gen(function* () {
108
111
  * @category layers
109
112
  * @since 1.0.0
110
113
  */
111
- export const layerConfig = config => Layer.effectServices(Config.unwrap(config).asEffect().pipe(Effect.flatMap(make), Effect.map(client => ServiceMap.make(SqliteClient, client).pipe(ServiceMap.add(Client.SqlClient, client))))).pipe(Layer.provide(Reactivity.layer));
114
+ export const layerConfig = config => Layer.effectContext(Config.unwrap(config).asEffect().pipe(Effect.flatMap(make), Effect.map(client => Context.make(SqliteClient, client).pipe(Context.add(Client.SqlClient, client))))).pipe(Layer.provide(Reactivity.layer));
112
115
  /**
113
116
  * @category layers
114
117
  * @since 1.0.0
115
118
  */
116
- export const layer = config => Layer.effectServices(Effect.map(make(config), client => ServiceMap.make(SqliteClient, client).pipe(ServiceMap.add(Client.SqlClient, client)))).pipe(Layer.provide(Reactivity.layer));
119
+ 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));
117
120
  //# sourceMappingURL=SqliteClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SqliteClient.js","names":["Config","Effect","Fiber","identity","Layer","Scope","ServiceMap","Stream","Reactivity","Client","SqlError","Statement","ATTR_DB_SYSTEM_NAME","TypeId","SqliteClient","Service","make","options","gen","compiler","makeCompilerSqlite","transformQueryNames","transformRows","transformResultNames","defaultTransforms","array","undefined","makeConnection","db","runIterator","sql","params","cursor","exec","columns","columnNames","result","raw","obj","i","length","value","ArrayBuffer","Uint8Array","runStatement","try","Array","from","catch","cause","message","runValues","row","execute","map","executeRaw","executeValues","executeUnprepared","executeStream","suspend","iterator","fromIteratorSucceed","pipe","mapArray","chunk","semaphore","makeSemaphore","connection","acquirer","withPermits","succeed","transactionAcquirer","uninterruptibleMask","restore","fiber","getCurrent","scope","getUnsafe","services","as","tap","take","addFinalizer","release","Object","assign","spanAttributes","entries","config","layerConfig","effectServices","unwrap","asEffect","flatMap","client","add","SqlClient","provide","layer"],"sources":["../src/SqliteClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"SqliteClient.js","names":["Config","Context","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","db","runIterator","sql","params","cursor","exec","columns","columnNames","result","raw","obj","i","length","value","ArrayBuffer","Uint8Array","runStatement","try","Array","from","catch","reason","runValues","row","execute","map","executeRaw","executeValues","executeUnprepared","executeStream","suspend","iterator","fromIteratorSucceed","pipe","mapArray","chunk","semaphore","connection","acquirer","withPermits","succeed","transactionAcquirer","uninterruptibleMask","restore","fiber","getCurrent","scope","getUnsafe","context","as","tap","take","addFinalizer","release","Object","assign","spanAttributes","entries","config","layerConfig","effectContext","unwrap","asEffect","flatMap","client","add","SqlClient","provide","layer"],"sources":["../src/SqliteClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/sql-sqlite-do",
3
- "version": "4.0.0-beta.5",
3
+ "version": "4.0.0-beta.51",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "description": "A SQLite toolkit for Effect",
@@ -43,11 +43,11 @@
43
43
  "provenance": true
44
44
  },
45
45
  "devDependencies": {
46
- "@cloudflare/workers-types": "^4.20260131.0",
47
- "effect": "^4.0.0-beta.5"
46
+ "@cloudflare/workers-types": "^4.20260412.1",
47
+ "effect": "^4.0.0-beta.51"
48
48
  },
49
49
  "peerDependencies": {
50
- "effect": "^4.0.0-beta.5"
50
+ "effect": "^4.0.0-beta.51"
51
51
  },
52
52
  "scripts": {
53
53
  "codegen": "effect-utils codegen",
@@ -3,21 +3,25 @@
3
3
  */
4
4
  import type { SqlStorage } from "@cloudflare/workers-types"
5
5
  import * as Config from "effect/Config"
6
+ import * as Context from "effect/Context"
6
7
  import * as Effect from "effect/Effect"
7
8
  import * as Fiber from "effect/Fiber"
8
9
  import { identity } from "effect/Function"
9
10
  import * as Layer from "effect/Layer"
10
11
  import * as Scope from "effect/Scope"
11
- import * as ServiceMap from "effect/ServiceMap"
12
+ import * as Semaphore from "effect/Semaphore"
12
13
  import * as Stream from "effect/Stream"
13
14
  import * as Reactivity from "effect/unstable/reactivity/Reactivity"
14
15
  import * as Client from "effect/unstable/sql/SqlClient"
15
16
  import type { Connection } from "effect/unstable/sql/SqlConnection"
16
- import { SqlError } from "effect/unstable/sql/SqlError"
17
+ import { classifySqliteError, SqlError } from "effect/unstable/sql/SqlError"
17
18
  import * as Statement from "effect/unstable/sql/Statement"
18
19
 
19
20
  const ATTR_DB_SYSTEM_NAME = "db.system.name"
20
21
 
22
+ const classifyError = (cause: unknown, message: string, operation: string) =>
23
+ classifySqliteError(cause, { message, operation })
24
+
21
25
  /**
22
26
  * @category type ids
23
27
  * @since 1.0.0
@@ -46,7 +50,7 @@ export interface SqliteClient extends Client.SqlClient {
46
50
  * @category tags
47
51
  * @since 1.0.0
48
52
  */
49
- export const SqliteClient = ServiceMap.Service<SqliteClient>("@effect/sql-sqlite-do/SqliteClient")
53
+ export const SqliteClient = Context.Service<SqliteClient>("@effect/sql-sqlite-do/SqliteClient")
50
54
 
51
55
  /**
52
56
  * @category models
@@ -98,7 +102,7 @@ export const make = (
98
102
  ): Effect.Effect<ReadonlyArray<any>, SqlError, never> =>
99
103
  Effect.try({
100
104
  try: () => Array.from(runIterator(sql, params)),
101
- catch: (cause) => new SqlError({ cause, message: `Failed to execute statement` })
105
+ catch: (cause) => new SqlError({ reason: classifyError(cause, "Failed to execute statement", "execute") })
102
106
  })
103
107
 
104
108
  const runValues = (
@@ -116,7 +120,7 @@ export const make = (
116
120
  }
117
121
  return row
118
122
  }),
119
- catch: (cause) => new SqlError({ cause, message: `Failed to execute statement` })
123
+ catch: (cause) => new SqlError({ reason: classifyError(cause, "Failed to execute statement", "execute") })
120
124
  })
121
125
 
122
126
  return identity<Connection>({
@@ -149,13 +153,13 @@ export const make = (
149
153
  })
150
154
  })
151
155
 
152
- const semaphore = yield* Effect.makeSemaphore(1)
156
+ const semaphore = yield* Semaphore.make(1)
153
157
  const connection = yield* makeConnection
154
158
 
155
159
  const acquirer = semaphore.withPermits(1)(Effect.succeed(connection))
156
160
  const transactionAcquirer = Effect.uninterruptibleMask((restore) => {
157
161
  const fiber = Fiber.getCurrent()!
158
- const scope = ServiceMap.getUnsafe(fiber.services, Scope.Scope)
162
+ const scope = Context.getUnsafe(fiber.context, Scope.Scope)
159
163
  return Effect.as(
160
164
  Effect.tap(
161
165
  restore(semaphore.take(1)),
@@ -190,12 +194,12 @@ export const make = (
190
194
  export const layerConfig = (
191
195
  config: Config.Wrap<SqliteClientConfig>
192
196
  ): Layer.Layer<SqliteClient | Client.SqlClient, Config.ConfigError> =>
193
- Layer.effectServices(
197
+ Layer.effectContext(
194
198
  Config.unwrap(config).asEffect().pipe(
195
199
  Effect.flatMap(make),
196
200
  Effect.map((client) =>
197
- ServiceMap.make(SqliteClient, client).pipe(
198
- ServiceMap.add(Client.SqlClient, client)
201
+ Context.make(SqliteClient, client).pipe(
202
+ Context.add(Client.SqlClient, client)
199
203
  )
200
204
  )
201
205
  )
@@ -208,9 +212,9 @@ export const layerConfig = (
208
212
  export const layer = (
209
213
  config: SqliteClientConfig
210
214
  ): Layer.Layer<SqliteClient | Client.SqlClient> =>
211
- Layer.effectServices(
215
+ Layer.effectContext(
212
216
  Effect.map(make(config), (client) =>
213
- ServiceMap.make(SqliteClient, client).pipe(
214
- ServiceMap.add(Client.SqlClient, client)
217
+ Context.make(SqliteClient, client).pipe(
218
+ Context.add(Client.SqlClient, client)
215
219
  ))
216
220
  ).pipe(Layer.provide(Reactivity.layer))