@owlmeans/postgres-resource 0.1.18-rc.42 → 0.1.18-rc.43

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.
Files changed (154) hide show
  1. package/README.md +13 -13
  2. package/agent-meta/manifest.json +2 -2
  3. package/agent-meta/skills/postgres-resource/SKILL.md +1 -1
  4. package/build/consts.d.ts +9 -0
  5. package/build/consts.d.ts.map +1 -1
  6. package/build/consts.js +6 -0
  7. package/build/consts.js.map +1 -1
  8. package/build/declarations/types.d.ts +12 -0
  9. package/build/declarations/types.d.ts.map +1 -0
  10. package/build/declarations/types.js +2 -0
  11. package/build/declarations/types.js.map +1 -0
  12. package/build/declarations.d.ts +5 -1
  13. package/build/declarations.d.ts.map +1 -1
  14. package/build/declarations.js +25 -15
  15. package/build/declarations.js.map +1 -1
  16. package/build/errors.d.ts +0 -20
  17. package/build/errors.d.ts.map +1 -1
  18. package/build/errors.js +1 -111
  19. package/build/errors.js.map +1 -1
  20. package/build/index.d.ts +3 -0
  21. package/build/index.d.ts.map +1 -1
  22. package/build/index.js +1 -0
  23. package/build/index.js.map +1 -1
  24. package/build/pg-error/types.d.ts +24 -0
  25. package/build/pg-error/types.d.ts.map +1 -0
  26. package/build/pg-error/types.js +2 -0
  27. package/build/pg-error/types.js.map +1 -0
  28. package/build/pg-error.d.ts +4 -0
  29. package/build/pg-error.d.ts.map +1 -0
  30. package/build/pg-error.js +100 -0
  31. package/build/pg-error.js.map +1 -0
  32. package/build/resource.d.ts.map +1 -1
  33. package/build/resource.js +15 -11
  34. package/build/resource.js.map +1 -1
  35. package/build/types.d.ts.map +1 -1
  36. package/build/utils/consts.local.d.ts +2 -0
  37. package/build/utils/consts.local.d.ts.map +1 -1
  38. package/build/utils/consts.local.js +2 -0
  39. package/build/utils/consts.local.js.map +1 -1
  40. package/build/utils/criteria/types.d.ts +31 -0
  41. package/build/utils/criteria/types.d.ts.map +1 -0
  42. package/build/utils/criteria/types.js +2 -0
  43. package/build/utils/criteria/types.js.map +1 -0
  44. package/build/utils/criteria.d.ts +3 -27
  45. package/build/utils/criteria.d.ts.map +1 -1
  46. package/build/utils/criteria.js +86 -104
  47. package/build/utils/criteria.js.map +1 -1
  48. package/build/utils/diff/types.d.ts +40 -0
  49. package/build/utils/diff/types.d.ts.map +1 -0
  50. package/build/utils/diff/types.js +2 -0
  51. package/build/utils/diff/types.js.map +1 -0
  52. package/build/utils/diff.d.ts +5 -35
  53. package/build/utils/diff.d.ts.map +1 -1
  54. package/build/utils/diff.js +320 -344
  55. package/build/utils/diff.js.map +1 -1
  56. package/build/utils/index.d.ts +9 -0
  57. package/build/utils/index.d.ts.map +1 -1
  58. package/build/utils/index.js.map +1 -1
  59. package/build/utils/introspect/types.d.ts +9 -0
  60. package/build/utils/introspect/types.d.ts.map +1 -0
  61. package/build/utils/introspect/types.js +2 -0
  62. package/build/utils/introspect/types.js.map +1 -0
  63. package/build/utils/introspect.d.ts +3 -3
  64. package/build/utils/introspect.d.ts.map +1 -1
  65. package/build/utils/introspect.js +41 -38
  66. package/build/utils/introspect.js.map +1 -1
  67. package/build/utils/life-cycle/types.d.ts +37 -0
  68. package/build/utils/life-cycle/types.d.ts.map +1 -0
  69. package/build/utils/life-cycle/types.js +2 -0
  70. package/build/utils/life-cycle/types.js.map +1 -0
  71. package/build/utils/life-cycle.d.ts +3 -33
  72. package/build/utils/life-cycle.d.ts.map +1 -1
  73. package/build/utils/life-cycle.js +88 -108
  74. package/build/utils/life-cycle.js.map +1 -1
  75. package/build/utils/marshal/types.d.ts +39 -0
  76. package/build/utils/marshal/types.d.ts.map +1 -0
  77. package/build/utils/marshal/types.js +2 -0
  78. package/build/utils/marshal/types.js.map +1 -0
  79. package/build/utils/marshal.d.ts +4 -32
  80. package/build/utils/marshal.d.ts.map +1 -1
  81. package/build/utils/marshal.js +121 -144
  82. package/build/utils/marshal.js.map +1 -1
  83. package/build/utils/migrations.d.ts.map +1 -1
  84. package/build/utils/migrations.js +41 -36
  85. package/build/utils/migrations.js.map +1 -1
  86. package/build/utils/name/types.d.ts +43 -0
  87. package/build/utils/name/types.d.ts.map +1 -0
  88. package/build/utils/name/types.js +2 -0
  89. package/build/utils/name/types.js.map +1 -0
  90. package/build/utils/name.d.ts +6 -35
  91. package/build/utils/name.d.ts.map +1 -1
  92. package/build/utils/name.js +38 -57
  93. package/build/utils/name.js.map +1 -1
  94. package/build/utils/schema/types.d.ts +22 -0
  95. package/build/utils/schema/types.d.ts.map +1 -0
  96. package/build/utils/schema/types.js +2 -0
  97. package/build/utils/schema/types.js.map +1 -0
  98. package/build/utils/schema.d.ts +4 -24
  99. package/build/utils/schema.d.ts.map +1 -1
  100. package/build/utils/schema.js +339 -352
  101. package/build/utils/schema.js.map +1 -1
  102. package/build/utils/sql/types.d.ts +25 -0
  103. package/build/utils/sql/types.d.ts.map +1 -0
  104. package/build/utils/sql/types.js +2 -0
  105. package/build/utils/sql/types.js.map +1 -0
  106. package/build/utils/sql.d.ts +4 -18
  107. package/build/utils/sql.d.ts.map +1 -1
  108. package/build/utils/sql.js +0 -0
  109. package/build/utils/sql.js.map +1 -1
  110. package/build/utils/sync/types.d.ts +25 -0
  111. package/build/utils/sync/types.d.ts.map +1 -0
  112. package/build/utils/sync/types.js +2 -0
  113. package/build/utils/sync/types.js.map +1 -0
  114. package/build/utils/sync.d.ts +2 -19
  115. package/build/utils/sync.d.ts.map +1 -1
  116. package/build/utils/sync.js +64 -71
  117. package/build/utils/sync.js.map +1 -1
  118. package/package.json +7 -7
  119. package/src/consts.ts +7 -0
  120. package/src/declarations/types.ts +12 -0
  121. package/src/declarations.ts +29 -14
  122. package/src/errors.ts +1 -121
  123. package/src/index.ts +3 -0
  124. package/src/pg-error/types.ts +23 -0
  125. package/src/pg-error.ts +114 -0
  126. package/src/resource.ts +17 -13
  127. package/src/types.ts +1 -0
  128. package/src/utils/consts.local.ts +3 -0
  129. package/src/utils/criteria/types.ts +32 -0
  130. package/src/utils/criteria.ts +95 -110
  131. package/src/utils/diff/types.ts +41 -0
  132. package/src/utils/diff.ts +330 -348
  133. package/src/utils/index.ts +9 -0
  134. package/src/utils/introspect/types.ts +9 -0
  135. package/src/utils/introspect.ts +51 -45
  136. package/src/utils/life-cycle/types.ts +41 -0
  137. package/src/utils/life-cycle.ts +102 -121
  138. package/src/utils/marshal/types.ts +40 -0
  139. package/src/utils/marshal.ts +129 -147
  140. package/src/utils/migrations.ts +39 -33
  141. package/src/utils/name/types.ts +44 -0
  142. package/src/utils/name.ts +47 -60
  143. package/src/utils/schema/types.ts +26 -0
  144. package/src/utils/schema.ts +359 -366
  145. package/src/utils/sql/types.ts +25 -0
  146. package/src/utils/sql.ts +0 -0
  147. package/src/utils/sync/types.ts +25 -0
  148. package/src/utils/sync.ts +62 -68
  149. package/tests/criteria.spec.ts +4 -1
  150. package/tests/diff.spec.ts +4 -1
  151. package/tests/errors.spec.ts +4 -3
  152. package/tests/name.spec.ts +5 -3
  153. package/tests/schema.spec.ts +3 -1
  154. package/tests/sql.spec.ts +20 -22
