@twin.org/entity-storage-connector-postgresql 0.9.1 → 0.9.2-next.10

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/docs/changelog.md CHANGED
@@ -1,5 +1,204 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.9.2-next.10](https://github.com/iotaledger/twin-entity-storage/compare/entity-storage-connector-postgresql-v0.9.2-next.9...entity-storage-connector-postgresql-v0.9.2-next.10) (2026-08-14)
4
+
5
+
6
+ ### Miscellaneous Chores
7
+
8
+ * **entity-storage-connector-postgresql:** Synchronize repo versions
9
+
10
+
11
+ ### Dependencies
12
+
13
+ * The following workspace dependencies were updated
14
+ * dependencies
15
+ * @twin.org/entity-storage-models bumped from 0.9.2-next.9 to 0.9.2-next.10
16
+ * devDependencies
17
+ * @twin.org/entity-storage-connector-memory bumped from 0.9.2-next.9 to 0.9.2-next.10
18
+
19
+ ## [0.9.2-next.9](https://github.com/iotaledger/twin-entity-storage/compare/entity-storage-connector-postgresql-v0.9.2-next.8...entity-storage-connector-postgresql-v0.9.2-next.9) (2026-08-12)
20
+
21
+
22
+ ### Bug Fixes
23
+
24
+ * use hashing to restrict index name length ([757d572](https://github.com/iotaledger/twin-entity-storage/commit/757d5728161a00c1d1865ad6df3231eecfad16f2))
25
+
26
+
27
+ ### Dependencies
28
+
29
+ * The following workspace dependencies were updated
30
+ * dependencies
31
+ * @twin.org/entity-storage-models bumped from 0.9.2-next.8 to 0.9.2-next.9
32
+ * devDependencies
33
+ * @twin.org/entity-storage-connector-memory bumped from 0.9.2-next.8 to 0.9.2-next.9
34
+
35
+ ## [0.9.2-next.8](https://github.com/iotaledger/twin-entity-storage/compare/entity-storage-connector-postgresql-v0.9.2-next.7...entity-storage-connector-postgresql-v0.9.2-next.8) (2026-08-12)
36
+
37
+
38
+ ### Features
39
+
40
+ * indexing ([#207](https://github.com/iotaledger/twin-entity-storage/issues/207)) ([2fd1f0d](https://github.com/iotaledger/twin-entity-storage/commit/2fd1f0d992344905c9dd1a44addfc4f9d5b5c168))
41
+ * pooled connections ([#208](https://github.com/iotaledger/twin-entity-storage/issues/208)) ([5d832d1](https://github.com/iotaledger/twin-entity-storage/commit/5d832d15b0639f13ad3f5d2c68c946a72264310a))
42
+
43
+
44
+ ### Dependencies
45
+
46
+ * The following workspace dependencies were updated
47
+ * dependencies
48
+ * @twin.org/entity-storage-models bumped from 0.9.2-next.7 to 0.9.2-next.8
49
+ * devDependencies
50
+ * @twin.org/entity-storage-connector-memory bumped from 0.9.2-next.7 to 0.9.2-next.8
51
+
52
+ ## [0.9.2-next.7](https://github.com/iotaledger/twin-entity-storage/compare/entity-storage-connector-postgresql-v0.9.2-next.6...entity-storage-connector-postgresql-v0.9.2-next.7) (2026-08-11)
53
+
54
+
55
+ ### Features
56
+
57
+ * optimistic locking ([#201](https://github.com/iotaledger/twin-entity-storage/issues/201)) ([80cbe3b](https://github.com/iotaledger/twin-entity-storage/commit/80cbe3b611c47b16328bceab02cfb8423fe1bbcd))
58
+
59
+
60
+ ### Dependencies
61
+
62
+ * The following workspace dependencies were updated
63
+ * dependencies
64
+ * @twin.org/entity-storage-models bumped from 0.9.2-next.6 to 0.9.2-next.7
65
+ * devDependencies
66
+ * @twin.org/entity-storage-connector-memory bumped from 0.9.2-next.6 to 0.9.2-next.7
67
+
68
+ ## [0.9.2-next.6](https://github.com/iotaledger/twin-entity-storage/compare/entity-storage-connector-postgresql-v0.9.2-next.5...entity-storage-connector-postgresql-v0.9.2-next.6) (2026-08-07)
69
+
70
+
71
+ ### Bug Fixes
72
+
73
+ * allow multi-property sort on DynamoDB and CosmosDB connectors ([#196](https://github.com/iotaledger/twin-entity-storage/issues/196)) ([f1bb582](https://github.com/iotaledger/twin-entity-storage/commit/f1bb5826d75dae331ad6b42df5de330a308c5405))
74
+
75
+
76
+ ### Dependencies
77
+
78
+ * The following workspace dependencies were updated
79
+ * dependencies
80
+ * @twin.org/entity-storage-models bumped from 0.9.2-next.5 to 0.9.2-next.6
81
+ * devDependencies
82
+ * @twin.org/entity-storage-connector-memory bumped from 0.9.2-next.5 to 0.9.2-next.6
83
+
84
+ ## [0.9.2-next.5](https://github.com/iotaledger/twin-entity-storage/compare/entity-storage-connector-postgresql-v0.9.2-next.4...entity-storage-connector-postgresql-v0.9.2-next.5) (2026-08-07)
85
+
86
+
87
+ ### Features
88
+
89
+ * linting and dependency update ([c307b60](https://github.com/iotaledger/twin-entity-storage/commit/c307b606d03ea436b7c43d4e1764b5c08f415555))
90
+
91
+
92
+ ### Dependencies
93
+
94
+ * The following workspace dependencies were updated
95
+ * dependencies
96
+ * @twin.org/entity-storage-models bumped from 0.9.2-next.4 to 0.9.2-next.5
97
+ * devDependencies
98
+ * @twin.org/entity-storage-connector-memory bumped from 0.9.2-next.4 to 0.9.2-next.5
99
+
100
+ ## [0.9.2-next.4](https://github.com/iotaledger/twin-entity-storage/compare/entity-storage-connector-postgresql-v0.9.2-next.3...entity-storage-connector-postgresql-v0.9.2-next.4) (2026-08-04)
101
+
102
+
103
+ ### Bug Fixes
104
+
105
+ * schema version check crashes in multi-tenant mode ([#192](https://github.com/iotaledger/twin-entity-storage/issues/192)) ([a816341](https://github.com/iotaledger/twin-entity-storage/commit/a8163415ce116582f3c3c23294f7f4062099d8f3))
106
+
107
+
108
+ ### Dependencies
109
+
110
+ * The following workspace dependencies were updated
111
+ * dependencies
112
+ * @twin.org/entity-storage-models bumped from 0.9.2-next.3 to 0.9.2-next.4
113
+ * devDependencies
114
+ * @twin.org/entity-storage-connector-memory bumped from 0.9.2-next.3 to 0.9.2-next.4
115
+
116
+ ## [0.9.2-next.3](https://github.com/iotaledger/twin-entity-storage/compare/entity-storage-connector-postgresql-v0.9.2-next.2...entity-storage-connector-postgresql-v0.9.2-next.3) (2026-08-03)
117
+
118
+
119
+ ### Features
120
+
121
+ * update health signatures ([#188](https://github.com/iotaledger/twin-entity-storage/issues/188)) ([0159094](https://github.com/iotaledger/twin-entity-storage/commit/015909423958a7a20505a92b23793a044d26f6a4))
122
+
123
+
124
+ ### Dependencies
125
+
126
+ * The following workspace dependencies were updated
127
+ * dependencies
128
+ * @twin.org/entity-storage-models bumped from 0.9.2-next.2 to 0.9.2-next.3
129
+ * devDependencies
130
+ * @twin.org/entity-storage-connector-memory bumped from 0.9.2-next.2 to 0.9.2-next.3
131
+
132
+ ## [0.9.2-next.2](https://github.com/iotaledger/twin-entity-storage/compare/entity-storage-connector-postgresql-v0.9.2-next.1...entity-storage-connector-postgresql-v0.9.2-next.2) (2026-07-29)
133
+
134
+
135
+ ### Miscellaneous Chores
136
+
137
+ * **entity-storage-connector-postgresql:** Synchronize repo versions
138
+
139
+
140
+ ### Dependencies
141
+
142
+ * The following workspace dependencies were updated
143
+ * dependencies
144
+ * @twin.org/entity-storage-models bumped from 0.9.2-next.1 to 0.9.2-next.2
145
+ * devDependencies
146
+ * @twin.org/entity-storage-connector-memory bumped from 0.9.2-next.1 to 0.9.2-next.2
147
+
148
+ ## [0.9.2-next.1](https://github.com/iotaledger/twin-entity-storage/compare/entity-storage-connector-postgresql-v0.9.2-next.0...entity-storage-connector-postgresql-v0.9.2-next.1) (2026-07-29)
149
+
150
+
151
+ ### Features
152
+
153
+ * add context id features ([#55](https://github.com/iotaledger/twin-entity-storage/issues/55)) ([99c15a2](https://github.com/iotaledger/twin-entity-storage/commit/99c15a257539b61d9da63649ce573ebf47699fc9))
154
+ * add ISchemaMigration chain, SchemaVersionMigrator runner and version store ([#110](https://github.com/iotaledger/twin-entity-storage/issues/110)) ([2dac924](https://github.com/iotaledger/twin-entity-storage/commit/2dac9244a752cb58304d1649ff03c3a2469783dd))
155
+ * add production release automation ([1eb4c8e](https://github.com/iotaledger/twin-entity-storage/commit/1eb4c8ee3eb099defdfc2d063ae44935276dcae8))
156
+ * add support for object comparison conditions ([eb505a1](https://github.com/iotaledger/twin-entity-storage/commit/eb505a17a3642e95c4e3cf137a77a0a8fb388c97))
157
+ * add validate-locales ([e66ef0d](https://github.com/iotaledger/twin-entity-storage/commit/e66ef0de26ca2f82b3fe89bb5c7a15a0978a9644))
158
+ * adding schema migration functionality to all the connectors ([#85](https://github.com/iotaledger/twin-entity-storage/issues/85)) ([fd1555a](https://github.com/iotaledger/twin-entity-storage/commit/fd1555a34380158214a577586dafae821e72a578))
159
+ * additional information in health ([1e658b7](https://github.com/iotaledger/twin-entity-storage/commit/1e658b74288e9411538286d25b81823df80703e9))
160
+ * disable endpoint discovery for cosmos ([49df2a2](https://github.com/iotaledger/twin-entity-storage/commit/49df2a254f385dc42e2e1f7e26e71f89b5bf5bcf))
161
+ * entity storage conditions ([#115](https://github.com/iotaledger/twin-entity-storage/issues/115)) ([7a53884](https://github.com/iotaledger/twin-entity-storage/commit/7a53884f6acb856d77733e4e0f23ec1c00b74cb4))
162
+ * entity storage enhancements ([#86](https://github.com/iotaledger/twin-entity-storage/issues/86)) ([1279af4](https://github.com/iotaledger/twin-entity-storage/commit/1279af42615c6497bb06539842cee44842dd1f75))
163
+ * eslint migration to flat config ([f033b64](https://github.com/iotaledger/twin-entity-storage/commit/f033b64984c0e6a8129d929c9dd816dcc1b8dab0))
164
+ * input validation ([#162](https://github.com/iotaledger/twin-entity-storage/issues/162)) ([3e1e428](https://github.com/iotaledger/twin-entity-storage/commit/3e1e42887955cf079efd5989e197ddf8e0fa8c47))
165
+ * logging naming consistency ([f99d12d](https://github.com/iotaledger/twin-entity-storage/commit/f99d12dea04b6d4f2b5632ff5473e9ec7d5f9055))
166
+ * migration progress ([#121](https://github.com/iotaledger/twin-entity-storage/issues/121)) ([d032162](https://github.com/iotaledger/twin-entity-storage/commit/d032162768b6b7d4ccca7e39b80f8bc3ba46440e))
167
+ * mysql non offset paging ([#172](https://github.com/iotaledger/twin-entity-storage/issues/172)) ([0633165](https://github.com/iotaledger/twin-entity-storage/commit/063316563fa8abe221251cd34fdd6c03538b9bb3))
168
+ * remove default loggers ([7c8c7b1](https://github.com/iotaledger/twin-entity-storage/commit/7c8c7b132c23e95abd465c0ca3bad5ec8d95f91e))
169
+ * synchronised storage ([#44](https://github.com/iotaledger/twin-entity-storage/issues/44)) ([94e10e2](https://github.com/iotaledger/twin-entity-storage/commit/94e10e26d1feec801449dc04af7a9757ac7495ff))
170
+ * typescript 6 update ([995a0c6](https://github.com/iotaledger/twin-entity-storage/commit/995a0c6fa9a6813bfdc7200779ce3664236e59e9))
171
+ * update dependencies ([7ccc0c4](https://github.com/iotaledger/twin-entity-storage/commit/7ccc0c429125d073dc60b3de6cf101abc8cc6cba))
172
+ * update framework core ([b59a380](https://github.com/iotaledger/twin-entity-storage/commit/b59a380bb7fba2b43610f69074dcdee24a4737da))
173
+ * use shared store mechanism ([#34](https://github.com/iotaledger/twin-entity-storage/issues/34)) ([68b6b71](https://github.com/iotaledger/twin-entity-storage/commit/68b6b71e7a96d7d016cd57bfff36775b56bf3f93))
174
+
175
+
176
+ ### Bug Fixes
177
+
178
+ * adding integers types handler ([#82](https://github.com/iotaledger/twin-entity-storage/issues/82)) ([2704717](https://github.com/iotaledger/twin-entity-storage/commit/2704717fde7c0c8b39e8036b4d2a61654b51f917))
179
+ * adding tests and fixes for dot notation ([#76](https://github.com/iotaledger/twin-entity-storage/issues/76)) ([3879337](https://github.com/iotaledger/twin-entity-storage/commit/387933797e33543e4d8b2d49b8beeb792512a4ff))
180
+ * adding tests and support when neccesary for string include operator when needed ([#72](https://github.com/iotaledger/twin-entity-storage/issues/72)) ([3c723dd](https://github.com/iotaledger/twin-entity-storage/commit/3c723dd5694814398099d9d4594089dc6c66ba97))
181
+ * adding tests for debugging and patching the missing quotes and parse error handeling ([#61](https://github.com/iotaledger/twin-entity-storage/issues/61)) ([f746be5](https://github.com/iotaledger/twin-entity-storage/commit/f746be530799bede1db08482cf65fe780c5e75a0))
182
+ * dynamodb get with condition ignores primary key ([d2d0ec2](https://github.com/iotaledger/twin-entity-storage/commit/d2d0ec21023bc22f0e5a35c2d49396d90b42a4ce))
183
+ * dynamodb query gsi ([#140](https://github.com/iotaledger/twin-entity-storage/issues/140)) ([45b56d6](https://github.com/iotaledger/twin-entity-storage/commit/45b56d6260c9876012030cc6c85026ea84aebff5))
184
+ * guard against empty IN list in all SQL-style connectors ([#101](https://github.com/iotaledger/twin-entity-storage/issues/101)) ([fb2bf8b](https://github.com/iotaledger/twin-entity-storage/commit/fb2bf8beb148f0c9b92661c4899e28cd4559f39a))
185
+ * handle empty conditions ([#159](https://github.com/iotaledger/twin-entity-storage/issues/159)) ([ae3319c](https://github.com/iotaledger/twin-entity-storage/commit/ae3319c3136bccc94244b2d79b3baef7a1b037d7))
186
+ * include semantics with json conversion ([4d1f37e](https://github.com/iotaledger/twin-entity-storage/commit/4d1f37ef93eba0039c39e0f12a642565ddc28394))
187
+ * migration partitions ([#182](https://github.com/iotaledger/twin-entity-storage/issues/182)) ([bcbaf26](https://github.com/iotaledger/twin-entity-storage/commit/bcbaf26f11d34beabefdfcaf8101b7c234ca5ac9))
188
+ * null secondary indexes ([#103](https://github.com/iotaledger/twin-entity-storage/issues/103)) ([5e44f11](https://github.com/iotaledger/twin-entity-storage/commit/5e44f11bb5af5bf2c27d6f1d56aba5851116ff89))
189
+ * query params force coercion ([dd6aa87](https://github.com/iotaledger/twin-entity-storage/commit/dd6aa87efdfb60bab7d6756a86888863c45c51a7))
190
+ * route GSI sort-key conditions to KeyConditionExpression and cross-connector cursor-walk tests ([#127](https://github.com/iotaledger/twin-entity-storage/issues/127)) ([6a24e1b](https://github.com/iotaledger/twin-entity-storage/commit/6a24e1b5f3b8b426987e43da3af6766d8cb68afb))
191
+ * tests and fixes for the comparisons for null and undefined ([#79](https://github.com/iotaledger/twin-entity-storage/issues/79)) ([e7ffd62](https://github.com/iotaledger/twin-entity-storage/commit/e7ffd62e9ec40ef31498e6e2350bb25d9c84638a))
192
+
193
+
194
+ ### Dependencies
195
+
196
+ * The following workspace dependencies were updated
197
+ * dependencies
198
+ * @twin.org/entity-storage-models bumped from 0.9.2-next.0 to 0.9.2-next.1
199
+ * devDependencies
200
+ * @twin.org/entity-storage-connector-memory bumped from 0.9.2-next.0 to 0.9.2-next.1
201
+
3
202
  ## [0.9.1](https://github.com/iotaledger/twin-entity-storage/compare/entity-storage-connector-postgresql-v0.9.1...entity-storage-connector-postgresql-v0.9.1) (2026-07-27)
4
203
 
5
204
 
@@ -11,6 +11,7 @@ Class for performing entity storage operations using ql.
11
11
  ## Implements
12
12
 
13
13
  - `IEntityStorageMigrationConnector`\<`T`\>
14
+ - `IHealthProviderComponent`
14
15
 
15
16
  ## Constructors
16
17
 
@@ -90,17 +91,17 @@ The class name of the component.
90
91
 
91
92
  > **health**(): `Promise`\<`IHealth`[]\>
92
93
 
93
- Get the health of the component.
94
+ Returns the health status of the component.
94
95
 
95
96
  #### Returns
96
97
 
97
98
  `Promise`\<`IHealth`[]\>
98
99
 
99
- The health of the component.
100
+ The health status of the component.
100
101
 
101
102
  #### Implementation of
102
103
 
103
- `IEntityStorageMigrationConnector.health`
104
+ `IHealthProviderComponent.health`
104
105
 
105
106
  ***
106
107
 
@@ -204,6 +205,10 @@ The optional conditions to match for the entities.
204
205
 
205
206
  The id of the entity.
206
207
 
208
+ #### Throws
209
+
210
+ ConflictError when the entity exists but the supplied conditions or version do not match the stored state.
211
+
207
212
  #### Implementation of
208
213
 
209
214
  `IEntityStorageMigrationConnector.set`
@@ -338,15 +343,33 @@ True if the teardown process was successful.
338
343
 
339
344
  ***
340
345
 
346
+ ### connectorVersion() {#connectorversion}
347
+
348
+ > **connectorVersion**(): `number`
349
+
350
+ Get the connector implementation version.
351
+
352
+ #### Returns
353
+
354
+ `number`
355
+
356
+ The connector implementation version.
357
+
358
+ #### Implementation of
359
+
360
+ `IEntityStorageMigrationConnector.connectorVersion`
361
+
362
+ ***
363
+
341
364
  ### getPartitionContextIds() {#getpartitioncontextids}
342
365
 
343
- > **getPartitionContextIds**(): `Promise`\<`IContextIds`[]\>
366
+ > **getPartitionContextIds**(): `Promise`\<`IContextIds`[] \| `undefined`\>
344
367
 
345
368
  Get all the distinct partition context ids from the storage.
346
369
 
347
370
  #### Returns
348
371
 
349
- `Promise`\<`IContextIds`[]\>
372
+ `Promise`\<`IContextIds`[] \| `undefined`\>
350
373
 
351
374
  An array of context id objects, one per unique partition.
352
375
 
@@ -49,3 +49,55 @@ The name of the database to be used.
49
49
  > **tableName**: `string`
50
50
 
51
51
  The name of the table to be used.
52
+
53
+ ***
54
+
55
+ ### pool? {#pool}
56
+
57
+ > `optional` **pool?**: `object`
58
+
59
+ Optional connection pool configuration.
60
+
61
+ #### max?
62
+
63
+ > `optional` **max?**: `number`
64
+
65
+ Maximum number of connections in the pool.
66
+
67
+ ##### Default
68
+
69
+ ```ts
70
+ 10
71
+ ```
72
+
73
+ #### idleTimeout?
74
+
75
+ > `optional` **idleTimeout?**: `number`
76
+
77
+ Seconds a connection can remain idle before being closed.
78
+
79
+ #### connectTimeout?
80
+
81
+ > `optional` **connectTimeout?**: `number`
82
+
83
+ Seconds to wait when establishing a connection.
84
+
85
+ ##### Default
86
+
87
+ ```ts
88
+ 30
89
+ ```
90
+
91
+ #### maxLifetime?
92
+
93
+ > `optional` **maxLifetime?**: `number`
94
+
95
+ Maximum seconds a connection can remain open.
96
+
97
+ ***
98
+
99
+ ### mutexTimeoutMs? {#mutextimeoutms}
100
+
101
+ > `optional` **mutexTimeoutMs?**: `number`
102
+
103
+ Milliseconds to wait for connector mutex locks before throwing.
package/locales/en.json CHANGED
@@ -11,6 +11,8 @@
11
11
  },
12
12
  "error": {
13
13
  "postgreSqlEntityStorageConnector": {
14
+ "optimisticLockFailed": "The entity \"{conflictId}\" could not be written because the optimistic lock check failed",
15
+ "conditionFailed": "The entity \"{conflictId}\" could not be updated because the supplied conditions did not match the stored state",
14
16
  "databaseCreateFailed": "Unable to create database \"{databaseName}\"",
15
17
  "setFailed": "Unable to set entity \"{id}\"",
16
18
  "getFailed": "Unable to get entity \"{id}\"",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@twin.org/entity-storage-connector-postgresql",
3
- "version": "0.9.1",
3
+ "version": "0.9.2-next.10",
4
4
  "description": "PostgreSQL connector for relational persistence and advanced SQL features.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -14,12 +14,13 @@
14
14
  "node": ">=24.0.0"
15
15
  },
16
16
  "dependencies": {
17
- "@twin.org/context": "^0.9.1",
18
- "@twin.org/core": "^0.9.1",
19
- "@twin.org/entity": "^0.9.1",
20
- "@twin.org/entity-storage-models": "^0.9.1",
21
- "@twin.org/logging-models": "^0.9.1",
22
- "@twin.org/nameof": "^0.9.1",
17
+ "@twin.org/api-models": "next",
18
+ "@twin.org/context": "next",
19
+ "@twin.org/core": "next",
20
+ "@twin.org/entity": "next",
21
+ "@twin.org/entity-storage-models": "0.9.2-next.10",
22
+ "@twin.org/logging-models": "next",
23
+ "@twin.org/nameof": "next",
23
24
  "postgres": "3.4.9"
24
25
  },
25
26
  "main": "./dist/es/index.js",