@owlmeans/postgres-resource 0.1.18-rc.40 → 0.1.18-rc.41

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/README.md CHANGED
@@ -13,7 +13,7 @@ SQL. Other stores fit other shapes:
13
13
  ## Installation
14
14
 
15
15
  ```bash
16
- bun add @owlmeans/postgres-resource@^0.1.18-rc.40 @owlmeans/postgres@^0.1.18-rc.42 pg
16
+ bun add @owlmeans/postgres-resource@^0.1.18-rc.41 @owlmeans/postgres@^0.1.18-rc.43 pg
17
17
  ```
18
18
 
19
19
  `pg` and `ajv` are peer dependencies of this package. `@owlmeans/postgres` provides the connection
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "schemaVersion": 2,
3
3
  "package": "@owlmeans/postgres-resource",
4
- "version": "0.1.18-rc.40",
5
- "generatedAt": "2026-10-03T11:19:50.786Z",
4
+ "version": "0.1.18-rc.41",
5
+ "generatedAt": "2026-10-03T15:33:53.022Z",
6
6
  "canonicalRepo": "https://github.com/owlmeans/common",
7
7
  "entries": [
8
8
  {
@@ -8,7 +8,7 @@ user-invocable: false
8
8
  # @owlmeans/postgres-resource
9
9
 
10
10
  **Layer:** Infra
11
- **Install:** `"@owlmeans/postgres-resource": "^0.1.18-rc.40"` in `dependencies` (peers `pg`, `ajv`)
11
+ **Install:** `"@owlmeans/postgres-resource": "^0.1.18-rc.41"` in `dependencies` (peers `pg`, `ajv`)
12
12
 
13
13
  The Postgres counterpart of [[mongo-resource]]. The difference that governs everything else: a
14
14
  Mongo collection has no structure, a Postgres table does — so **the resource layer owns the DDL**
package/build/errors.d.ts CHANGED
@@ -65,6 +65,8 @@ export declare const describePgError: (error: unknown) => string;
65
65
  * Translate a raw `pg` driver error into the framework's error vocabulary, so a driver
66
66
  * type never escapes the package. Errors that already are `ResilientError`s pass through
67
67
  * untouched — the reconciler and the migration runner raise their own.
68
+ * A migration may supply its resolved SQL; placeholders stay intact and parameter values
69
+ * are never added. The statement travels in the message so error marshalling preserves it.
68
70
  */
69
- export declare const pgErrorToResourceError: (error: unknown) => Error;
71
+ export declare const pgErrorToResourceError: (error: unknown, query?: string) => Error;
70
72
  //# sourceMappingURL=errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AACA,OAAO,EAC0B,aAAa,EAC7C,MAAM,oBAAoB,CAAA;AAI3B,qBAAa,aAAc,SAAQ,aAAa;IAC9C,OAAuB,QAAQ,SAA2C;IAE1E,YAAY,OAAO,GAAE,MAAgB,EAGpC;CACF;AAED,oFAAoF;AACpF,qBAAa,iBAAkB,SAAQ,aAAa;IAClD,OAAuB,QAAQ,SAAuC;IAEtE,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF;AAED;;;;GAIG;AACH,qBAAa,oBAAqB,SAAQ,iBAAiB;IACzD,OAAuB,QAAQ,SAA8C;IAE7E,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF;AAED,qBAAa,uBAAwB,SAAQ,aAAa;IACxD,OAAuB,QAAQ,SAA6C;IAE5E,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF;AAED,qBAAa,uBAAwB,SAAQ,uBAAuB;IAClE,OAAuB,QAAQ,SAAkD;IAEjF,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF;AAED,qBAAa,kBAAmB,SAAQ,uBAAuB;IAC7D,OAAuB,QAAQ,SAA6C;IAE5E,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF;AAED,sFAAsF;AACtF,qBAAa,qBAAsB,SAAQ,aAAa;IACtD,OAAuB,QAAQ,SAA2C;IAE1E,SAAgB,SAAS,EAAE,OAAO,CAAO;IAEzC,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF;AAED,oEAAoE;AACpE,qBAAa,wBAAyB,SAAQ,aAAa;IACzD,OAAuB,QAAQ,SAA8C;IAE7E,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF;AAED,qBAAa,uBAAwB,SAAQ,aAAa;IACxD,OAAuB,QAAQ,SAA6C;IAE5E,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF;AAED,6CAA6C;AAC7C,qBAAa,sBAAuB,SAAQ,aAAa;IACvD,OAAuB,QAAQ,SAA4C;IAE3E,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF;AA0CD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,eAAe,UAAW,OAAO,KAAG,MAOhD,CAAA;AAeD;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,UAAW,OAAO,KAAG,KA4CvD,CAAA"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AACA,OAAO,EAC0B,aAAa,EAC7C,MAAM,oBAAoB,CAAA;AAI3B,qBAAa,aAAc,SAAQ,aAAa;IAC9C,OAAuB,QAAQ,SAA2C;IAE1E,YAAY,OAAO,GAAE,MAAgB,EAGpC;CACF;AAED,oFAAoF;AACpF,qBAAa,iBAAkB,SAAQ,aAAa;IAClD,OAAuB,QAAQ,SAAuC;IAEtE,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF;AAED;;;;GAIG;AACH,qBAAa,oBAAqB,SAAQ,iBAAiB;IACzD,OAAuB,QAAQ,SAA8C;IAE7E,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF;AAED,qBAAa,uBAAwB,SAAQ,aAAa;IACxD,OAAuB,QAAQ,SAA6C;IAE5E,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF;AAED,qBAAa,uBAAwB,SAAQ,uBAAuB;IAClE,OAAuB,QAAQ,SAAkD;IAEjF,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF;AAED,qBAAa,kBAAmB,SAAQ,uBAAuB;IAC7D,OAAuB,QAAQ,SAA6C;IAE5E,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF;AAED,sFAAsF;AACtF,qBAAa,qBAAsB,SAAQ,aAAa;IACtD,OAAuB,QAAQ,SAA2C;IAE1E,SAAgB,SAAS,EAAE,OAAO,CAAO;IAEzC,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF;AAED,oEAAoE;AACpE,qBAAa,wBAAyB,SAAQ,aAAa;IACzD,OAAuB,QAAQ,SAA8C;IAE7E,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF;AAED,qBAAa,uBAAwB,SAAQ,aAAa;IACxD,OAAuB,QAAQ,SAA6C;IAE5E,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF;AAED,6CAA6C;AAC7C,qBAAa,sBAAuB,SAAQ,aAAa;IACvD,OAAuB,QAAQ,SAA4C;IAE3E,YAAY,OAAO,EAAE,MAAM,EAG1B;CACF;AA0CD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,eAAe,UAAW,OAAO,KAAG,MAOhD,CAAA;AAeD;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,UAAW,OAAO,UAAU,MAAM,KAAG,KA4CvE,CAAA"}
package/build/errors.js CHANGED
@@ -146,8 +146,10 @@ const describe = (error) => {
146
146
  * Translate a raw `pg` driver error into the framework's error vocabulary, so a driver
147
147
  * type never escapes the package. Errors that already are `ResilientError`s pass through
148
148
  * untouched — the reconciler and the migration runner raise their own.
149
+ * A migration may supply its resolved SQL; placeholders stay intact and parameter values
150
+ * are never added. The statement travels in the message so error marshalling preserves it.
149
151
  */
150
- export const pgErrorToResourceError = (error) => {
152
+ export const pgErrorToResourceError = (error, query) => {
151
153
  if (error instanceof ResilientError) {
152
154
  return error;
153
155
  }
@@ -155,7 +157,7 @@ export const pgErrorToResourceError = (error) => {
155
157
  if (!isDriverError(driver)) {
156
158
  return error instanceof Error ? error : new PostgresError(`${error}`);
157
159
  }
158
- const message = describe(driver);
160
+ const message = describe(driver) + (query == null ? '' : `\nSQL: ${query}`);
159
161
  const produce = () => {
160
162
  switch (driver.code) {
161
163
  case PgErrorCode.UniqueViolation:
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/utils/migrations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnE,OAAO,KAAK,EAAE,UAAU,EAAkB,MAAM,IAAI,CAAA;AAGpD,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAGxD;;;GAGG;AACH,eAAO,MAAM,MAAM,WACT,UAAU,WAAW,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,OAAO,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,MAAM,KACrF,UA+BD,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,WACrB,UAAU,QACZ,SAAS,SACR,MAAM,WACJ,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,OAC5B,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,MAAM,KAC9B,cAAc,CAAC,UAAU,CA4E3B,CAAA"}
1
+ {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/utils/migrations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnE,OAAO,KAAK,EAAE,UAAU,EAAkB,MAAM,IAAI,CAAA;AAGpD,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAGxD;;;GAGG;AACH,eAAO,MAAM,MAAM,WACT,UAAU,WAAW,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,OAAO,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,MAAM,KACrF,UAkCD,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,WACrB,UAAU,QACZ,SAAS,SACR,MAAM,WACJ,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,OAC5B,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,MAAM,KAC9B,cAAc,CAAC,UAAU,CA4E3B,CAAA"}
@@ -7,30 +7,33 @@ import { qualify, quoteIdent } from './name.js';
7
7
  export const makeTx = (client, resolve, ref) => ({
8
8
  client,
9
9
  query: async (text, params) => {
10
+ const query = resolve(text);
10
11
  try {
11
- const result = await client.query(resolve(text), params);
12
+ const result = await client.query(query, params);
12
13
  return result.rows;
13
14
  }
14
15
  catch (error) {
15
- throw pgErrorToResourceError(error);
16
+ throw pgErrorToResourceError(error, query);
16
17
  }
17
18
  },
18
19
  queryOne: async (text, params) => {
20
+ const query = resolve(text);
19
21
  try {
20
- const result = await client.query(resolve(text), params);
22
+ const result = await client.query(query, params);
21
23
  return result.rows[0] ?? null;
22
24
  }
23
25
  catch (error) {
24
- throw pgErrorToResourceError(error);
26
+ throw pgErrorToResourceError(error, query);
25
27
  }
26
28
  },
27
29
  execute: async (text, params) => {
30
+ const query = resolve(text);
28
31
  try {
29
- const result = await client.query(resolve(text), params);
32
+ const result = await client.query(query, params);
30
33
  return result.rowCount ?? 0;
31
34
  }
32
35
  catch (error) {
33
- throw pgErrorToResourceError(error);
36
+ throw pgErrorToResourceError(error, query);
34
37
  }
35
38
  },
36
39
  ref
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../src/utils/migrations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../src/utils/migrations.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@owlmeans/postgres-resource",
3
- "version": "0.1.18-rc.40",
3
+ "version": "0.1.18-rc.41",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "scripts": {
package/src/errors.ts CHANGED
@@ -183,8 +183,10 @@ const describe = (error: PgDriverError): string => {
183
183
  * Translate a raw `pg` driver error into the framework's error vocabulary, so a driver
184
184
  * type never escapes the package. Errors that already are `ResilientError`s pass through
185
185
  * untouched — the reconciler and the migration runner raise their own.
186
+ * A migration may supply its resolved SQL; placeholders stay intact and parameter values
187
+ * are never added. The statement travels in the message so error marshalling preserves it.
186
188
  */
187
- export const pgErrorToResourceError = (error: unknown): Error => {
189
+ export const pgErrorToResourceError = (error: unknown, query?: string): Error => {
188
190
  if (error instanceof ResilientError) {
189
191
  return error
190
192
  }
@@ -193,7 +195,7 @@ export const pgErrorToResourceError = (error: unknown): Error => {
193
195
  return error instanceof Error ? error : new PostgresError(`${error}`)
194
196
  }
195
197
 
196
- const message = describe(driver)
198
+ const message = describe(driver) + (query == null ? '' : `\nSQL: ${query}`)
197
199
  const produce = (): Error => {
198
200
  switch (driver.code) {
199
201
  case PgErrorCode.UniqueViolation:
@@ -15,29 +15,32 @@ export const makeTx = (
15
15
  client,
16
16
 
17
17
  query: async <Row extends QueryResultRow = QueryResultRow>(text: string, params?: unknown[]) => {
18
+ const query = resolve(text)
18
19
  try {
19
- const result = await client.query<Row>(resolve(text), params as never[])
20
+ const result = await client.query<Row>(query, params as never[])
20
21
  return result.rows
21
22
  } catch (error) {
22
- throw pgErrorToResourceError(error)
23
+ throw pgErrorToResourceError(error, query)
23
24
  }
24
25
  },
25
26
 
26
27
  queryOne: async <Row extends QueryResultRow = QueryResultRow>(text: string, params?: unknown[]) => {
28
+ const query = resolve(text)
27
29
  try {
28
- const result = await client.query<Row>(resolve(text), params as never[])
30
+ const result = await client.query<Row>(query, params as never[])
29
31
  return result.rows[0] ?? null
30
32
  } catch (error) {
31
- throw pgErrorToResourceError(error)
33
+ throw pgErrorToResourceError(error, query)
32
34
  }
33
35
  },
34
36
 
35
37
  execute: async (text: string, params?: unknown[]) => {
38
+ const query = resolve(text)
36
39
  try {
37
- const result = await client.query(resolve(text), params as never[])
40
+ const result = await client.query(query, params as never[])
38
41
  return result.rowCount ?? 0
39
42
  } catch (error) {
40
- throw pgErrorToResourceError(error)
43
+ throw pgErrorToResourceError(error, query)
41
44
  }
42
45
  },
43
46
 
@@ -97,6 +97,17 @@ describe('@owlmeans/postgres-resource — driver error translation', () => {
97
97
  expect(pgErrorToResourceError(original)).toBe(original)
98
98
  })
99
99
 
100
+ test('preserves the executed SQL and driver cause for migration diagnostics', () => {
101
+ const original = driver({ code: '42703', message: 'column o.enquiryId does not exist' })
102
+ const query = 'UPDATE "app"."opportunity" o SET "enquiryId" = $1 WHERE o."enquiryId" IS NULL'
103
+ const failure = pgErrorToResourceError(original, query)
104
+
105
+ expect(failure).toBeInstanceOf(PostgresError)
106
+ expect(failure.message).toContain('42703')
107
+ expect(failure.message).toContain(`SQL: ${query}`)
108
+ expect(failure.cause).toBe(original)
109
+ })
110
+
100
111
  test('leaves an error that is not from the driver alone', () => {
101
112
  const plain = new Error('not postgres at all')
102
113