@@ -1 +1 @@
1
- {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../src/utils/diff.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../src/utils/diff.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,22 @@
1
1
  export * from './criteria.js';
2
+ export type * from './criteria/types.js';
2
3
  export * from './diff.js';
4
+ export type * from './diff/types.js';
3
5
  export * from './introspect.js';
6
+ export type * from './introspect/types.js';
4
7
  export * from './life-cycle.js';
8
+ export type * from './life-cycle/types.js';
5
9
  export type * from './types.js';
6
10
  export * from './marshal.js';
11
+ export type * from './marshal/types.js';
7
12
  export * from './migrations.js';
8
13
  export * from './name.js';
14
+ export type * from './name/types.js';
9
15
  export * from './schema.js';
16
+ export type * from './schema/types.js';
10
17
  export * from './sql.js';
18
+ export type * from './sql/types.js';
11
19
  export * from './sync.js';
20
+ export type * from './sync/types.js';
12
21
  export * from './table.js';
13
22
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAC/B,mBAAmB,YAAY,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,mBAAmB,qBAAqB,CAAA;AACxC,cAAc,WAAW,CAAA;AACzB,mBAAmB,iBAAiB,CAAA;AACpC,cAAc,iBAAiB,CAAA;AAC/B,mBAAmB,uBAAuB,CAAA;AAC1C,cAAc,iBAAiB,CAAA;AAC/B,mBAAmB,uBAAuB,CAAA;AAC1C,mBAAmB,YAAY,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,mBAAmB,oBAAoB,CAAA;AACvC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,WAAW,CAAA;AACzB,mBAAmB,iBAAiB,CAAA;AACpC,cAAc,aAAa,CAAA;AAC3B,mBAAmB,mBAAmB,CAAA;AACtC,cAAc,UAAU,CAAA;AACxB,mBAAmB,gBAAgB,CAAA;AACnC,cAAc,WAAW,CAAA;AACzB,mBAAmB,iBAAiB,CAAA;AACpC,cAAc,YAAY,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAE/B,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAE7B,cAAc,WAAW,CAAA;AAEzB,cAAc,iBAAiB,CAAA;AAE/B,cAAc,iBAAiB,CAAA;AAG/B,cAAc,cAAc,CAAA;AAE5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,WAAW,CAAA;AAEzB,cAAc,aAAa,CAAA;AAE3B,cAAc,UAAU,CAAA;AAExB,cAAc,WAAW,CAAA;AAEzB,cAAc,YAAY,CAAA"}
@@ -0,0 +1,9 @@
1
+ import type { LiveTable } from '../../types.js';
2
+ /** Catalog reads over one checked out connection. */
3
+ export interface PgIntrospectHelper {
4
+ /** Read the table exactly as Postgres currently holds it. */
5
+ introspectTable: (schema: string, table: string, qualified: string) => Promise<LiveTable>;
6
+ /** Count the rows a destructive step would lose, so the boot log can say how much. */
7
+ countNonNull: (qualified: string, column: string) => Promise<number>;
8
+ }
9
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/utils/introspect/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE/C,qDAAqD;AACrD,MAAM,WAAW,kBAAkB;IACjC,6DAA6D;IAC7D,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,CAAC,CAAA;IACzF,sFAAsF;IACtF,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;CACrE"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/utils/introspect/types.ts"],"names":[],"mappings":""}
@@ -1,7 +1,7 @@
1
1
  import type { PoolClient } from 'pg';
