@effect/sql-sqlite-node 4.0.0-beta.36 → 4.0.0-beta.38
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/dist/SqliteClient.d.ts.map +1 -1
- package/dist/SqliteClient.js +11 -13
- package/dist/SqliteClient.js.map +1 -1
- package/package.json +4 -4
- package/src/SqliteClient.ts +11 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SqliteClient.d.ts","sourceRoot":"","sources":["../src/SqliteClient.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAC3C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,UAAU,MAAM,mBAAmB,CAAA;AAE/C,OAAO,KAAK,UAAU,MAAM,uCAAuC,CAAA;AACnE,OAAO,KAAK,MAAM,MAAM,+BAA+B,CAAA;AAEvD,OAAO,
|
|
1
|
+
{"version":3,"file":"SqliteClient.d.ts","sourceRoot":"","sources":["../src/SqliteClient.ts"],"names":[],"mappings":"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"}
|
package/dist/SqliteClient.js
CHANGED
|
@@ -15,9 +15,13 @@ import * as ServiceMap from "effect/ServiceMap";
|
|
|
15
15
|
import * as Stream from "effect/Stream";
|
|
16
16
|
import * as Reactivity from "effect/unstable/reactivity/Reactivity";
|
|
17
17
|
import * as Client from "effect/unstable/sql/SqlClient";
|
|
18
|
-
import { SqlError } from "effect/unstable/sql/SqlError";
|
|
18
|
+
import { classifySqliteError, SqlError } from "effect/unstable/sql/SqlError";
|
|
19
19
|
import * as Statement from "effect/unstable/sql/Statement";
|
|
20
20
|
const ATTR_DB_SYSTEM_NAME = "db.system.name";
|
|
21
|
+
const classifyError = (cause, message, operation) => classifySqliteError(cause, {
|
|
22
|
+
message,
|
|
23
|
+
operation
|
|
24
|
+
});
|
|
21
25
|
/**
|
|
22
26
|
* @category type ids
|
|
23
27
|
* @since 1.0.0
|
|
@@ -50,8 +54,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
50
54
|
lookup: sql => Effect.try({
|
|
51
55
|
try: () => db.prepare(sql),
|
|
52
56
|
catch: cause => new SqlError({
|
|
53
|
-
cause,
|
|
54
|
-
message: "Failed to prepare statement "
|
|
57
|
+
reason: classifyError(cause, "Failed to prepare statement", "prepare")
|
|
55
58
|
})
|
|
56
59
|
})
|
|
57
60
|
});
|
|
@@ -67,8 +70,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
67
70
|
return Effect.succeed(raw ? result : []);
|
|
68
71
|
} catch (cause) {
|
|
69
72
|
return Effect.fail(new SqlError({
|
|
70
|
-
cause,
|
|
71
|
-
message: "Failed to execute statement"
|
|
73
|
+
reason: classifyError(cause, "Failed to execute statement", "execute")
|
|
72
74
|
}));
|
|
73
75
|
}
|
|
74
76
|
});
|
|
@@ -83,8 +85,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
83
85
|
return [];
|
|
84
86
|
},
|
|
85
87
|
catch: cause => new SqlError({
|
|
86
|
-
cause,
|
|
87
|
-
message: "Failed to execute statement"
|
|
88
|
+
reason: classifyError(cause, "Failed to execute statement", "execute")
|
|
88
89
|
})
|
|
89
90
|
}), statement => Effect.sync(() => statement.reader && statement.raw(false)));
|
|
90
91
|
return identity({
|
|
@@ -107,16 +108,14 @@ export const make = options => Effect.gen(function* () {
|
|
|
107
108
|
export: Effect.try({
|
|
108
109
|
try: () => db.serialize(),
|
|
109
110
|
catch: cause => new SqlError({
|
|
110
|
-
cause,
|
|
111
|
-
message: "Failed to export database"
|
|
111
|
+
reason: classifyError(cause, "Failed to export database", "export")
|
|
112
112
|
})
|
|
113
113
|
}),
|
|
114
114
|
backup(destination) {
|
|
115
115
|
return Effect.tryPromise({
|
|
116
116
|
try: () => db.backup(destination),
|
|
117
117
|
catch: cause => new SqlError({
|
|
118
|
-
cause,
|
|
119
|
-
message: "Failed to backup database"
|
|
118
|
+
reason: classifyError(cause, "Failed to backup database", "backup")
|
|
120
119
|
})
|
|
121
120
|
});
|
|
122
121
|
},
|
|
@@ -124,8 +123,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
124
123
|
return Effect.try({
|
|
125
124
|
try: () => db.loadExtension(path),
|
|
126
125
|
catch: cause => new SqlError({
|
|
127
|
-
cause,
|
|
128
|
-
message: "Failed to load extension"
|
|
126
|
+
reason: classifyError(cause, "Failed to load extension", "loadExtension")
|
|
129
127
|
})
|
|
130
128
|
});
|
|
131
129
|
}
|
package/dist/SqliteClient.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SqliteClient.js","names":["Sqlite","Cache","Config","Duration","Effect","Fiber","identity","Layer","Scope","Semaphore","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","scope","db","filename","readonly","addFinalizer","sync","close","disableWAL","pragma","prepareCache","capacity","prepareCacheSize","timeToLive","prepareCacheTTL","minutes","lookup","sql","try","prepare","catch","
|
|
1
|
+
{"version":3,"file":"SqliteClient.js","names":["Sqlite","Cache","Config","Duration","Effect","Fiber","identity","Layer","Scope","Semaphore","ServiceMap","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","services","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","effectServices","unwrap","asEffect","pipe","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-node",
|
|
3
|
-
"version": "4.0.0-beta.
|
|
3
|
+
"version": "4.0.0-beta.38",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"description": "A SQLite toolkit for Effect",
|
|
@@ -44,11 +44,11 @@
|
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
46
|
"@types/better-sqlite3": "^7.6.13",
|
|
47
|
-
"@effect/platform-node": "^4.0.0-beta.
|
|
48
|
-
"effect": "^4.0.0-beta.
|
|
47
|
+
"@effect/platform-node": "^4.0.0-beta.38",
|
|
48
|
+
"effect": "^4.0.0-beta.38"
|
|
49
49
|
},
|
|
50
50
|
"peerDependencies": {
|
|
51
|
-
"effect": "^4.0.0-beta.
|
|
51
|
+
"effect": "^4.0.0-beta.38"
|
|
52
52
|
},
|
|
53
53
|
"dependencies": {
|
|
54
54
|
"better-sqlite3": "^12.6.2"
|
package/src/SqliteClient.ts
CHANGED
|
@@ -16,11 +16,14 @@ import * as Stream from "effect/Stream"
|
|
|
16
16
|
import * as Reactivity from "effect/unstable/reactivity/Reactivity"
|
|
17
17
|
import * as Client from "effect/unstable/sql/SqlClient"
|
|
18
18
|
import type { Connection } from "effect/unstable/sql/SqlConnection"
|
|
19
|
-
import { SqlError } from "effect/unstable/sql/SqlError"
|
|
19
|
+
import { classifySqliteError, SqlError } from "effect/unstable/sql/SqlError"
|
|
20
20
|
import * as Statement from "effect/unstable/sql/Statement"
|
|
21
21
|
|
|
22
22
|
const ATTR_DB_SYSTEM_NAME = "db.system.name"
|
|
23
23
|
|
|
24
|
+
const classifyError = (cause: unknown, message: string, operation: string) =>
|
|
25
|
+
classifySqliteError(cause, { message, operation })
|
|
26
|
+
|
|
24
27
|
/**
|
|
25
28
|
* @category type ids
|
|
26
29
|
* @since 1.0.0
|
|
@@ -117,7 +120,7 @@ export const make = (
|
|
|
117
120
|
lookup: (sql: string) =>
|
|
118
121
|
Effect.try({
|
|
119
122
|
try: () => db.prepare(sql),
|
|
120
|
-
catch: (cause) => new SqlError({ cause,
|
|
123
|
+
catch: (cause) => new SqlError({ reason: classifyError(cause, "Failed to prepare statement", "prepare") })
|
|
121
124
|
})
|
|
122
125
|
})
|
|
123
126
|
|
|
@@ -137,7 +140,7 @@ export const make = (
|
|
|
137
140
|
const result = statement.run(...params)
|
|
138
141
|
return Effect.succeed(raw ? result as unknown as ReadonlyArray<any> : [])
|
|
139
142
|
} catch (cause) {
|
|
140
|
-
return Effect.fail(new SqlError({ cause,
|
|
143
|
+
return Effect.fail(new SqlError({ reason: classifyError(cause, "Failed to execute statement", "execute") }))
|
|
141
144
|
}
|
|
142
145
|
})
|
|
143
146
|
|
|
@@ -169,7 +172,7 @@ export const make = (
|
|
|
169
172
|
statement.run(...params)
|
|
170
173
|
return []
|
|
171
174
|
},
|
|
172
|
-
catch: (cause) => new SqlError({ cause,
|
|
175
|
+
catch: (cause) => new SqlError({ reason: classifyError(cause, "Failed to execute statement", "execute") })
|
|
173
176
|
}),
|
|
174
177
|
(statement) => Effect.sync(() => statement.reader && statement.raw(false))
|
|
175
178
|
)
|
|
@@ -195,18 +198,19 @@ export const make = (
|
|
|
195
198
|
},
|
|
196
199
|
export: Effect.try({
|
|
197
200
|
try: () => db.serialize(),
|
|
198
|
-
catch: (cause) => new SqlError({ cause,
|
|
201
|
+
catch: (cause) => new SqlError({ reason: classifyError(cause, "Failed to export database", "export") })
|
|
199
202
|
}),
|
|
200
203
|
backup(destination) {
|
|
201
204
|
return Effect.tryPromise({
|
|
202
205
|
try: () => db.backup(destination),
|
|
203
|
-
catch: (cause) => new SqlError({ cause,
|
|
206
|
+
catch: (cause) => new SqlError({ reason: classifyError(cause, "Failed to backup database", "backup") })
|
|
204
207
|
})
|
|
205
208
|
},
|
|
206
209
|
loadExtension(path) {
|
|
207
210
|
return Effect.try({
|
|
208
211
|
try: () => db.loadExtension(path),
|
|
209
|
-
catch: (cause) =>
|
|
212
|
+
catch: (cause) =>
|
|
213
|
+
new SqlError({ reason: classifyError(cause, "Failed to load extension", "loadExtension") })
|
|
210
214
|
})
|
|
211
215
|
}
|
|
212
216
|
})
|