@effect/sql-pg 0.50.2 → 0.50.3

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,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.makeCompiler = exports.make = exports.layerConfig = exports.layer = exports.TypeId = exports.PgClient = void 0;
6
+ exports.makeCompiler = exports.make = exports.layerFromPool = exports.layerConfig = exports.layer = exports.fromPool = exports.TypeId = exports.PgClient = void 0;
7
7
  var Reactivity = _interopRequireWildcard(require("@effect/experimental/Reactivity"));
8
8
  var Client = _interopRequireWildcard(require("@effect/sql/SqlClient"));
9
9
  var _SqlError = require("@effect/sql/SqlError");
@@ -45,44 +45,9 @@ const TypeId = exports.TypeId = "~@effect/sql-pg/PgClient";
45
45
  * @since 1.0.0
46
46
  */
47
47
  const PgClient = exports.PgClient = /*#__PURE__*/Context.GenericTag("@effect/sql-pg/PgClient");
48
- /**
49
- * @category constructors
50
- * @since 1.0.0
51
- */
52
- const make = options => Effect.gen(function* () {
48
+ const makeClient = (pool, config, options) => Effect.gen(function* () {
53
49
  const compiler = makeCompiler(options.transformQueryNames, options.transformJson);
54
50
  const transformRows = options.transformResultNames ? Statement.defaultTransforms(options.transformResultNames, options.transformJson).array : undefined;
55
- const pool = new Pg.Pool({
56
- connectionString: options.url ? Redacted.value(options.url) : undefined,
57
- user: options.username,
58
- host: options.host,
59
- database: options.database,
60
- password: options.password ? Redacted.value(options.password) : undefined,
61
- ssl: options.ssl,
62
- port: options.port,
63
- stream: options.stream,
64
- connectionTimeoutMillis: options.connectTimeout ? Duration.toMillis(options.connectTimeout) : undefined,
65
- idleTimeoutMillis: options.idleTimeout ? Duration.toMillis(options.idleTimeout) : undefined,
66
- max: options.maxConnections,
67
- min: options.minConnections,
68
- maxLifetimeSeconds: options.connectionTTL ? Duration.toSeconds(options.connectionTTL) : undefined,
69
- application_name: options.applicationName ?? "@effect/sql-pg",
70
- types: options.types
71
- });
72
- pool.on("error", _err => {});
73
- yield* Effect.acquireRelease(Effect.tryPromise({
74
- try: () => pool.query("SELECT 1"),
75
- catch: cause => new _SqlError.SqlError({
76
- cause,
77
- message: "PgClient: Failed to connect"
78
- })
79
- }), () => Effect.promise(() => pool.end()).pipe(Effect.interruptible, Effect.timeoutOption(1000))).pipe(Effect.timeoutFail({
80
- duration: options.connectTimeout ?? Duration.seconds(5),
81
- onTimeout: () => new _SqlError.SqlError({
82
- cause: new Error("Connection timed out"),
83
- message: "PgClient: Connection timed out"
84
- })
85
- }));
86
51
  class ConnectionImpl {
87
52
  pg;
88
53
  constructor(pg) {
@@ -258,27 +223,11 @@ const make = options => Effect.gen(function* () {
258
223
  const listenClient = yield* RcRef.make({
259
224
  acquire: reserveRaw
260
225
  });
261
- let config = options;
262
- if (pool.options.connectionString) {
263
- try {
264
- const parsed = PgConnString.parse(pool.options.connectionString);
265
- config = {
266
- ...config,
267
- host: config.host ?? parsed.host ?? undefined,
268
- port: config.port ?? (parsed.port ? Option.getOrUndefined(Number.parse(parsed.port)) : undefined),
269
- username: config.username ?? parsed.user ?? undefined,
270
- password: config.password ?? (parsed.password ? Redacted.make(parsed.password) : undefined),
271
- database: config.database ?? parsed.database ?? undefined
272
- };
273
- } catch {
274
- //
275
- }
276
- }
277
226
  return Object.assign(yield* Client.make({
278
227
  acquirer: Effect.succeed(new ConnectionImpl()),
279
228
  transactionAcquirer: reserve,
280
229
  compiler,
281
- spanAttributes: [...(options.spanAttributes ? Object.entries(options.spanAttributes) : []), [ATTR_DB_SYSTEM_NAME, "postgresql"], [ATTR_DB_NAMESPACE, options.database ?? options.username ?? "postgres"], [ATTR_SERVER_ADDRESS, options.host ?? "localhost"], [ATTR_SERVER_PORT, options.port ?? 5432]],
230
+ spanAttributes: [...(options.spanAttributes ? Object.entries(options.spanAttributes) : []), [ATTR_DB_SYSTEM_NAME, "postgresql"], [ATTR_DB_NAMESPACE, config.database ?? config.username ?? "postgres"], [ATTR_SERVER_ADDRESS, config.host ?? "localhost"], [ATTR_SERVER_PORT, config.port ?? 5432]],
282
231
  transformRows
283
232
  }), {
284
233
  [TypeId]: TypeId,
@@ -318,7 +267,101 @@ const make = options => Effect.gen(function* () {
318
267
  })
319
268
  });
320
269
  });
270
+ /**
271
+ * @category constructors
272
+ * @since 1.0.0
273
+ */
274
+ const make = options => Effect.gen(function* () {
275
+ const pool = new Pg.Pool({
276
+ connectionString: options.url ? Redacted.value(options.url) : undefined,
277
+ user: options.username,
278
+ host: options.host,
279
+ database: options.database,
280
+ password: options.password ? Redacted.value(options.password) : undefined,
281
+ ssl: options.ssl,
282
+ port: options.port,
283
+ ...(options.stream ? {
284
+ stream: options.stream
285
+ } : {}),
286
+ connectionTimeoutMillis: options.connectTimeout ? Duration.toMillis(options.connectTimeout) : undefined,
287
+ idleTimeoutMillis: options.idleTimeout ? Duration.toMillis(options.idleTimeout) : undefined,
288
+ max: options.maxConnections,
289
+ min: options.minConnections,
290
+ maxLifetimeSeconds: options.connectionTTL ? Duration.toSeconds(options.connectionTTL) : undefined,
291
+ application_name: options.applicationName ?? "@effect/sql-pg",
292
+ types: options.types
293
+ });
294
+ pool.on("error", _err => {});
295
+ yield* Effect.acquireRelease(Effect.tryPromise({
296
+ try: () => pool.query("SELECT 1"),
297
+ catch: cause => new _SqlError.SqlError({
298
+ cause,
299
+ message: "PgClient: Failed to connect"
300
+ })
301
+ }), () => Effect.promise(() => pool.end()).pipe(Effect.interruptible, Effect.timeoutOption(1000))).pipe(Effect.timeoutFail({
302
+ duration: options.connectTimeout ?? Duration.seconds(5),
303
+ onTimeout: () => new _SqlError.SqlError({
304
+ cause: new Error("Connection timed out"),
305
+ message: "PgClient: Connection timed out"
306
+ })
307
+ }));
308
+ let config = options;
309
+ if (pool.options.connectionString) {
310
+ try {
311
+ const parsed = PgConnString.parse(pool.options.connectionString);
312
+ config = {
313
+ ...config,
314
+ host: config.host ?? parsed.host ?? undefined,
315
+ port: config.port ?? (parsed.port ? Option.getOrUndefined(Number.parse(parsed.port)) : undefined),
316
+ username: config.username ?? parsed.user ?? undefined,
317
+ password: config.password ?? (parsed.password ? Redacted.make(parsed.password) : undefined),
318
+ database: config.database ?? parsed.database ?? undefined
319
+ };
320
+ } catch {
321
+ //
322
+ }
323
+ }
324
+ return yield* makeClient(pool, config, options);
325
+ });
326
+ /**
327
+ * Create a `PgClient` from an existing `pg` pool.
328
+ *
329
+ * You control the pool lifecycle via `acquire` (typically `Effect.acquireRelease`).
330
+ *
331
+ * @category constructors
332
+ * @since 1.0.0
333
+ */
321
334
  exports.make = make;
335
+ const fromPool = exports.fromPool = /*#__PURE__*/Effect.fnUntraced(function* (options) {
336
+ const pool = yield* options.acquire;
337
+ let config = {
338
+ url: pool.options.connectionString ? Redacted.make(pool.options.connectionString) : undefined,
339
+ host: pool.options.host,
340
+ port: pool.options.port,
341
+ database: pool.options.database,
342
+ username: pool.options.user,
343
+ password: typeof pool.options.password === "string" ? Redacted.make(pool.options.password) : undefined,
344
+ ssl: pool.options.ssl,
345
+ applicationName: pool.options.application_name,
346
+ types: pool.options.types
347
+ };
348
+ if (pool.options.connectionString) {
349
+ try {
350
+ const parsed = PgConnString.parse(pool.options.connectionString);
351
+ config = {
352
+ ...config,
353
+ host: config.host ?? parsed.host ?? undefined,
354
+ port: config.port ?? (parsed.port ? Option.getOrUndefined(Number.parse(parsed.port)) : undefined),
355
+ username: config.username ?? parsed.user ?? undefined,
356
+ password: config.password ?? (parsed.password ? Redacted.make(parsed.password) : undefined),
357
+ database: config.database ?? parsed.database ?? undefined
358
+ };
359
+ } catch {
360
+ //
361
+ }
362
+ }
363
+ return yield* makeClient(pool, config, options);
364
+ });
322
365
  const cancelEffects = /*#__PURE__*/new WeakMap();
323
366
  const makeCancel = (pool, client) => {
324
367
  if (cancelEffects.has(client)) {
@@ -348,10 +391,16 @@ const layerConfig = config => Layer.scopedContext(Config.unwrap(config).pipe(Eff
348
391
  exports.layerConfig = layerConfig;
349
392
  const layer = config => Layer.scopedContext(Effect.map(make(config), client => Context.make(PgClient, client).pipe(Context.add(Client.SqlClient, client)))).pipe(Layer.provide(Reactivity.layer));
350
393
  /**
351
- * @category constructor
394
+ * @category layers
352
395
  * @since 1.0.0
353
396
  */
354
397
  exports.layer = layer;
398
+ const layerFromPool = options => Layer.scopedContext(Effect.map(fromPool(options), client => Context.make(PgClient, client).pipe(Context.add(Client.SqlClient, client)))).pipe(Layer.provide(Reactivity.layer));
399
+ /**
400
+ * @category constructor
401
+ * @since 1.0.0
402
+ */
403
+ exports.layerFromPool = layerFromPool;
355
404
  const makeCompiler = (transform, transformJson = true) => {
356
405
  const transformValue = transformJson && transform ? Statement.defaultTransforms(transform).value : undefined;
357
406
  return Statement.makeCompiler({
@@ -1 +1 @@
1
- {"version":3,"file":"PgClient.js","names":["Reactivity","_interopRequireWildcard","require","Client","_SqlError","Statement","Arr","Chunk","Config","Context","Duration","Effect","Fiber","Layer","Number","Option","RcRef","Redacted","Scope","Stream","Pg","PgConnString","_pgCursor","_interopRequireDefault","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ATTR_DB_SYSTEM_NAME","ATTR_DB_NAMESPACE","ATTR_SERVER_ADDRESS","ATTR_SERVER_PORT","TypeId","exports","PgClient","GenericTag","make","options","gen","compiler","makeCompiler","transformQueryNames","transformJson","transformRows","transformResultNames","defaultTransforms","array","undefined","pool","Pool","connectionString","url","value","user","username","host","database","password","ssl","port","stream","connectionTimeoutMillis","connectTimeout","toMillis","idleTimeoutMillis","idleTimeout","max","maxConnections","min","minConnections","maxLifetimeSeconds","connectionTTL","toSeconds","application_name","applicationName","types","on","_err","acquireRelease","tryPromise","try","query","catch","cause","SqlError","message","promise","end","pipe","interruptible","timeoutOption","timeoutFail","duration","seconds","onTimeout","Error","ConnectionImpl","pg","constructor","runWithClient","async","resume","makeCancel","done","cancel","client","onError","cleanup","fail","release","off","connect","client_","once","eff","suspend","void","ensuring","sync","run","params","err","result","succeed","Array","isArray","map","rows","execute","sql","executeRaw","executeWithoutTransform","executeValues","text","rowMode","values","executeUnprepared","executeStream","self","scope","reserveRaw","addFinalizer","cursor","close","Cursor","pull","read","some","isNonEmptyArray","unsafeFromArray","none","repeatEffectChunkOption","unwrapScoped","fiber","getOrThrow","getCurrentFiber","unsafeGet","currentContext","cause_","as","reserve","listenClient","acquire","config","parsed","parse","getOrUndefined","assign","acquirer","transactionAcquirer","spanAttributes","entries","json","_","PgJson","listen","channel","asyncPush","fnUntraced","emit","onNotification","msg","payload","single","escapeIdentifier","notify","cancelEffects","processId","processID","ending","layerConfig","scopedContext","unwrap","flatMap","add","SqlClient","provide","layer","transform","transformValue","dialect","placeholder","onIdentifier","withoutTransform","escape","onRecordUpdate","placeholders","valueAlias","valueColumns","returning","flat","concat","onCustom","type","kind","i0","defaultEscape","custom"],"sources":["../../src/PgClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"PgClient.js","names":["Reactivity","_interopRequireWildcard","require","Client","_SqlError","Statement","Arr","Chunk","Config","Context","Duration","Effect","Fiber","Layer","Number","Option","RcRef","Redacted","Scope","Stream","Pg","PgConnString","_pgCursor","_interopRequireDefault","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ATTR_DB_SYSTEM_NAME","ATTR_DB_NAMESPACE","ATTR_SERVER_ADDRESS","ATTR_SERVER_PORT","TypeId","exports","PgClient","GenericTag","makeClient","pool","config","options","gen","compiler","makeCompiler","transformQueryNames","transformJson","transformRows","transformResultNames","defaultTransforms","array","undefined","ConnectionImpl","pg","constructor","runWithClient","async","resume","makeCancel","done","cancel","client","onError","cause","cleanup","fail","SqlError","message","release","off","connect","client_","Error","once","eff","suspend","void","ensuring","sync","run","query","params","err","result","succeed","Array","isArray","map","rows","execute","sql","executeRaw","executeWithoutTransform","executeValues","text","rowMode","values","executeUnprepared","executeStream","self","scope","reserveRaw","addFinalizer","promise","cursor","close","Cursor","pull","read","some","isNonEmptyArray","unsafeFromArray","none","repeatEffectChunkOption","pipe","unwrapScoped","fiber","getOrThrow","getCurrentFiber","unsafeGet","currentContext","cause_","on","as","reserve","listenClient","make","acquire","assign","acquirer","transactionAcquirer","spanAttributes","entries","database","username","host","port","json","_","PgJson","listen","channel","asyncPush","fnUntraced","emit","onNotification","msg","payload","single","escapeIdentifier","tryPromise","try","catch","notify","Pool","connectionString","url","value","user","password","ssl","stream","connectionTimeoutMillis","connectTimeout","toMillis","idleTimeoutMillis","idleTimeout","max","maxConnections","min","minConnections","maxLifetimeSeconds","connectionTTL","toSeconds","application_name","applicationName","types","_err","acquireRelease","end","interruptible","timeoutOption","timeoutFail","duration","seconds","onTimeout","parsed","parse","getOrUndefined","fromPool","cancelEffects","processId","processID","ending","layerConfig","scopedContext","unwrap","flatMap","add","SqlClient","provide","layer","layerFromPool","transform","transformValue","dialect","placeholder","onIdentifier","withoutTransform","escape","onRecordUpdate","placeholders","valueAlias","valueColumns","returning","flat","concat","onCustom","type","kind","i0","defaultEscape","custom"],"sources":["../../src/PgClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -75,6 +75,28 @@ export interface PgClientConfig {
75
75
  * @since 1.0.0
76
76
  */
77
77
  export declare const make: (options: PgClientConfig) => Effect.Effect<PgClient, SqlError, Scope.Scope | Reactivity.Reactivity>;
78
+ /**
79
+ * @category constructors
80
+ * @since 1.0.0
81
+ */
82
+ export interface PgClientFromPoolOptions {
83
+ readonly acquire: Effect.Effect<Pg.Pool, SqlError, Scope.Scope>;
84
+ readonly applicationName?: string | undefined;
85
+ readonly spanAttributes?: Record<string, unknown> | undefined;
86
+ readonly transformResultNames?: ((str: string) => string) | undefined;
87
+ readonly transformQueryNames?: ((str: string) => string) | undefined;
88
+ readonly transformJson?: boolean | undefined;
89
+ readonly types?: Pg.CustomTypesConfig | undefined;
90
+ }
91
+ /**
92
+ * Create a `PgClient` from an existing `pg` pool.
93
+ *
94
+ * You control the pool lifecycle via `acquire` (typically `Effect.acquireRelease`).
95
+ *
96
+ * @category constructors
97
+ * @since 1.0.0
98
+ */
99
+ export declare const fromPool: (options: PgClientFromPoolOptions) => Effect.Effect<PgClient, SqlError, Scope.Scope | Reactivity.Reactivity>;
78
100
  /**
79
101
  * @category layers
80
102
  * @since 1.0.0
@@ -85,6 +107,11 @@ export declare const layerConfig: (config: Config.Config.Wrap<PgClientConfig>) =
85
107
  * @since 1.0.0
86
108
  */
87
109
  export declare const layer: (config: PgClientConfig) => Layer.Layer<PgClient | Client.SqlClient, SqlError>;
110
+ /**
111
+ * @category layers
112
+ * @since 1.0.0
113
+ */
114
+ export declare const layerFromPool: (options: PgClientFromPoolOptions) => Layer.Layer<PgClient | Client.SqlClient, SqlError>;
88
115
  /**
89
116
  * @category constructor
90
117
  * @since 1.0.0
@@ -1 +1 @@
1
- {"version":3,"file":"PgClient.d.ts","sourceRoot":"","sources":["../../src/PgClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PgClient.d.ts","sourceRoot":"","sources":["../../src/PgClient.ts"],"names":[],"mappings":"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"}
@@ -36,44 +36,9 @@ export const TypeId = "~@effect/sql-pg/PgClient";
36
36
  * @since 1.0.0
37
37
  */
38
38
  export const PgClient = /*#__PURE__*/Context.GenericTag("@effect/sql-pg/PgClient");
39
- /**
40
- * @category constructors
41
- * @since 1.0.0
42
- */
43
- export const make = options => Effect.gen(function* () {
39
+ const makeClient = (pool, config, options) => Effect.gen(function* () {
44
40
  const compiler = makeCompiler(options.transformQueryNames, options.transformJson);
45
41
  const transformRows = options.transformResultNames ? Statement.defaultTransforms(options.transformResultNames, options.transformJson).array : undefined;
46
- const pool = new Pg.Pool({
47
- connectionString: options.url ? Redacted.value(options.url) : undefined,
48
- user: options.username,
49
- host: options.host,
50
- database: options.database,
51
- password: options.password ? Redacted.value(options.password) : undefined,
52
- ssl: options.ssl,
53
- port: options.port,
54
- stream: options.stream,
55
- connectionTimeoutMillis: options.connectTimeout ? Duration.toMillis(options.connectTimeout) : undefined,
56
- idleTimeoutMillis: options.idleTimeout ? Duration.toMillis(options.idleTimeout) : undefined,
57
- max: options.maxConnections,
58
- min: options.minConnections,
59
- maxLifetimeSeconds: options.connectionTTL ? Duration.toSeconds(options.connectionTTL) : undefined,
60
- application_name: options.applicationName ?? "@effect/sql-pg",
61
- types: options.types
62
- });
63
- pool.on("error", _err => {});
64
- yield* Effect.acquireRelease(Effect.tryPromise({
65
- try: () => pool.query("SELECT 1"),
66
- catch: cause => new SqlError({
67
- cause,
68
- message: "PgClient: Failed to connect"
69
- })
70
- }), () => Effect.promise(() => pool.end()).pipe(Effect.interruptible, Effect.timeoutOption(1000))).pipe(Effect.timeoutFail({
71
- duration: options.connectTimeout ?? Duration.seconds(5),
72
- onTimeout: () => new SqlError({
73
- cause: new Error("Connection timed out"),
74
- message: "PgClient: Connection timed out"
75
- })
76
- }));
77
42
  class ConnectionImpl {
78
43
  pg;
79
44
  constructor(pg) {
@@ -249,27 +214,11 @@ export const make = options => Effect.gen(function* () {
249
214
  const listenClient = yield* RcRef.make({
250
215
  acquire: reserveRaw
251
216
  });
252
- let config = options;
253
- if (pool.options.connectionString) {
254
- try {
255
- const parsed = PgConnString.parse(pool.options.connectionString);
256
- config = {
257
- ...config,
258
- host: config.host ?? parsed.host ?? undefined,
259
- port: config.port ?? (parsed.port ? Option.getOrUndefined(Number.parse(parsed.port)) : undefined),
260
- username: config.username ?? parsed.user ?? undefined,
261
- password: config.password ?? (parsed.password ? Redacted.make(parsed.password) : undefined),
262
- database: config.database ?? parsed.database ?? undefined
263
- };
264
- } catch {
265
- //
266
- }
267
- }
268
217
  return Object.assign(yield* Client.make({
269
218
  acquirer: Effect.succeed(new ConnectionImpl()),
270
219
  transactionAcquirer: reserve,
271
220
  compiler,
272
- spanAttributes: [...(options.spanAttributes ? Object.entries(options.spanAttributes) : []), [ATTR_DB_SYSTEM_NAME, "postgresql"], [ATTR_DB_NAMESPACE, options.database ?? options.username ?? "postgres"], [ATTR_SERVER_ADDRESS, options.host ?? "localhost"], [ATTR_SERVER_PORT, options.port ?? 5432]],
221
+ spanAttributes: [...(options.spanAttributes ? Object.entries(options.spanAttributes) : []), [ATTR_DB_SYSTEM_NAME, "postgresql"], [ATTR_DB_NAMESPACE, config.database ?? config.username ?? "postgres"], [ATTR_SERVER_ADDRESS, config.host ?? "localhost"], [ATTR_SERVER_PORT, config.port ?? 5432]],
273
222
  transformRows
274
223
  }), {
275
224
  [TypeId]: TypeId,
@@ -309,6 +258,100 @@ export const make = options => Effect.gen(function* () {
309
258
  })
310
259
  });
311
260
  });
261
+ /**
262
+ * @category constructors
263
+ * @since 1.0.0
264
+ */
265
+ export const make = options => Effect.gen(function* () {
266
+ const pool = new Pg.Pool({
267
+ connectionString: options.url ? Redacted.value(options.url) : undefined,
268
+ user: options.username,
269
+ host: options.host,
270
+ database: options.database,
271
+ password: options.password ? Redacted.value(options.password) : undefined,
272
+ ssl: options.ssl,
273
+ port: options.port,
274
+ ...(options.stream ? {
275
+ stream: options.stream
276
+ } : {}),
277
+ connectionTimeoutMillis: options.connectTimeout ? Duration.toMillis(options.connectTimeout) : undefined,
278
+ idleTimeoutMillis: options.idleTimeout ? Duration.toMillis(options.idleTimeout) : undefined,
279
+ max: options.maxConnections,
280
+ min: options.minConnections,
281
+ maxLifetimeSeconds: options.connectionTTL ? Duration.toSeconds(options.connectionTTL) : undefined,
282
+ application_name: options.applicationName ?? "@effect/sql-pg",
283
+ types: options.types
284
+ });
285
+ pool.on("error", _err => {});
286
+ yield* Effect.acquireRelease(Effect.tryPromise({
287
+ try: () => pool.query("SELECT 1"),
288
+ catch: cause => new SqlError({
289
+ cause,
290
+ message: "PgClient: Failed to connect"
291
+ })
292
+ }), () => Effect.promise(() => pool.end()).pipe(Effect.interruptible, Effect.timeoutOption(1000))).pipe(Effect.timeoutFail({
293
+ duration: options.connectTimeout ?? Duration.seconds(5),
294
+ onTimeout: () => new SqlError({
295
+ cause: new Error("Connection timed out"),
296
+ message: "PgClient: Connection timed out"
297
+ })
298
+ }));
299
+ let config = options;
300
+ if (pool.options.connectionString) {
301
+ try {
302
+ const parsed = PgConnString.parse(pool.options.connectionString);
303
+ config = {
304
+ ...config,
305
+ host: config.host ?? parsed.host ?? undefined,
306
+ port: config.port ?? (parsed.port ? Option.getOrUndefined(Number.parse(parsed.port)) : undefined),
307
+ username: config.username ?? parsed.user ?? undefined,
308
+ password: config.password ?? (parsed.password ? Redacted.make(parsed.password) : undefined),
309
+ database: config.database ?? parsed.database ?? undefined
310
+ };
311
+ } catch {
312
+ //
313
+ }
314
+ }
315
+ return yield* makeClient(pool, config, options);
316
+ });
317
+ /**
318
+ * Create a `PgClient` from an existing `pg` pool.
319
+ *
320
+ * You control the pool lifecycle via `acquire` (typically `Effect.acquireRelease`).
321
+ *
322
+ * @category constructors
323
+ * @since 1.0.0
324
+ */
325
+ export const fromPool = /*#__PURE__*/Effect.fnUntraced(function* (options) {
326
+ const pool = yield* options.acquire;
327
+ let config = {
328
+ url: pool.options.connectionString ? Redacted.make(pool.options.connectionString) : undefined,
329
+ host: pool.options.host,
330
+ port: pool.options.port,
331
+ database: pool.options.database,
332
+ username: pool.options.user,
333
+ password: typeof pool.options.password === "string" ? Redacted.make(pool.options.password) : undefined,
334
+ ssl: pool.options.ssl,
335
+ applicationName: pool.options.application_name,
336
+ types: pool.options.types
337
+ };
338
+ if (pool.options.connectionString) {
339
+ try {
340
+ const parsed = PgConnString.parse(pool.options.connectionString);
341
+ config = {
342
+ ...config,
343
+ host: config.host ?? parsed.host ?? undefined,
344
+ port: config.port ?? (parsed.port ? Option.getOrUndefined(Number.parse(parsed.port)) : undefined),
345
+ username: config.username ?? parsed.user ?? undefined,
346
+ password: config.password ?? (parsed.password ? Redacted.make(parsed.password) : undefined),
347
+ database: config.database ?? parsed.database ?? undefined
348
+ };
349
+ } catch {
350
+ //
351
+ }
352
+ }
353
+ return yield* makeClient(pool, config, options);
354
+ });
312
355
  const cancelEffects = /*#__PURE__*/new WeakMap();
313
356
  const makeCancel = (pool, client) => {
314
357
  if (cancelEffects.has(client)) {
@@ -336,6 +379,11 @@ export const layerConfig = config => Layer.scopedContext(Config.unwrap(config).p
336
379
  * @since 1.0.0
337
380
  */
338
381
  export const layer = config => Layer.scopedContext(Effect.map(make(config), client => Context.make(PgClient, client).pipe(Context.add(Client.SqlClient, client)))).pipe(Layer.provide(Reactivity.layer));
382
+ /**
383
+ * @category layers
384
+ * @since 1.0.0
385
+ */
386
+ export const layerFromPool = options => Layer.scopedContext(Effect.map(fromPool(options), client => Context.make(PgClient, client).pipe(Context.add(Client.SqlClient, client)))).pipe(Layer.provide(Reactivity.layer));
339
387
  /**
340
388
  * @category constructor
341
389
  * @since 1.0.0
@@ -1 +1 @@
1
- {"version":3,"file":"PgClient.js","names":["Reactivity","Client","SqlError","Statement","Arr","Chunk","Config","Context","Duration","Effect","Fiber","Layer","Number","Option","RcRef","Redacted","Scope","Stream","Pg","PgConnString","Cursor","ATTR_DB_SYSTEM_NAME","ATTR_DB_NAMESPACE","ATTR_SERVER_ADDRESS","ATTR_SERVER_PORT","TypeId","PgClient","GenericTag","make","options","gen","compiler","makeCompiler","transformQueryNames","transformJson","transformRows","transformResultNames","defaultTransforms","array","undefined","pool","Pool","connectionString","url","value","user","username","host","database","password","ssl","port","stream","connectionTimeoutMillis","connectTimeout","toMillis","idleTimeoutMillis","idleTimeout","max","maxConnections","min","minConnections","maxLifetimeSeconds","connectionTTL","toSeconds","application_name","applicationName","types","on","_err","acquireRelease","tryPromise","try","query","catch","cause","message","promise","end","pipe","interruptible","timeoutOption","timeoutFail","duration","seconds","onTimeout","Error","ConnectionImpl","pg","constructor","runWithClient","f","async","resume","makeCancel","done","cancel","client","onError","cleanup","fail","release","off","connect","client_","once","eff","suspend","void","ensuring","sync","run","params","err","result","succeed","Array","isArray","map","r","rows","execute","sql","executeRaw","executeWithoutTransform","executeValues","text","rowMode","values","executeUnprepared","executeStream","self","scope","reserveRaw","addFinalizer","cursor","close","pull","read","some","isNonEmptyArray","unsafeFromArray","none","repeatEffectChunkOption","unwrapScoped","fiber","getOrThrow","getCurrentFiber","unsafeGet","currentContext","cause_","as","reserve","listenClient","acquire","config","parsed","parse","getOrUndefined","Object","assign","acquirer","transactionAcquirer","spanAttributes","entries","json","_","PgJson","listen","channel","asyncPush","fnUntraced","emit","get","onNotification","msg","payload","single","escapeIdentifier","notify","cancelEffects","WeakMap","has","processId","processID","ending","set","layerConfig","scopedContext","unwrap","flatMap","add","SqlClient","provide","layer","transform","transformValue","dialect","placeholder","onIdentifier","withoutTransform","escape","onRecordUpdate","placeholders","valueAlias","valueColumns","returning","flat","concat","onCustom","type","kind","i0","defaultEscape","custom"],"sources":["../../src/PgClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"PgClient.js","names":["Reactivity","Client","SqlError","Statement","Arr","Chunk","Config","Context","Duration","Effect","Fiber","Layer","Number","Option","RcRef","Redacted","Scope","Stream","Pg","PgConnString","Cursor","ATTR_DB_SYSTEM_NAME","ATTR_DB_NAMESPACE","ATTR_SERVER_ADDRESS","ATTR_SERVER_PORT","TypeId","PgClient","GenericTag","makeClient","pool","config","options","gen","compiler","makeCompiler","transformQueryNames","transformJson","transformRows","transformResultNames","defaultTransforms","array","undefined","ConnectionImpl","pg","constructor","runWithClient","f","async","resume","makeCancel","done","cancel","client","onError","cause","cleanup","fail","message","release","off","connect","client_","Error","once","eff","suspend","void","ensuring","sync","run","query","params","err","result","succeed","Array","isArray","map","r","rows","execute","sql","executeRaw","executeWithoutTransform","executeValues","text","rowMode","values","executeUnprepared","executeStream","self","scope","reserveRaw","addFinalizer","promise","cursor","close","pull","read","some","isNonEmptyArray","unsafeFromArray","none","repeatEffectChunkOption","pipe","unwrapScoped","fiber","getOrThrow","getCurrentFiber","unsafeGet","currentContext","cause_","on","as","reserve","listenClient","make","acquire","Object","assign","acquirer","transactionAcquirer","spanAttributes","entries","database","username","host","port","json","_","PgJson","listen","channel","asyncPush","fnUntraced","emit","get","onNotification","msg","payload","single","escapeIdentifier","tryPromise","try","catch","notify","Pool","connectionString","url","value","user","password","ssl","stream","connectionTimeoutMillis","connectTimeout","toMillis","idleTimeoutMillis","idleTimeout","max","maxConnections","min","minConnections","maxLifetimeSeconds","connectionTTL","toSeconds","application_name","applicationName","types","_err","acquireRelease","end","interruptible","timeoutOption","timeoutFail","duration","seconds","onTimeout","parsed","parse","getOrUndefined","fromPool","cancelEffects","WeakMap","has","processId","processID","ending","set","layerConfig","scopedContext","unwrap","flatMap","add","SqlClient","provide","layer","layerFromPool","transform","transformValue","dialect","placeholder","onIdentifier","withoutTransform","escape","onRecordUpdate","placeholders","valueAlias","valueColumns","returning","flat","concat","onCustom","type","kind","i0","defaultEscape","custom"],"sources":["../../src/PgClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/sql-pg",
3
- "version": "0.50.2",
3
+ "version": "0.50.3",
4
4
  "description": "A PostgreSQL toolkit for Effect",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -19,7 +19,7 @@
19
19
  },
20
20
  "peerDependencies": {
21
21
  "@effect/experimental": "^0.58.0",
22
- "@effect/platform": "^0.94.3",
22
+ "@effect/platform": "^0.94.4",
23
23
  "@effect/sql": "^0.49.0",
24
24
  "effect": "^3.19.16"
25
25
  },
package/src/PgClient.ts CHANGED
@@ -96,12 +96,17 @@ export interface PgClientConfig {
96
96
  readonly types?: Pg.CustomTypesConfig | undefined
97
97
  }
98
98
 
99
- /**
100
- * @category constructors
101
- * @since 1.0.0
102
- */
103
- export const make = (
104
- options: PgClientConfig
99
+ type ClientOptions = {
100
+ readonly spanAttributes?: Record<string, unknown> | undefined
101
+ readonly transformResultNames?: ((str: string) => string) | undefined
102
+ readonly transformQueryNames?: ((str: string) => string) | undefined
103
+ readonly transformJson?: boolean | undefined
104
+ }
105
+
106
+ const makeClient = (
107
+ pool: Pg.Pool,
108
+ config: PgClientConfig,
109
+ options: ClientOptions
105
110
  ): Effect.Effect<PgClient, SqlError, Scope.Scope | Reactivity.Reactivity> =>
106
111
  Effect.gen(function*() {
107
112
  const compiler = makeCompiler(
@@ -115,54 +120,6 @@ export const make = (
115
120
  ).array :
116
121
  undefined
117
122
 
118
- const pool = new Pg.Pool({
119
- connectionString: options.url ? Redacted.value(options.url) : undefined,
120
- user: options.username,
121
- host: options.host,
122
- database: options.database,
123
- password: options.password ? Redacted.value(options.password) : undefined,
124
- ssl: options.ssl,
125
- port: options.port,
126
- stream: options.stream!,
127
- connectionTimeoutMillis: options.connectTimeout
128
- ? Duration.toMillis(options.connectTimeout)
129
- : undefined,
130
- idleTimeoutMillis: options.idleTimeout
131
- ? Duration.toMillis(options.idleTimeout)
132
- : undefined,
133
- max: options.maxConnections,
134
- min: options.minConnections,
135
- maxLifetimeSeconds: options.connectionTTL
136
- ? Duration.toSeconds(options.connectionTTL)
137
- : undefined,
138
- application_name: options.applicationName ?? "@effect/sql-pg",
139
- types: options.types
140
- })
141
-
142
- pool.on("error", (_err) => {
143
- })
144
-
145
- yield* Effect.acquireRelease(
146
- Effect.tryPromise({
147
- try: () => pool.query("SELECT 1"),
148
- catch: (cause) => new SqlError({ cause, message: "PgClient: Failed to connect" })
149
- }),
150
- () =>
151
- Effect.promise(() => pool.end()).pipe(
152
- Effect.interruptible,
153
- Effect.timeoutOption(1000)
154
- )
155
- ).pipe(
156
- Effect.timeoutFail({
157
- duration: options.connectTimeout ?? Duration.seconds(5),
158
- onTimeout: () =>
159
- new SqlError({
160
- cause: new Error("Connection timed out"),
161
- message: "PgClient: Connection timed out"
162
- })
163
- })
164
- )
165
-
166
123
  class ConnectionImpl implements Connection {
167
124
  readonly pg: Pg.PoolClient | undefined
168
125
  constructor(pg?: Pg.PoolClient) {
@@ -358,23 +315,6 @@ export const make = (
358
315
  acquire: reserveRaw
359
316
  })
360
317
 
361
- let config = options
362
- if (pool.options.connectionString) {
363
- try {
364
- const parsed = PgConnString.parse(pool.options.connectionString)
365
- config = {
366
- ...config,
367
- host: config.host ?? parsed.host ?? undefined,
368
- port: config.port ?? (parsed.port ? Option.getOrUndefined(Number.parse(parsed.port)) : undefined),
369
- username: config.username ?? parsed.user ?? undefined,
370
- password: config.password ?? (parsed.password ? Redacted.make(parsed.password) : undefined),
371
- database: config.database ?? parsed.database ?? undefined
372
- }
373
- } catch {
374
- //
375
- }
376
- }
377
-
378
318
  return Object.assign(
379
319
  yield* Client.make({
380
320
  acquirer: Effect.succeed(new ConnectionImpl()),
@@ -383,9 +323,9 @@ export const make = (
383
323
  spanAttributes: [
384
324
  ...(options.spanAttributes ? Object.entries(options.spanAttributes) : []),
385
325
  [ATTR_DB_SYSTEM_NAME, "postgresql"],
386
- [ATTR_DB_NAMESPACE, options.database ?? options.username ?? "postgres"],
387
- [ATTR_SERVER_ADDRESS, options.host ?? "localhost"],
388
- [ATTR_SERVER_PORT, options.port ?? 5432]
326
+ [ATTR_DB_NAMESPACE, config.database ?? config.username ?? "postgres"],
327
+ [ATTR_SERVER_ADDRESS, config.host ?? "localhost"],
328
+ [ATTR_SERVER_PORT, config.port ?? 5432]
389
329
  ],
390
330
  transformRows
391
331
  }),
@@ -427,6 +367,142 @@ export const make = (
427
367
  )
428
368
  })
429
369
 
370
+ /**
371
+ * @category constructors
372
+ * @since 1.0.0
373
+ */
374
+ export const make = (
375
+ options: PgClientConfig
376
+ ): Effect.Effect<PgClient, SqlError, Scope.Scope | Reactivity.Reactivity> =>
377
+ Effect.gen(function*() {
378
+ const pool = new Pg.Pool({
379
+ connectionString: options.url ? Redacted.value(options.url) : undefined,
380
+ user: options.username,
381
+ host: options.host,
382
+ database: options.database,
383
+ password: options.password ? Redacted.value(options.password) : undefined,
384
+ ssl: options.ssl,
385
+ port: options.port,
386
+ ...(options.stream ? { stream: options.stream } : {}),
387
+ connectionTimeoutMillis: options.connectTimeout
388
+ ? Duration.toMillis(options.connectTimeout)
389
+ : undefined,
390
+ idleTimeoutMillis: options.idleTimeout
391
+ ? Duration.toMillis(options.idleTimeout)
392
+ : undefined,
393
+ max: options.maxConnections,
394
+ min: options.minConnections,
395
+ maxLifetimeSeconds: options.connectionTTL
396
+ ? Duration.toSeconds(options.connectionTTL)
397
+ : undefined,
398
+ application_name: options.applicationName ?? "@effect/sql-pg",
399
+ types: options.types
400
+ })
401
+
402
+ pool.on("error", (_err) => {
403
+ })
404
+
405
+ yield* Effect.acquireRelease(
406
+ Effect.tryPromise({
407
+ try: () => pool.query("SELECT 1"),
408
+ catch: (cause) => new SqlError({ cause, message: "PgClient: Failed to connect" })
409
+ }),
410
+ () =>
411
+ Effect.promise(() => pool.end()).pipe(
412
+ Effect.interruptible,
413
+ Effect.timeoutOption(1000)
414
+ )
415
+ ).pipe(
416
+ Effect.timeoutFail({
417
+ duration: options.connectTimeout ?? Duration.seconds(5),
418
+ onTimeout: () =>
419
+ new SqlError({
420
+ cause: new Error("Connection timed out"),
421
+ message: "PgClient: Connection timed out"
422
+ })
423
+ })
424
+ )
425
+
426
+ let config = options
427
+ if (pool.options.connectionString) {
428
+ try {
429
+ const parsed = PgConnString.parse(pool.options.connectionString)
430
+ config = {
431
+ ...config,
432
+ host: config.host ?? parsed.host ?? undefined,
433
+ port: config.port ?? (parsed.port ? Option.getOrUndefined(Number.parse(parsed.port)) : undefined),
434
+ username: config.username ?? parsed.user ?? undefined,
435
+ password: config.password ?? (parsed.password ? Redacted.make(parsed.password) : undefined),
436
+ database: config.database ?? parsed.database ?? undefined
437
+ }
438
+ } catch {
439
+ //
440
+ }
441
+ }
442
+
443
+ return yield* makeClient(pool, config, options)
444
+ })
445
+
446
+ /**
447
+ * @category constructors
448
+ * @since 1.0.0
449
+ */
450
+ export interface PgClientFromPoolOptions {
451
+ readonly acquire: Effect.Effect<Pg.Pool, SqlError, Scope.Scope>
452
+
453
+ readonly applicationName?: string | undefined
454
+ readonly spanAttributes?: Record<string, unknown> | undefined
455
+
456
+ readonly transformResultNames?: ((str: string) => string) | undefined
457
+ readonly transformQueryNames?: ((str: string) => string) | undefined
458
+ readonly transformJson?: boolean | undefined
459
+ readonly types?: Pg.CustomTypesConfig | undefined
460
+ }
461
+
462
+ /**
463
+ * Create a `PgClient` from an existing `pg` pool.
464
+ *
465
+ * You control the pool lifecycle via `acquire` (typically `Effect.acquireRelease`).
466
+ *
467
+ * @category constructors
468
+ * @since 1.0.0
469
+ */
470
+ export const fromPool = Effect.fnUntraced(function*(
471
+ options: PgClientFromPoolOptions
472
+ ): Effect.fn.Return<PgClient, SqlError, Scope.Scope | Reactivity.Reactivity> {
473
+ const pool = yield* options.acquire
474
+
475
+ let config: PgClientConfig = {
476
+ url: pool.options.connectionString ? Redacted.make(pool.options.connectionString) : undefined,
477
+ host: pool.options.host,
478
+ port: pool.options.port,
479
+ database: pool.options.database,
480
+ username: pool.options.user,
481
+ password: typeof pool.options.password === "string" ? Redacted.make(pool.options.password) : undefined,
482
+ ssl: pool.options.ssl,
483
+ applicationName: (pool.options as any).application_name,
484
+ types: pool.options.types
485
+ }
486
+
487
+ if (pool.options.connectionString) {
488
+ try {
489
+ const parsed = PgConnString.parse(pool.options.connectionString)
490
+ config = {
491
+ ...config,
492
+ host: config.host ?? parsed.host ?? undefined,
493
+ port: config.port ?? (parsed.port ? Option.getOrUndefined(Number.parse(parsed.port)) : undefined),
494
+ username: config.username ?? parsed.user ?? undefined,
495
+ password: config.password ?? (parsed.password ? Redacted.make(parsed.password) : undefined),
496
+ database: config.database ?? parsed.database ?? undefined
497
+ }
498
+ } catch {
499
+ //
500
+ }
501
+ }
502
+
503
+ return yield* makeClient(pool, config, options)
504
+ })
505
+
430
506
  const cancelEffects = new WeakMap<Pg.PoolClient, Effect.Effect<void> | undefined>()
431
507
  const makeCancel = (pool: Pg.Pool, client: Pg.PoolClient) => {
432
508
  if (cancelEffects.has(client)) {
@@ -481,6 +557,20 @@ export const layer = (
481
557
  ))
482
558
  ).pipe(Layer.provide(Reactivity.layer))
483
559
 
560
+ /**
561
+ * @category layers
562
+ * @since 1.0.0
563
+ */
564
+ export const layerFromPool = (
565
+ options: PgClientFromPoolOptions
566
+ ): Layer.Layer<PgClient | Client.SqlClient, SqlError> =>
567
+ Layer.scopedContext(
568
+ Effect.map(fromPool(options), (client) =>
569
+ Context.make(PgClient, client).pipe(
570
+ Context.add(Client.SqlClient, client)
571
+ ))
572
+ ).pipe(Layer.provide(Reactivity.layer))
573
+
484
574
  /**
485
575
  * @category constructor
486
576
  * @since 1.0.0