2
2
  import type { LiveTable } from '../types.js';
3
- /** Read the table exactly as Postgres currently holds it. */
3
+ import type { PgIntrospectHelper } from './introspect/types.js';
4
+ export declare const makePgIntrospectHelper: (client: PoolClient) => PgIntrospectHelper;
5
+ /** @deprecated compat:factory-refactor — use `makePgIntrospectHelper(client).introspectTable(…)` */
4
6
  export declare const introspectTable: (client: PoolClient, schema: string, table: string, qualified: string) => Promise<LiveTable>;
5
- /** Count the rows a destructive step would lose, so the boot log can say how much. */
6
- export declare const countNonNull: (client: PoolClient, qualified: string, column: string) => Promise<number>;
7
7
  //# sourceMappingURL=introspect.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"introspect.d.ts","sourceRoot":"","sources":["../../src/utils/introspect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,IAAI,CAAA;AAEpC,OAAO,KAAK,EAAyC,SAAS,EAAE,MAAM,aAAa,CAAA;AAGnF,6DAA6D;AAC7D,eAAO,MAAM,eAAe,WAClB,UAAU,UAAU,MAAM,SAAS,MAAM,aAAa,MAAM,KACnE,OAAO,CAAC,SAAS,CA+BnB,CAAA;AAED,sFAAsF;AACtF,eAAO,MAAM,YAAY,WACf,UAAU,aAAa,MAAM,UAAU,MAAM,KACpD,OAAO,CAAC,MAAM,CAWhB,CAAA"}
