@effect/sql-pg 0.49.2 → 0.49.4

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.
@@ -17,12 +17,14 @@ var Effect = _interopRequireWildcard(require("effect/Effect"));
17
17
  var Fiber = _interopRequireWildcard(require("effect/Fiber"));
18
18
  var Function = _interopRequireWildcard(require("effect/Function"));
19
19
  var Layer = _interopRequireWildcard(require("effect/Layer"));
20
+ var Number = _interopRequireWildcard(require("effect/Number"));
20
21
  var Option = _interopRequireWildcard(require("effect/Option"));
21
22
  var RcRef = _interopRequireWildcard(require("effect/RcRef"));
22
23
  var Redacted = _interopRequireWildcard(require("effect/Redacted"));
23
24
  var Scope = _interopRequireWildcard(require("effect/Scope"));
24
25
  var Stream = _interopRequireWildcard(require("effect/Stream"));
25
26
  var Pg = _interopRequireWildcard(require("pg"));
27
+ var PgConnString = _interopRequireWildcard(require("pg-connection-string"));
26
28
  var _pgCursor = _interopRequireDefault(require("pg-cursor"));
27
29
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
28
30
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
@@ -96,31 +98,45 @@ const make = options => Effect.gen(function* () {
96
98
  return Effect.async(resume => {
97
99
  let done = false;
98
100
  let cancel = undefined;
101
+ let client = undefined;
99
102
  let release = Function.constVoid;
100
- pool.connect((err, client, release_) => {
103
+ function onError(cause) {
104
+ release(cause);
105
+ resume(Effect.fail(new _SqlError.SqlError({
106
+ cause,
107
+ message: "Connection error"
108
+ })));
109
+ }
110
+ function cleanup(cause) {
111
+ if (!done) release(cause);
112
+ done = true;
113
+ client?.off("error", onError);
114
+ }
115
+ pool.connect((cause, client_, release_) => {
101
116
  release = release_;
102
- if (err) {
103
- release();
117
+ if (cause) {
104
118
  return resume(Effect.fail(new _SqlError.SqlError({
105
- cause: err,
119
+ cause,
106
120
  message: "Failed to acquire connection"
107
121
  })));
108
122
  } else if (done) {
109
- return release();
123
+ release();
124
+ return;
110
125
  }
126
+ client = client_;
127
+ client.once("error", onError);
111
128
  cancel = makeCancel(pool, client);
112
129
  f(client, eff => {
113
- release();
130
+ cleanup();
114
131
  resume(eff);
115
132
  });
116
133
  });
117
134
  return Effect.suspend(() => {
118
- done = true;
119
135
  if (!cancel) {
120
- release();
136
+ cleanup();
121
137
  return Effect.void;
122
138
  }
123
- return Effect.ensuring(cancel, Effect.sync(release));
139
+ return Effect.ensuring(cancel, Effect.sync(cleanup));
124
140
  });
125
141
  });
126
142
  }
@@ -206,6 +222,7 @@ const make = options => Effect.gen(function* () {
206
222
  const reserveRaw = Effect.async(resume => {
207
223
  const fiber = Option.getOrThrow(Fiber.getCurrentFiber());
208
224
  const scope = Context.unsafeGet(fiber.currentContext, Scope.Scope);
225
+ let cause = undefined;
209
226
  pool.connect((err, client, release) => {
210
227
  if (err) {
211
228
  resume(Effect.fail(new _SqlError.SqlError({
@@ -213,14 +230,37 @@ const make = options => Effect.gen(function* () {
213
230
  message: "Failed to acquire connection for transaction"
214
231
  })));
215
232
  } else {
216
- resume(Effect.as(Scope.addFinalizer(scope, Effect.sync(release)), client));
233
+ resume(Effect.as(Scope.addFinalizer(scope, Effect.sync(() => {
234
+ client.off("error", onError);
235
+ release(cause);
236
+ })), client));
217
237
  }
238
+ function onError(cause_) {
239
+ cause = cause_;
240
+ }
241
+ client.on("error", onError);
218
242
  });
219
243
  });
220
244
  const reserve = Effect.map(reserveRaw, client => new ConnectionImpl(client));
221
245
  const listenClient = yield* RcRef.make({
222
246
  acquire: reserveRaw
223
247
  });
248
+ let config = options;
249
+ if (pool.options.connectionString) {
250
+ try {
251
+ const parsed = PgConnString.parse(pool.options.connectionString);
252
+ config = {
253
+ ...config,
254
+ host: config.host ?? parsed.host ?? undefined,
255
+ port: config.port ?? (parsed.port ? Option.getOrUndefined(Number.parse(parsed.port)) : undefined),
256
+ username: config.username ?? parsed.user ?? undefined,
257
+ password: config.password ?? (parsed.password ? Redacted.make(parsed.password) : undefined),
258
+ database: config.database ?? parsed.database ?? undefined
259
+ };
260
+ } catch {
261
+ //
262
+ }
263
+ }
224
264
  return Object.assign(yield* Client.make({
225
265
  acquirer: Effect.succeed(new ConnectionImpl()),
226
266
  transactionAcquirer: reserve,
@@ -229,14 +269,7 @@ const make = options => Effect.gen(function* () {
229
269
  transformRows
230
270
  }), {
231
271
  [TypeId]: TypeId,
232
- config: {
233
- ...options,
234
- host: pool.options.host,
235
- port: pool.options.port,
236
- username: pool.options.user,
237
- password: typeof pool.options.password === "string" ? Redacted.make(pool.options.password) : undefined,
238
- database: pool.options.database
239
- },
272
+ config,
240
273
  json: _ => PgJson(_),
241
274
  listen: channel => Stream.asyncPush(Effect.fnUntraced(function* (emit) {
242
275
  const client = yield* RcRef.get(listenClient);
@@ -1 +1 @@
1
- {"version":3,"file":"PgClient.js","names":["Reactivity","_interopRequireWildcard","require","Client","_SqlError","Statement","Arr","Chunk","Config","Context","Duration","Effect","Fiber","Function","Layer","Option","RcRef","Redacted","Scope","Stream","Pg","_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","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","release","constVoid","connect","err","client","release_","fail","eff","suspend","void","ensuring","sync","run","params","result","succeed","Array","isArray","map","rows","execute","sql","executeRaw","executeWithoutTransform","executeValues","text","rowMode","values","executeUnprepared","executeStream","self","cursor","Cursor","close","pull","read","some","isNonEmptyArray","unsafeFromArray","none","repeatEffectChunkOption","unwrapScoped","reserveRaw","fiber","getOrThrow","getCurrentFiber","scope","unsafeGet","currentContext","as","addFinalizer","reserve","listenClient","acquire","assign","acquirer","transactionAcquirer","spanAttributes","entries","config","json","_","PgJson","listen","channel","asyncPush","fnUntraced","emit","onNotification","msg","payload","single","off","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","Function","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","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","release","constVoid","onError","fail","cleanup","off","connect","client_","release_","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","cursor","Cursor","close","pull","read","some","isNonEmptyArray","unsafeFromArray","none","repeatEffectChunkOption","unwrapScoped","reserveRaw","fiber","getOrThrow","getCurrentFiber","scope","unsafeGet","currentContext","as","addFinalizer","cause_","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 +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":"AAAA;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iCAAiC,CAAA;AAC7D,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAA;AAE/C,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAA;AAGlD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,WAAW,MAAM,oBAAoB,CAAA;AACtD,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAC3C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAIrC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAC3C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AACjD,OAAO,KAAK,EAAE,MAAM,IAAI,CAAA;AASxB;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,MAAmC,CAAA;AAExD;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,0BAA0B,CAAA;AAE/C;;;GAGG;AACH,MAAM,WAAW,QAAS,SAAQ,MAAM,CAAC,SAAS;IAChD,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAA;IAC/B,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,QAAQ,CAAA;IACvC,QAAQ,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACrE,QAAQ,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;CACrF;AAED;;;GAGG;AACH,eAAO,MAAM,QAAQ,iCAA0D,CAAA;AAE/E;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAA;IAE5C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAClC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAClC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAClC,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,GAAG,iBAAiB,GAAG,SAAS,CAAA;IACtD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAA;IAEjD,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,aAAa,GAAG,SAAS,CAAA;IACzD,QAAQ,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC,aAAa,GAAG,SAAS,CAAA;IAE5D,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5C,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5C,QAAQ,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC,aAAa,GAAG,SAAS,CAAA;IAE3D,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7C,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;IACpE,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC5C,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,iBAAiB,GAAG,SAAS,CAAA;CAClD;AAED;;;GAGG;AACH,eAAO,MAAM,IAAI,GACf,SAAS,cAAc,KACtB,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC,UAAU,CAkTpE,CAAA;AAwBJ;;;GAGG;AACH,eAAO,MAAM,WAAW,GACtB,QAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,KACzC,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,WAAW,GAAG,QAAQ,CAUrC,CAAA;AAEzC;;;GAGG;AACH,eAAO,MAAM,KAAK,GAChB,QAAQ,cAAc,KACrB,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,SAAS,EAAE,QAAQ,CAMX,CAAA;AAEzC;;;GAGG;AACH,eAAO,MAAM,YAAY,GACvB,YAAY,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,EACjC,uBAAoB,KACnB,SAAS,CAAC,QAsCZ,CAAA;AAID;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAA;AAE7B;;;GAGG;AACH,UAAU,MAAO,SAAQ,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC;CAAG;AACrD;;;GAGG;AACH,QAAA,MAAM,MAAM,+CAAqC,CAAA"}
@@ -14,12 +14,14 @@ import * as Effect from "effect/Effect";
14
14
  import * as Fiber from "effect/Fiber";
15
15
  import * as Function from "effect/Function";
16
16
  import * as Layer from "effect/Layer";
17
+ import * as Number from "effect/Number";
17
18
  import * as Option from "effect/Option";
18
19
  import * as RcRef from "effect/RcRef";
19
20
  import * as Redacted from "effect/Redacted";
20
21
  import * as Scope from "effect/Scope";
21
22
  import * as Stream from "effect/Stream";
22
23
  import * as Pg from "pg";
24
+ import * as PgConnString from "pg-connection-string";
23
25
  import Cursor from "pg-cursor";
24
26
  const ATTR_DB_SYSTEM_NAME = "db.system.name";
25
27
  const ATTR_DB_NAMESPACE = "db.namespace";
@@ -87,31 +89,45 @@ export const make = options => Effect.gen(function* () {
87
89
  return Effect.async(resume => {
88
90
  let done = false;
89
91
  let cancel = undefined;
92
+ let client = undefined;
90
93
  let release = Function.constVoid;
91
- pool.connect((err, client, release_) => {
94
+ function onError(cause) {
95
+ release(cause);
96
+ resume(Effect.fail(new SqlError({
97
+ cause,
98
+ message: "Connection error"
99
+ })));
100
+ }
101
+ function cleanup(cause) {
102
+ if (!done) release(cause);
103
+ done = true;
104
+ client?.off("error", onError);
105
+ }
106
+ pool.connect((cause, client_, release_) => {
92
107
  release = release_;
93
- if (err) {
94
- release();
108
+ if (cause) {
95
109
  return resume(Effect.fail(new SqlError({
96
- cause: err,
110
+ cause,
97
111
  message: "Failed to acquire connection"
98
112
  })));
99
113
  } else if (done) {
100
- return release();
114
+ release();
115
+ return;
101
116
  }
117
+ client = client_;
118
+ client.once("error", onError);
102
119
  cancel = makeCancel(pool, client);
103
120
  f(client, eff => {
104
- release();
121
+ cleanup();
105
122
  resume(eff);
106
123
  });
107
124
  });
108
125
  return Effect.suspend(() => {
109
- done = true;
110
126
  if (!cancel) {
111
- release();
127
+ cleanup();
112
128
  return Effect.void;
113
129
  }
114
- return Effect.ensuring(cancel, Effect.sync(release));
130
+ return Effect.ensuring(cancel, Effect.sync(cleanup));
115
131
  });
116
132
  });
117
133
  }
@@ -197,6 +213,7 @@ export const make = options => Effect.gen(function* () {
197
213
  const reserveRaw = Effect.async(resume => {
198
214
  const fiber = Option.getOrThrow(Fiber.getCurrentFiber());
199
215
  const scope = Context.unsafeGet(fiber.currentContext, Scope.Scope);
216
+ let cause = undefined;
200
217
  pool.connect((err, client, release) => {
201
218
  if (err) {
202
219
  resume(Effect.fail(new SqlError({
@@ -204,14 +221,37 @@ export const make = options => Effect.gen(function* () {
204
221
  message: "Failed to acquire connection for transaction"
205
222
  })));
206
223
  } else {
207
- resume(Effect.as(Scope.addFinalizer(scope, Effect.sync(release)), client));
224
+ resume(Effect.as(Scope.addFinalizer(scope, Effect.sync(() => {
225
+ client.off("error", onError);
226
+ release(cause);
227
+ })), client));
208
228
  }
229
+ function onError(cause_) {
230
+ cause = cause_;
231
+ }
232
+ client.on("error", onError);
209
233
  });
210
234
  });
211
235
  const reserve = Effect.map(reserveRaw, client => new ConnectionImpl(client));
212
236
  const listenClient = yield* RcRef.make({
213
237
  acquire: reserveRaw
214
238
  });
239
+ let config = options;
240
+ if (pool.options.connectionString) {
241
+ try {
242
+ const parsed = PgConnString.parse(pool.options.connectionString);
243
+ config = {
244
+ ...config,
245
+ host: config.host ?? parsed.host ?? undefined,
246
+ port: config.port ?? (parsed.port ? Option.getOrUndefined(Number.parse(parsed.port)) : undefined),
247
+ username: config.username ?? parsed.user ?? undefined,
248
+ password: config.password ?? (parsed.password ? Redacted.make(parsed.password) : undefined),
249
+ database: config.database ?? parsed.database ?? undefined
250
+ };
251
+ } catch {
252
+ //
253
+ }
254
+ }
215
255
  return Object.assign(yield* Client.make({
216
256
  acquirer: Effect.succeed(new ConnectionImpl()),
217
257
  transactionAcquirer: reserve,
@@ -220,14 +260,7 @@ export const make = options => Effect.gen(function* () {
220
260
  transformRows
221
261
  }), {
222
262
  [TypeId]: TypeId,
223
- config: {
224
- ...options,
225
- host: pool.options.host,
226
- port: pool.options.port,
227
- username: pool.options.user,
228
- password: typeof pool.options.password === "string" ? Redacted.make(pool.options.password) : undefined,
229
- database: pool.options.database
230
- },
263
+ config,
231
264
  json: _ => PgJson(_),
232
265
  listen: channel => Stream.asyncPush(Effect.fnUntraced(function* (emit) {
233
266
  const client = yield* RcRef.get(listenClient);
@@ -1 +1 @@
1
- {"version":3,"file":"PgClient.js","names":["Reactivity","Client","SqlError","Statement","Arr","Chunk","Config","Context","Duration","Effect","Fiber","Function","Layer","Option","RcRef","Redacted","Scope","Stream","Pg","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","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","release","constVoid","connect","err","client","release_","fail","eff","suspend","void","ensuring","sync","run","params","result","succeed","Array","isArray","map","r","rows","execute","sql","executeRaw","executeWithoutTransform","executeValues","text","rowMode","values","executeUnprepared","executeStream","self","cursor","close","pull","read","some","isNonEmptyArray","unsafeFromArray","none","repeatEffectChunkOption","unwrapScoped","reserveRaw","fiber","getOrThrow","getCurrentFiber","scope","unsafeGet","currentContext","as","addFinalizer","reserve","listenClient","acquire","Object","assign","acquirer","transactionAcquirer","spanAttributes","entries","config","json","_","PgJson","listen","channel","asyncPush","fnUntraced","emit","get","onNotification","msg","payload","single","off","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","Function","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","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","release","constVoid","onError","fail","cleanup","off","connect","client_","release_","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","cursor","close","pull","read","some","isNonEmptyArray","unsafeFromArray","none","repeatEffectChunkOption","unwrapScoped","reserveRaw","fiber","getOrThrow","getCurrentFiber","scope","unsafeGet","currentContext","as","addFinalizer","cause_","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":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/sql-pg",
3
- "version": "0.49.2",
3
+ "version": "0.49.4",
4
4
  "description": "A PostgreSQL toolkit for Effect",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -12,6 +12,7 @@
12
12
  "homepage": "https://effect.website",
13
13
  "dependencies": {
14
14
  "pg": "^8.16.3",
15
+ "pg-connection-string": "2.9.1",
15
16
  "pg-cursor": "^2.15.3",
16
17
  "pg-pool": "^3.10.1",
17
18
  "pg-types": "^4.1.0"
@@ -20,7 +21,7 @@
20
21
  "@effect/experimental": "^0.57.0",
21
22
  "@effect/platform": "^0.93.0",
22
23
  "@effect/sql": "^0.48.0",
23
- "effect": "^3.19.2"
24
+ "effect": "^3.19.3"
24
25
  },
25
26
  "publishConfig": {
26
27
  "provenance": true
package/src/PgClient.ts CHANGED
@@ -17,6 +17,7 @@ import * as Effect from "effect/Effect"
17
17
  import * as Fiber from "effect/Fiber"
18
18
  import * as Function from "effect/Function"
19
19
  import * as Layer from "effect/Layer"
20
+ import * as Number from "effect/Number"
20
21
  import * as Option from "effect/Option"
21
22
  import * as RcRef from "effect/RcRef"
22
23
  import * as Redacted from "effect/Redacted"
@@ -24,6 +25,7 @@ import * as Scope from "effect/Scope"
24
25
  import * as Stream from "effect/Stream"
25
26
  import type { ConnectionOptions } from "node:tls"
26
27
  import * as Pg from "pg"
28
+ import * as PgConnString from "pg-connection-string"
27
29
  import Cursor from "pg-cursor"
28
30
 
29
31
  const ATTR_DB_SYSTEM_NAME = "db.system.name"
@@ -174,28 +176,39 @@ export const make = (
174
176
  return Effect.async<A, SqlError>((resume) => {
175
177
  let done = false
176
178
  let cancel: Effect.Effect<void> | undefined = undefined
177
- let release = Function.constVoid
178
- pool.connect((err, client, release_) => {
179
+ let client: Pg.PoolClient | undefined = undefined
180
+ let release: (err?: Error) => void = Function.constVoid
181
+ function onError(cause: Error) {
182
+ release(cause)
183
+ resume(Effect.fail(new SqlError({ cause, message: "Connection error" })))
184
+ }
185
+ function cleanup(cause?: Error) {
186
+ if (!done) release(cause)
187
+ done = true
188
+ client?.off("error", onError)
189
+ }
190
+ pool.connect((cause, client_, release_) => {
179
191
  release = release_
180
- if (err) {
181
- release()
182
- return resume(Effect.fail(new SqlError({ cause: err, message: "Failed to acquire connection" })))
192
+ if (cause) {
193
+ return resume(Effect.fail(new SqlError({ cause, message: "Failed to acquire connection" })))
183
194
  } else if (done) {
184
- return release()
185
- }
186
- cancel = makeCancel(pool, client!)
187
- f(client!, (eff) => {
188
195
  release()
196
+ return
197
+ }
198
+ client = client_!
199
+ client.once("error", onError)
200
+ cancel = makeCancel(pool, client)
201
+ f(client, (eff) => {
202
+ cleanup()
189
203
  resume(eff)
190
204
  })
191
205
  })
192
206
  return Effect.suspend(() => {
193
- done = true
194
207
  if (!cancel) {
195
- release()
208
+ cleanup()
196
209
  return Effect.void
197
210
  }
198
- return Effect.ensuring(cancel, Effect.sync(release))
211
+ return Effect.ensuring(cancel, Effect.sync(cleanup))
199
212
  })
200
213
  })
201
214
  }
@@ -298,12 +311,26 @@ export const make = (
298
311
  const reserveRaw = Effect.async<Pg.PoolClient, SqlError, Scope.Scope>((resume) => {
299
312
  const fiber = Option.getOrThrow(Fiber.getCurrentFiber())
300
313
  const scope = Context.unsafeGet(fiber.currentContext, Scope.Scope)
314
+ let cause: Error | undefined = undefined
301
315
  pool.connect((err, client, release) => {
302
316
  if (err) {
303
317
  resume(Effect.fail(new SqlError({ cause: err, message: "Failed to acquire connection for transaction" })))
304
318
  } else {
305
- resume(Effect.as(Scope.addFinalizer(scope, Effect.sync(release)), client!))
319
+ resume(Effect.as(
320
+ Scope.addFinalizer(
321
+ scope,
322
+ Effect.sync(() => {
323
+ client!.off("error", onError)
324
+ release(cause)
325
+ })
326
+ ),
327
+ client!
328
+ ))
329
+ }
330
+ function onError(cause_: Error) {
331
+ cause = cause_
306
332
  }
333
+ client!.on("error", onError)
307
334
  })
308
335
  })
309
336
  const reserve = Effect.map(reserveRaw, (client) => new ConnectionImpl(client))
@@ -312,6 +339,23 @@ export const make = (
312
339
  acquire: reserveRaw
313
340
  })
314
341
 
342
+ let config = options
343
+ if (pool.options.connectionString) {
344
+ try {
345
+ const parsed = PgConnString.parse(pool.options.connectionString)
346
+ config = {
347
+ ...config,
348
+ host: config.host ?? parsed.host ?? undefined,
349
+ port: config.port ?? (parsed.port ? Option.getOrUndefined(Number.parse(parsed.port)) : undefined),
350
+ username: config.username ?? parsed.user ?? undefined,
351
+ password: config.password ?? (parsed.password ? Redacted.make(parsed.password) : undefined),
352
+ database: config.database ?? parsed.database ?? undefined
353
+ }
354
+ } catch {
355
+ //
356
+ }
357
+ }
358
+
315
359
  return Object.assign(
316
360
  yield* Client.make({
317
361
  acquirer: Effect.succeed(new ConnectionImpl()),
@@ -328,14 +372,7 @@ export const make = (
328
372
  }),
329
373
  {
330
374
  [TypeId]: TypeId as TypeId,
331
- config: {
332
- ...options,
333
- host: pool.options.host,
334
- port: pool.options.port,
335
- username: pool.options.user,
336
- password: typeof pool.options.password === "string" ? Redacted.make(pool.options.password) : undefined,
337
- database: pool.options.database
338
- },
375
+ config,
339
376
  json: (_: unknown) => PgJson(_),
340
377
  listen: (channel: string) =>
341
378
  Stream.asyncPush<string, SqlError>(Effect.fnUntraced(function*(emit) {