1
+ {"version":3,"file":"introspect.d.ts","sourceRoot":"","sources":["../../src/utils/introspect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,IAAI,CAAA;AAEpC,OAAO,KAAK,EAAyC,SAAS,EAAE,MAAM,aAAa,CAAA;AAEnF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAE/D,eAAO,MAAM,sBAAsB,WAAY,UAAU,KAAG,kBAkD3D,CAAA;AAED,oGAAoG;AACpG,eAAO,MAAM,eAAe,WAClB,UAAU,UAAU,MAAM,SAAS,MAAM,aAAa,MAAM,KACnE,OAAO,CAAC,SAAS,CAA6E,CAAA"}
@@ -1,42 +1,45 @@
1
1
  import { COLUMNS, CONSTRAINTS, INDEXES } from './consts.local.js';
2
- /** Read the table exactly as Postgres currently holds it. */
3
- export const introspectTable = async (client, schema, table, qualified) => {
4
- const exists = await client.query('SELECT to_regclass($1) IS NOT NULL AS present', [qualified]);
5
- if (exists.rows[0]?.present !== true) {
6
- return { exists: false, columns: [], indexes: [], constraints: [] };
7
- }
8
- /**
9
- * Sequential, not `Promise.all`: this is one checked out connection, and a connection
10
- * runs one statement at a time. Overlapping them only queues them behind each other —
11
- * and node-postgres deprecated tolerating it.
12
- */
13
- const columns = await client.query(COLUMNS, [qualified]);
14
- const indexes = await client.query(INDEXES, [schema, table]);
15
- const constraints = await client.query(CONSTRAINTS, [qualified]);
16
- return {
17
- exists: true,
18
- columns: columns.rows.map(row => ({
19
- name: row.name,
20
- type: row.type,
21
- notNull: row.not_null,
22
- defaultExpr: row.default_expr,
23
- identity: row.identity ?? '',
24
- generated: row.generated ?? '',
25
- ordinal: row.ordinal
26
- })),
27
- indexes: indexes.rows,
28
- constraints: constraints.rows
2
+ export const makePgIntrospectHelper = (client) => {
3
+ const introspectTable = async (schema, table, qualified) => {
4
+ const exists = await client.query('SELECT to_regclass($1) IS NOT NULL AS present', [qualified]);
5
+ if (exists.rows[0]?.present !== true) {
6
+ return { exists: false, columns: [], indexes: [], constraints: [] };
7
+ }
8
+ /**
9
+ * Sequential, not `Promise.all`: this is one checked out connection, and a connection
10
+ * runs one statement at a time. Overlapping them only queues them behind each other —
11
+ * and node-postgres deprecated tolerating it.
12
+ */
13
+ const columns = await client.query(COLUMNS, [qualified]);
14
+ const indexes = await client.query(INDEXES, [schema, table]);
15
+ const constraints = await client.query(CONSTRAINTS, [qualified]);
16
+ return {
17
+ exists: true,
18
+ columns: columns.rows.map(row => ({
19
+ name: row.name,
20
+ type: row.type,
21
+ notNull: row.not_null,
22
+ defaultExpr: row.default_expr,
23
+ identity: row.identity ?? '',
24
+ generated: row.generated ?? '',
25
+ ordinal: row.ordinal
26
+ })),
27
+ indexes: indexes.rows,
28
+ constraints: constraints.rows
29
+ };
29
30
  };
31
+ const countNonNull = async (qualified, column) => {
32
+ try {
33
+ const result = await client.query(`SELECT count(*)::text AS count FROM ${qualified} WHERE "${column.replace(/"/g, '""')}" IS NOT NULL`);
34
+ return parseInt(result.rows[0]?.count ?? '0', 10);
35
+ }
36
+ catch {
37
+ /** Never let a diagnostic read break reconciliation. */
38
+ return -1;
39
+ }
40
+ };
41
+ return { introspectTable, countNonNull };
30
42
  };
31
- /** Count the rows a destructive step would lose, so the boot log can say how much. */
32
- export const countNonNull = async (client, qualified, column) => {
33
- try {
34
- const result = await client.query(`SELECT count(*)::text AS count FROM ${qualified} WHERE "${column.replace(/"/g, '""')}" IS NOT NULL`);
35
- return parseInt(result.rows[0]?.count ?? '0', 10);
36
- }
37
- catch {
38
- /** Never let a diagnostic read break reconciliation. */
39
- return -1;
40
- }
41
- };
43
+ /** @deprecated compat:factory-refactor — use `makePgIntrospectHelper(client).introspectTable(…)` */
44
+ export const introspectTable = async (client, schema, table, qualified) => makePgIntrospectHelper(client).introspectTable(schema, table, qualified);
42
45
  //# sourceMappingURL=introspect.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"introspect.js","sourceRoot":"","sources":["../../src/utils/introspect.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAEjE,6DAA6D;AAC7D,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAClC,MAAkB,EAAE,MAAc,EAAE,KAAa,EAAE,SAAiB,EAChD,EAAE;IACtB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAC/B,+CAA+C,EAAE,CAAC,SAAS,CAAC,CAC7D,CAAA;IACD,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,EAAE,CAAC;QACrC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAA;IACrE,CAAC;IAED;;;;OAIG;IACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,KAAK,CAAa,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IACpE,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,KAAK,CAAY,OAAO,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAA;IACvE,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,KAAK,CAAiB,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEhF,OAAO;QACL,MAAM,EAAE,IAAI;QACZ,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChC,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,OAAO,EAAG,GAAwC,CAAC,QAAQ;YAC3D,WAAW,EAAG,GAAkD,CAAC,YAAY;YAC7E,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,EAAE;YAC5B,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,EAAE;YAC9B,OAAO,EAAE,GAAG,CAAC,OAAO;SACrB,CAAC,CAAC;QACH,OAAO,EAAE,OAAO,CAAC,IAAI;QACrB,WAAW,EAAE,WAAW,CAAC,IAAI;KAC9B,CAAA;AACH,CAAC,CAAA;AAED,sFAAsF;AACtF,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAC/B,MAAkB,EAAE,SAAiB,EAAE,MAAc,EACpC,EAAE;IACnB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAC/B,uCAAuC,SAAS,WAAW,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CACrG,CAAA;QAED,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,GAAG,EAAE,EAAE,CAAC,CAAA;IACnD,CAAC;IAAC,MAAM,CAAC;QACP,wDAAwD;QACxD,OAAO,CAAC,CAAC,CAAA;IACX,CAAC;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"introspect.js","sourceRoot":"","sources":["../../src/utils/introspect.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAGjE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,MAAkB,EAAsB,EAAE;IAC/E,MAAM,eAAe,GAAG,KAAK,EAC3B,MAAc,EAAE,KAAa,EAAE,SAAiB,EAC5B,EAAE;QACtB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAC/B,+CAA+C,EAAE,CAAC,SAAS,CAAC,CAC7D,CAAA;QACD,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,EAAE,CAAC;YACrC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAA;QACrE,CAAC;QAED;;;;WAIG;QACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,KAAK,CAAa,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;QACpE,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,KAAK,CAAY,OAAO,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAA;QACvE,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,KAAK,CAAiB,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;QAEhF,OAAO;YACL,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChC,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,OAAO,EAAG,GAAwC,CAAC,QAAQ;gBAC3D,WAAW,EAAG,GAAkD,CAAC,YAAY;gBAC7E,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,EAAE;gBAC5B,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,EAAE;gBAC9B,OAAO,EAAE,GAAG,CAAC,OAAO;aACrB,CAAC,CAAC;YACH,OAAO,EAAE,OAAO,CAAC,IAAI;YACrB,WAAW,EAAE,WAAW,CAAC,IAAI;SAC9B,CAAA;IACH,CAAC,CAAA;IAED,MAAM,YAAY,GAAG,KAAK,EAAE,SAAiB,EAAE,MAAc,EAAmB,EAAE;QAChF,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAC/B,uCAAuC,SAAS,WAAW,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CACrG,CAAA;YAED,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,GAAG,EAAE,EAAE,CAAC,CAAA;QACnD,CAAC;QAAC,MAAM,CAAC;YACP,wDAAwD;YACxD,OAAO,CAAC,CAAC,CAAA;QACX,CAAC;IACH,CAAC,CAAA;IAED,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,CAAA;AAC1C,CAAC,CAAA;AAED,oGAAoG;AACpG,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAClC,MAAkB,EAAE,MAAc,EAAE,KAAa,EAAE,SAAiB,EAChD,EAAE,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,CAAA"}
@@ -0,0 +1,37 @@
1
+ import type { BasicContext } from '@owlmeans/context';
2
+ import type { DbConfig, ResourceRecord } from '@owlmeans/resource';
3
+ import type { PostgresResource, TableSpec } from '../../types.js';
4
+ import type { TableInit } from '../types.js';
5
+ /** A resource table's initialization over one database handle. */
6
+ export interface PgLifeCycleHelper {
7
+ /**
8
+ * Bring a resource's table to the shape its schema declares, then hand back everything the
9
+ * resource needs to query it. The Postgres counterpart of mongo's `initializeCollection`.
10
+ *
11
+ * The whole sequence runs inside a session level advisory lock keyed on the qualified table
12
+ * name, so replicas booting simultaneously converge one at a time instead of racing each
13
+ * other's DDL — a race mongo's converge-on-boot leaves open.
14
+ *
15
+ * Order is deliberate:
16
+ *
17
+ * 1. probe for the table
18
+ * 2. absent → *baseline* every registered migration; present → run the `pre` ones
19
+ * 3. reconcile structure against the schema
20
+ * 4. present → run the `post` migrations
21
+ * 5. queue foreign keys for after every resource has initialized
22
+ *
23
+ * Step 2 is what stops the two mechanisms colliding. On a fresh deployment the table is
24
+ * created directly to its final shape, so migrations that would have produced that shape
25
+ * are recorded as satisfied rather than replayed against a table that already matches.
26
+ */
27
+ initializeTable: (config: DbConfig, resource: PostgresResource<ResourceRecord>, context: BasicContext<any>, defer: (task: () => Promise<void>) => void) => Promise<TableInit>;
28
+ /**
29
+ * Add the foreign keys the schema declares, skipping any Postgres already holds.
30
+ *
31
+ * Constraints are compared by name only. A key whose *definition* drifted has to be dropped
32
+ * by hand or in a migration: `ALTER TABLE ... DROP CONSTRAINT` on a foreign key is not a
33
+ * change worth making on a boot nobody is watching.
34
+ */
35
+ applyForeignKeys: (spec: TableSpec, context: BasicContext<any>) => Promise<void>;
36
+ }
37
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/utils/life-cycle/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAElE,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AACjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAE5C,kEAAkE;AAClE,MAAM,WAAW,iBAAiB;IAChC;;;;;;;;;;;;;;;;;;;OAmBG;IACH,eAAe,EAAE,CACf,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,CAAC,cAAc,CAAC,EAC5D,OAAO,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,KACnE,OAAO,CAAC,SAAS,CAAC,CAAA;IACvB;;;;;;OAMG;IACH,gBAAgB,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACjF"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/utils/life-cycle/types.ts"],"names":[],"mappings":""}
@@ -1,34 +1,4 @@
1
- import type { BasicContext } from '@owlmeans/context';
2
- import { type DbConfig, type ResourceRecord } from '@owlmeans/resource';
3
- import type { PostgresDb, PostgresResource, TableSpec } from '../types.js';
4
- import type { TableInit } from './types.js';
5
- /**
6
- * Bring a resource's table to the shape its schema declares, then hand back everything the
7
- * resource needs to query it. The Postgres counterpart of mongo's `initializeCollection`.
8
- *
9
- * The whole sequence runs inside a session level advisory lock keyed on the qualified table
10
- * name, so replicas booting simultaneously converge one at a time instead of racing each
11
- * other's DDL — a race mongo's converge-on-boot leaves open.
12
- *
13
- * Order is deliberate:
14
- *
15
- * 1. probe for the table
16
- * 2. absent → *baseline* every registered migration; present → run the `pre` ones
17
- * 3. reconcile structure against the schema
18
- * 4. present → run the `post` migrations
19
- * 5. queue foreign keys for after every resource has initialized
20
- *
21
- * Step 2 is what stops the two mechanisms colliding. On a fresh deployment the table is
22
- * created directly to its final shape, so migrations that would have produced that shape
23
- * are recorded as satisfied rather than replayed against a table that already matches.
24
- */
25
- export declare const initializeTable: (db: PostgresDb, config: DbConfig, resource: PostgresResource<ResourceRecord>, context: BasicContext<any>, defer: (task: () => Promise<void>) => void) => Promise<TableInit>;
26
- /**
27
- * Add the foreign keys the schema declares, skipping any Postgres already holds.
28
- *
29
- * Constraints are compared by name only. A key whose *definition* drifted has to be dropped
30
- * by hand or in a migration: `ALTER TABLE ... DROP CONSTRAINT` on a foreign key is not a
31
- * change worth making on a boot nobody is watching.
32
- */
33
- export declare const applyForeignKeys: (db: PostgresDb, spec: TableSpec, context: BasicContext<any>) => Promise<void>;
1
+ import type { PostgresDb } from '../types.js';
2
+ import type { PgLifeCycleHelper } from './life-cycle/types.js';
3
+ export declare const makePgLifeCycleHelper: (db: PostgresDb) => PgLifeCycleHelper;
34
4
  //# sourceMappingURL=life-cycle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"life-cycle.d.ts","sourceRoot":"","sources":["../../src/utils/life-cycle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,EAAiC,KAAK,QAAQ,EAAwB,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAO5H,OAAO,KAAK,EAAE,UAAU,EAAgB,gBAAgB,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AASxF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAI3C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,eAAe,OACtB,UAAU,UAAU,QAAQ,YAAY,gBAAgB,CAAC,cAAc,CAAC,WACnE,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,KACrE,OAAO,CAAC,SAAS,CAyDnB,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,OACvB,UAAU,QAAQ,SAAS,WAAW,YAAY,CAAC,GAAG,CAAC,KAC1D,OAAO,CAAC,IAAI,CAmBd,CAAA"}
1
+ {"version":3,"file":"life-cycle.d.ts","sourceRoot":"","sources":["../../src/utils/life-cycle.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,UAAU,EAA6C,MAAM,aAAa,CAAA;AAGxF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAW9D,eAAO,MAAM,qBAAqB,OAAQ,UAAU,KAAG,iBA0GtD,CAAA"}
@@ -1,122 +1,102 @@
1
1
  import { MigrationStage, runMigrations } from '@owlmeans/resource';
2
2
  import { logger } from '@owlmeans/log';
3
3
  import { DEF_MIGRATIONS_TABLE, PgAutoSync } from '../consts.js';
4
- import { getDeclaration } from '../declarations.js';
5
- import { describePgError, pgErrorToResourceError } from '../errors.js';
6
- import { planForeignKeys, planSync } from './diff.js';
7
- import { introspectTable } from './introspect.js';
4
+ import { pgDeclarationHelper } from '../declarations.js';
5
+ import { pgErrorHelper } from '../pg-error.js';
6
+ import { pgDiffHelper } from './diff.js';
7
+ import { makePgIntrospectHelper } from './introspect.js';
8
8
  import { makeMigrationStore } from './migrations.js';
9
- import { pgTableName } from './name.js';
10
- import { schemaToTableSpec } from './schema.js';
11
- import { refOf, resolvePlaceholders } from './sql.js';
12
- import { acquireLock, applyPlan, ensureSchema, releaseLock } from './sync.js';
9
+ import { pgNameHelper } from './name.js';
10
+ import { pgSchemaHelper } from './schema.js';
11
+ import { pgPlaceholdersOf } from './sql.js';
12
+ import { makePgSyncHelper } from './sync.js';
13
13
  import { specToTable } from './table.js';
14
14
  const log = logger('postgres-resource');
15
- /**
16
- * Bring a resource's table to the shape its schema declares, then hand back everything the
17
- * resource needs to query it. The Postgres counterpart of mongo's `initializeCollection`.
18
- *
19
- * The whole sequence runs inside a session level advisory lock keyed on the qualified table
20
- * name, so replicas booting simultaneously converge one at a time instead of racing each
21
- * other's DDL — a race mongo's converge-on-boot leaves open.
22
- *
23
- * Order is deliberate:
24
- *
25
- * 1. probe for the table
26
- * 2. absent → *baseline* every registered migration; present → run the `pre` ones
27
- * 3. reconcile structure against the schema
28
- * 4. present → run the `post` migrations
29
- * 5. queue foreign keys for after every resource has initialized
30
- *
31
- * Step 2 is what stops the two mechanisms colliding. On a fresh deployment the table is
32
- * created directly to its final shape, so migrations that would have produced that shape
33
- * are recorded as satisfied rather than replayed against a table that already matches.
34
- */
35
- export const initializeTable = async (db, config, resource, context, defer) => {
36
- const declaration = getDeclaration(resource.alias);
37
- const meta = (config.meta ?? {});
38
- const mode = meta.autoSync ?? PgAutoSync.Full;
39
- const spec = schemaToTableSpec(resource.alias, resource.schema ?? declaration.schema, db.schema, pgTableName(config, resource), mode !== PgAutoSync.Off, declaration.indexes);
40
- const entity = specToTable(spec);
41
- const reports = [];
42
- const client = await db.pool.connect();
43
- try {
44
- await acquireLock(client, spec.qualified);
45
- await ensureSchema(client, spec.schema);
46
- const resolve = (text) => resolvePlaceholders(text, context, spec);
47
- const ref = (alias) => refOf(context, spec, alias);
48
- const store = makeMigrationStore(client, spec, DEF_MIGRATIONS_TABLE, resolve, ref);
49
- const fresh = !(await introspectTable(client, spec.schema, spec.table, spec.qualified)).exists;
50
- reports.push(await runMigrations(resource.alias, declaration.migrations, store, fresh
51
- ? { baseline: true }
52
- : { stage: MigrationStage.Pre }));
53
- if (spec.autoSync) {
54
- /** Re-read: a `pre` migration may have reshaped exactly what the diff is about to compare. */
55
- const live = await introspectTable(client, spec.schema, spec.table, spec.qualified);
56
- const plan = planSync(spec, live, mode === PgAutoSync.Additive);
57
- await applyPlan(client, spec, plan);
15
+ export const makePgLifeCycleHelper = (db) => {
16
+ const { describePgError, pgErrorToResourceError } = pgErrorHelper;
17
+ const initializeTable = async (config, resource, context, defer) => {
18
+ const declaration = pgDeclarationHelper.getDeclaration(resource.alias);
19
+ const meta = (config.meta ?? {});
20
+ const mode = meta.autoSync ?? PgAutoSync.Full;
21
+ const spec = pgSchemaHelper.schemaToTableSpec(resource.alias, resource.schema ?? declaration.schema, db.schema, pgNameHelper.pgTableName(config, resource), mode !== PgAutoSync.Off, declaration.indexes);
22
+ const entity = specToTable(spec);
23
+ const reports = [];
24
+ const client = await db.pool.connect();
25
+ const sync = makePgSyncHelper(client);
26
+ const introspect = makePgIntrospectHelper(client);
27
+ try {
28
+ await sync.acquireLock(spec.qualified);
29
+ await sync.ensureSchema(spec.schema);
30
+ const placeholders = pgPlaceholdersOf(context);
31
+ const resolve = (text) => placeholders.resolvePlaceholders(text, spec);
32
+ const ref = (alias) => placeholders.refOf(spec, alias);
33
+ const store = makeMigrationStore(client, spec, DEF_MIGRATIONS_TABLE, resolve, ref);
34
+ const fresh = !(await introspect.introspectTable(spec.schema, spec.table, spec.qualified)).exists;
35
+ reports.push(await runMigrations(resource.alias, declaration.migrations, store, fresh
36
+ ? { baseline: true }
37
+ : { stage: MigrationStage.Pre }));
38
+ if (spec.autoSync) {
39
+ /** Re-read: a `pre` migration may have reshaped exactly what the diff is about to compare. */
40
+ const live = await introspect.introspectTable(spec.schema, spec.table, spec.qualified);
41
+ const plan = pgDiffHelper.planSync(spec, live, mode === PgAutoSync.Additive);
42
+ await sync.applyPlan(spec, plan);
43
+ }
44
+ if (!fresh) {
45
+ reports.push(await runMigrations(resource.alias, declaration.migrations, store, { stage: MigrationStage.Post }));
46
+ }
47
+ for (const report of reports) {
48
+ if (report.applied.length > 0) {
49
+ log.info('Migrations applied', {
50
+ resource: resource.alias, table: spec.qualified, stage: report.stage, applied: report.applied,
51
+ }, { event: 'migration.applied' });
52
+ }
53
+ }
58
54
  }
59
- if (!fresh) {
60
- reports.push(await runMigrations(resource.alias, declaration.migrations, store, { stage: MigrationStage.Post }));
55
+ finally {
56
+ await sync.releaseLock(spec.qualified);
57
+ client.release();
61
58
  }
62
- for (const report of reports) {
63
- if (report.applied.length > 0) {
64
- log.info('Migrations applied', {
65
- resource: resource.alias, table: spec.qualified, stage: report.stage, applied: report.applied,
66
- }, { event: 'migration.applied' });
59
+ if (spec.references.length > 0) {
60
+ defer(async () => { await applyForeignKeys(spec, context); });
61
+ }
62
+ return { spec, entity, reports };
63
+ };
64
+ const applyForeignKeys = async (spec, context) => {
65
+ const client = await db.pool.connect();
66
+ try {
67
+ const statements = pgDiffHelper.planForeignKeys(spec, context);
68
+ const live = await makePgIntrospectHelper(client).introspectTable(spec.schema, spec.table, spec.qualified);
69
+ if (!live.exists) {
70
+ return;
71
+ }
72
+ const present = live.constraints.map(constraint => constraint.name);
73
+ for (const statement of statements) {
74
+ if (present.includes(statement.target)) {
75
+ continue;
76
+ }
77
+ await apply(client, spec, statement.sql);
67
78
  }
68
79
  }
69
- }
70
- finally {
71
- await releaseLock(client, spec.qualified);
72
- client.release();
73
- }
74
- if (spec.references.length > 0) {
75
- defer(async () => { await applyForeignKeys(db, spec, context); });
76
- }
77
- return { spec, entity, reports };
78
- };
79
- /**
80
- * Add the foreign keys the schema declares, skipping any Postgres already holds.
81
- *
82
- * Constraints are compared by name only. A key whose *definition* drifted has to be dropped
83
- * by hand or in a migration: `ALTER TABLE ... DROP CONSTRAINT` on a foreign key is not a
84
- * change worth making on a boot nobody is watching.
85
- */
86
- export const applyForeignKeys = async (db, spec, context) => {
87
- const client = await db.pool.connect();
88
- try {
89
- const statements = planForeignKeys(spec, context);
90
- const live = await introspectTable(client, spec.schema, spec.table, spec.qualified);
91
- if (!live.exists) {
92
- return;
80
+ finally {
81
+ client.release();
93
82
  }
94
- const present = live.constraints.map(constraint => constraint.name);
95
- for (const statement of statements) {
96
- if (present.includes(statement.target)) {
97
- continue;
98
- }
99
- await apply(client, spec, statement.sql);
83
+ };
84
+ const apply = async (client, spec, statement) => {
85
+ try {
86
+ await client.query(statement);
100
87
  }
101
- }
102
- finally {
103
- client.release();
104
- }
105
- };
106
- const apply = async (client, spec, statement) => {
107
- try {
108
- await client.query(statement);
109
- }
110
- catch (error) {
111
- const translated = pgErrorToResourceError(error);
112
- /**
113
- * A foreign key failing means live rows point at nothing. That's a data problem the
114
- * boot can't fix, and refusing to start is better than starting with the constraint
115
- * quietly missing.
116
- */
117
- throw Object.assign(translated, {
118
- message: `${spec.qualified}: ${describePgError(error)} — statement: ${statement}`
119
- });
120
- }
88
+ catch (error) {
89
+ const translated = pgErrorToResourceError(error);
90
+ /**
91
+ * A foreign key failing means live rows point at nothing. That's a data problem the
92
+ * boot can't fix, and refusing to start is better than starting with the constraint
93
+ * quietly missing.
94
+ */
95
+ throw Object.assign(translated, {
96
+ message: `${spec.qualified}: ${describePgError(error)} — statement: ${statement}`
97
+ });
98
+ }
99
+ };
100
+ return { initializeTable, applyForeignKeys };
121
101
  };
122
102
  //# sourceMappingURL=life-cycle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"life-cycle.js","sourceRoot":"","sources":["../../src/utils/life-cycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"life-cycle.js","sourceRoot":"","sources":["../../src/utils/life-cycle.ts"],"names":[],"mappings":"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"}