@effect-app/infra 4.0.0-beta.13 → 4.0.0-beta.131

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 (203) hide show
  1. package/CHANGELOG.md +864 -0
  2. package/dist/CUPS.d.ts +13 -5
  3. package/dist/CUPS.d.ts.map +1 -1
  4. package/dist/CUPS.js +10 -12
  5. package/dist/Emailer/service.d.ts +2 -2
  6. package/dist/Emailer/service.d.ts.map +1 -1
  7. package/dist/Emailer/service.js +3 -3
  8. package/dist/MainFiberSet.d.ts +2 -2
  9. package/dist/MainFiberSet.d.ts.map +1 -1
  10. package/dist/MainFiberSet.js +3 -3
  11. package/dist/Model/Repository/Registry.d.ts +20 -0
  12. package/dist/Model/Repository/Registry.d.ts.map +1 -0
  13. package/dist/Model/Repository/Registry.js +17 -0
  14. package/dist/Model/Repository/ext.d.ts +21 -3
  15. package/dist/Model/Repository/ext.d.ts.map +1 -1
  16. package/dist/Model/Repository/ext.js +54 -2
  17. package/dist/Model/Repository/internal/internal.d.ts +4 -4
  18. package/dist/Model/Repository/internal/internal.d.ts.map +1 -1
  19. package/dist/Model/Repository/internal/internal.js +31 -21
  20. package/dist/Model/Repository/makeRepo.d.ts +6 -5
  21. package/dist/Model/Repository/makeRepo.d.ts.map +1 -1
  22. package/dist/Model/Repository/makeRepo.js +4 -1
  23. package/dist/Model/Repository/service.d.ts +27 -22
  24. package/dist/Model/Repository/service.d.ts.map +1 -1
  25. package/dist/Model/Repository/validation.d.ts +59 -9
  26. package/dist/Model/Repository/validation.d.ts.map +1 -1
  27. package/dist/Model/Repository.d.ts +1 -0
  28. package/dist/Model/Repository.d.ts.map +1 -1
  29. package/dist/Model/Repository.js +2 -1
  30. package/dist/Model/query/new-kid-interpreter.d.ts.map +1 -1
  31. package/dist/Model/query/new-kid-interpreter.js +3 -3
  32. package/dist/Model.d.ts +1 -0
  33. package/dist/Model.d.ts.map +1 -1
  34. package/dist/Model.js +2 -1
  35. package/dist/Operations.d.ts +4 -4
  36. package/dist/Operations.d.ts.map +1 -1
  37. package/dist/Operations.js +56 -59
  38. package/dist/OperationsRepo.d.ts +4 -4
  39. package/dist/OperationsRepo.d.ts.map +1 -1
  40. package/dist/OperationsRepo.js +3 -3
  41. package/dist/QueueMaker/SQLQueue.d.ts +3 -6
  42. package/dist/QueueMaker/SQLQueue.d.ts.map +1 -1
  43. package/dist/QueueMaker/SQLQueue.js +105 -114
  44. package/dist/QueueMaker/errors.d.ts +1 -1
  45. package/dist/QueueMaker/errors.d.ts.map +1 -1
  46. package/dist/QueueMaker/memQueue.d.ts +6 -3
  47. package/dist/QueueMaker/memQueue.d.ts.map +1 -1
  48. package/dist/QueueMaker/memQueue.js +51 -62
  49. package/dist/QueueMaker/sbqueue.d.ts +5 -2
  50. package/dist/QueueMaker/sbqueue.d.ts.map +1 -1
  51. package/dist/QueueMaker/sbqueue.js +36 -52
  52. package/dist/RequestContext.d.ts +51 -21
  53. package/dist/RequestContext.d.ts.map +1 -1
  54. package/dist/RequestContext.js +5 -5
  55. package/dist/RequestFiberSet.d.ts +2 -2
  56. package/dist/RequestFiberSet.d.ts.map +1 -1
  57. package/dist/RequestFiberSet.js +5 -5
  58. package/dist/Store/ContextMapContainer.d.ts +18 -2
  59. package/dist/Store/ContextMapContainer.d.ts.map +1 -1
  60. package/dist/Store/ContextMapContainer.js +13 -3
  61. package/dist/Store/Cosmos.d.ts.map +1 -1
  62. package/dist/Store/Cosmos.js +308 -242
  63. package/dist/Store/Disk.d.ts +1 -1
  64. package/dist/Store/Disk.d.ts.map +1 -1
  65. package/dist/Store/Disk.js +25 -22
  66. package/dist/Store/Memory.d.ts +3 -3
  67. package/dist/Store/Memory.d.ts.map +1 -1
  68. package/dist/Store/Memory.js +27 -22
  69. package/dist/Store/SQL/Pg.d.ts +4 -0
  70. package/dist/Store/SQL/Pg.d.ts.map +1 -0
  71. package/dist/Store/SQL/Pg.js +189 -0
  72. package/dist/Store/SQL/query.d.ts +38 -0
  73. package/dist/Store/SQL/query.d.ts.map +1 -0
  74. package/dist/Store/SQL/query.js +367 -0
  75. package/dist/Store/SQL.d.ts +20 -0
  76. package/dist/Store/SQL.d.ts.map +1 -0
  77. package/dist/Store/SQL.js +381 -0
  78. package/dist/Store/index.d.ts +4 -1
  79. package/dist/Store/index.d.ts.map +1 -1
  80. package/dist/Store/index.js +15 -3
  81. package/dist/Store/service.d.ts +16 -5
  82. package/dist/Store/service.d.ts.map +1 -1
  83. package/dist/Store/service.js +24 -6
  84. package/dist/Store/utils.d.ts.map +1 -1
  85. package/dist/Store/utils.js +3 -4
  86. package/dist/adapters/ServiceBus.d.ts +6 -6
  87. package/dist/adapters/ServiceBus.d.ts.map +1 -1
  88. package/dist/adapters/ServiceBus.js +13 -15
  89. package/dist/adapters/cosmos-client.d.ts +2 -2
  90. package/dist/adapters/cosmos-client.d.ts.map +1 -1
  91. package/dist/adapters/cosmos-client.js +3 -3
  92. package/dist/adapters/logger.d.ts.map +1 -1
  93. package/dist/adapters/memQueue.d.ts +2 -2
  94. package/dist/adapters/memQueue.d.ts.map +1 -1
  95. package/dist/adapters/memQueue.js +3 -3
  96. package/dist/adapters/mongo-client.d.ts +2 -2
  97. package/dist/adapters/mongo-client.d.ts.map +1 -1
  98. package/dist/adapters/mongo-client.js +3 -3
  99. package/dist/adapters/redis-client.d.ts +2 -2
  100. package/dist/adapters/redis-client.d.ts.map +1 -1
  101. package/dist/adapters/redis-client.js +3 -3
  102. package/dist/api/ContextProvider.d.ts +6 -6
  103. package/dist/api/ContextProvider.d.ts.map +1 -1
  104. package/dist/api/ContextProvider.js +6 -6
  105. package/dist/api/internal/auth.d.ts +42 -4
  106. package/dist/api/internal/auth.d.ts.map +1 -1
  107. package/dist/api/internal/auth.js +160 -29
  108. package/dist/api/internal/events.d.ts +2 -2
  109. package/dist/api/internal/events.d.ts.map +1 -1
  110. package/dist/api/internal/events.js +11 -7
  111. package/dist/api/layerUtils.d.ts +5 -5
  112. package/dist/api/layerUtils.d.ts.map +1 -1
  113. package/dist/api/layerUtils.js +5 -5
  114. package/dist/api/routing/middleware/RouterMiddleware.d.ts +3 -3
  115. package/dist/api/routing/middleware/RouterMiddleware.d.ts.map +1 -1
  116. package/dist/api/routing/middleware/middleware.d.ts +37 -1
  117. package/dist/api/routing/middleware/middleware.d.ts.map +1 -1
  118. package/dist/api/routing/middleware/middleware.js +45 -14
  119. package/dist/api/routing.d.ts +4 -6
  120. package/dist/api/routing.d.ts.map +1 -1
  121. package/dist/api/routing.js +13 -6
  122. package/dist/api/setupRequest.d.ts +6 -3
  123. package/dist/api/setupRequest.d.ts.map +1 -1
  124. package/dist/api/setupRequest.js +11 -6
  125. package/dist/errorReporter.d.ts +3 -3
  126. package/dist/errorReporter.d.ts.map +1 -1
  127. package/dist/errorReporter.js +16 -23
  128. package/dist/logger.d.ts.map +1 -1
  129. package/dist/rateLimit.d.ts +8 -2
  130. package/dist/rateLimit.d.ts.map +1 -1
  131. package/dist/rateLimit.js +5 -11
  132. package/examples/query.ts +30 -26
  133. package/package.json +36 -22
  134. package/src/CUPS.ts +9 -11
  135. package/src/Emailer/service.ts +2 -2
  136. package/src/MainFiberSet.ts +2 -2
  137. package/src/Model/Repository/Registry.ts +33 -0
  138. package/src/Model/Repository/ext.ts +93 -6
  139. package/src/Model/Repository/internal/internal.ts +84 -76
  140. package/src/Model/Repository/makeRepo.ts +11 -8
  141. package/src/Model/Repository/service.ts +31 -22
  142. package/src/Model/Repository.ts +1 -0
  143. package/src/Model/query/new-kid-interpreter.ts +2 -2
  144. package/src/Model.ts +1 -0
  145. package/src/Operations.ts +78 -113
  146. package/src/OperationsRepo.ts +2 -2
  147. package/src/QueueMaker/SQLQueue.ts +121 -151
  148. package/src/QueueMaker/memQueue.ts +82 -103
  149. package/src/QueueMaker/sbqueue.ts +55 -85
  150. package/src/RequestContext.ts +4 -4
  151. package/src/RequestFiberSet.ts +4 -4
  152. package/src/Store/ContextMapContainer.ts +41 -2
  153. package/src/Store/Cosmos.ts +437 -343
  154. package/src/Store/Disk.ts +52 -49
  155. package/src/Store/Memory.ts +54 -48
  156. package/src/Store/SQL/Pg.ts +318 -0
  157. package/src/Store/SQL/query.ts +409 -0
  158. package/src/Store/SQL.ts +668 -0
  159. package/src/Store/index.ts +17 -2
  160. package/src/Store/service.ts +31 -7
  161. package/src/Store/utils.ts +23 -22
  162. package/src/adapters/ServiceBus.ts +111 -115
  163. package/src/adapters/cosmos-client.ts +2 -2
  164. package/src/adapters/memQueue.ts +2 -2
  165. package/src/adapters/mongo-client.ts +2 -2
  166. package/src/adapters/redis-client.ts +2 -2
  167. package/src/api/ContextProvider.ts +11 -11
  168. package/src/api/internal/auth.ts +246 -44
  169. package/src/api/internal/events.ts +14 -9
  170. package/src/api/layerUtils.ts +8 -8
  171. package/src/api/routing/middleware/RouterMiddleware.ts +4 -4
  172. package/src/api/routing/middleware/middleware.ts +52 -12
  173. package/src/api/routing.ts +17 -7
  174. package/src/api/setupRequest.ts +27 -7
  175. package/src/errorReporter.ts +58 -72
  176. package/src/rateLimit.ts +30 -22
  177. package/test/auth.test.ts +101 -0
  178. package/test/contextProvider.test.ts +11 -11
  179. package/test/controller.test.ts +18 -13
  180. package/test/dist/auth.test.d.ts.map +1 -0
  181. package/test/dist/contextProvider.test.d.ts.map +1 -1
  182. package/test/dist/controller.test.d.ts.map +1 -1
  183. package/test/dist/date-query.test.d.ts.map +1 -0
  184. package/test/dist/fixtures.d.ts +19 -9
  185. package/test/dist/fixtures.d.ts.map +1 -1
  186. package/test/dist/fixtures.js +11 -9
  187. package/test/dist/query.test.d.ts.map +1 -1
  188. package/test/dist/rawQuery.test.d.ts.map +1 -1
  189. package/test/dist/repository-ext.test.d.ts.map +1 -0
  190. package/test/dist/requires.test.d.ts.map +1 -1
  191. package/test/dist/routing-interruptibility.test.d.ts.map +1 -0
  192. package/test/dist/rpc-multi-middleware.test.d.ts.map +1 -1
  193. package/test/dist/sql-store.test.d.ts.map +1 -0
  194. package/test/fixtures.ts +10 -8
  195. package/test/query.test.ts +209 -31
  196. package/test/rawQuery.test.ts +23 -19
  197. package/test/repository-ext.test.ts +58 -0
  198. package/test/requires.test.ts +6 -5
  199. package/test/routing-interruptibility.test.ts +63 -0
  200. package/test/rpc-multi-middleware.test.ts +72 -3
  201. package/test/sql-store.test.ts +1064 -0
  202. package/test/validateSample.test.ts +12 -9
  203. package/tsconfig.json +0 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,869 @@
1
1
  # @effect-app/infra
2
2
 
3
+ ## 4.0.0-beta.131
4
+
5
+ ### Patch Changes
6
+
7
+ - 4a7d95a: Use request-type RPC annotations to drive interruptibility and retry behavior, apply command uninterruptibility through the router wrapper path, and add an in-memory E2E test covering command vs query interruption behavior.
8
+ - effect-app@4.0.0-beta.131
9
+
10
+ ## 4.0.0-beta.130
11
+
12
+ ### Patch Changes
13
+
14
+ - Updated dependencies [ea1bd46]
15
+ - effect-app@4.0.0-beta.130
16
+
17
+ ## 4.0.0-beta.129
18
+
19
+ ### Patch Changes
20
+
21
+ - effect-app@4.0.0-beta.129
22
+
23
+ ## 4.0.0-beta.128
24
+
25
+ ### Patch Changes
26
+
27
+ - Updated dependencies [57db551]
28
+ - effect-app@4.0.0-beta.128
29
+
30
+ ## 4.0.0-beta.127
31
+
32
+ ### Patch Changes
33
+
34
+ - 71a0719: Merge `batchPar` into `batch`, expose `concurrency` via an optional `BatchOptions` argument, and make `batch` dual (data-first + data-last).
35
+ - 4bc3d05: Repository `save`, `remove`, and `removeById` now accept plain `ReadonlyArray` instead of `NonEmptyReadonlyArray`. Callers no longer need to narrow or guard for non-emptiness before invoking — empty inputs short-circuit to a no-op, making it ergonomic to pass through query results directly.
36
+ - effect-app@4.0.0-beta.127
37
+
38
+ ## 4.0.0-beta.126
39
+
40
+ ### Patch Changes
41
+
42
+ - Updated dependencies [458bb1b]
43
+ - effect-app@4.0.0-beta.126
44
+
45
+ ## 4.0.0-beta.125
46
+
47
+ ### Patch Changes
48
+
49
+ - 7191fc1: `removeById` now takes `id | NonEmptyReadonlyArray<id>` instead of a variadic rest, and the extended repo's `removeById` accepts a `batch` option to chunk large deletes — consistent with `save` and `remove`.
50
+ - effect-app@4.0.0-beta.125
51
+
52
+ ## 4.0.0-beta.124
53
+
54
+ ### Patch Changes
55
+
56
+ - c9e0c44: cleanup auth
57
+ - 256ae85: cleanup
58
+ - Updated dependencies [256ae85]
59
+ - effect-app@4.0.0-beta.124
60
+
61
+ ## 4.0.0-beta.123
62
+
63
+ ### Patch Changes
64
+
65
+ - Updated dependencies [14aba14]
66
+ - effect-app@4.0.0-beta.123
67
+
68
+ ## 4.0.0-beta.122
69
+
70
+ ### Patch Changes
71
+
72
+ - 27bf9b6: Fix `Repository.query` environment typing to exclude schema context provided through `makeRepo` options.
73
+ - e02a258: Add optional batching overloads for repository `save` and `remove` helpers.
74
+ - f052d38: Replace `(...) => Effect.gen` with `Effect.fnUntraced` and convert select multi-step `pipe` chains to `Effect.gen` across infra.
75
+ - Updated dependencies [f052d38]
76
+ - effect-app@4.0.0-beta.122
77
+
78
+ ## 4.0.0-beta.121
79
+
80
+ ### Patch Changes
81
+
82
+ - 1015582: Fix `Q.project` field selection with `Schema.encodeKeys` by deriving selected fields from the encoded schema shape.
83
+ - Updated dependencies [5ac46cb]
84
+ - effect-app@4.0.0-beta.121
85
+
86
+ ## 4.0.0-beta.120
87
+
88
+ ### Patch Changes
89
+
90
+ - Updated dependencies [f21190c]
91
+ - effect-app@4.0.0-beta.120
92
+
93
+ ## 4.0.0-beta.119
94
+
95
+ ### Patch Changes
96
+
97
+ - db7ba34: Filter SSE events stream by storeId namespace
98
+ - effect-app@4.0.0-beta.119
99
+
100
+ ## 4.0.0-beta.118
101
+
102
+ ### Patch Changes
103
+
104
+ - Update effect packages to 4.0.0-beta.52
105
+ - Updated dependencies [bd26832]
106
+ - Updated dependencies [08d2e70]
107
+ - Updated dependencies
108
+ - effect-app@4.0.0-beta.118
109
+
110
+ ## 4.0.0-beta.117
111
+
112
+ ### Patch Changes
113
+
114
+ - 1d85785: Wrap store seed effects with `Effect.uninterruptible` to prevent interruption during seeding
115
+ - effect-app@4.0.0-beta.117
116
+
117
+ ## 4.0.0-beta.116
118
+
119
+ ### Patch Changes
120
+
121
+ - 7d5cefc: SQL and Pg stores now scope seed migration records by namespace and table name in shared databases to avoid cross-namespace seed collisions.
122
+ - effect-app@4.0.0-beta.116
123
+
124
+ ## 4.0.0-beta.115
125
+
126
+ ### Patch Changes
127
+
128
+ - fe2caba: SQL and Pg stores: use separate `_migrations` table for seed tracking instead of inserting a marker row into the data table, preventing it from appearing in `all`/`filter` queries.
129
+ - effect-app@4.0.0-beta.115
130
+
131
+ ## 4.0.0-beta.114
132
+
133
+ ### Patch Changes
134
+
135
+ - 1ab3cf7: SQLite per-namespace adapter: use separate `_migrations` table for seed tracking instead of inserting a marker row into the data table, preventing it from appearing in `all`/`filter` queries.
136
+ - effect-app@4.0.0-beta.114
137
+
138
+ ## 4.0.0-beta.113
139
+
140
+ ### Minor Changes
141
+
142
+ - ddc5492: Add RepositoryRegistry service that tracks all repositories by modelName, with `seedNamespace` to seed all registered repos in parallel and `entries` to inspect the registry.
143
+
144
+ Make non-primary namespace seeding explicit: Store and Repository now expose `seedNamespace` instead of auto-seeding on access. Primary namespace is still seeded eagerly on initialization.
145
+
146
+ SQL stores: table creation (`CREATE TABLE IF NOT EXISTS`) is now part of `seedNamespace` instead of running eagerly at store construction, ensuring tables for non-primary namespaces are only created when explicitly seeded.
147
+
148
+ ### Patch Changes
149
+
150
+ - effect-app@4.0.0-beta.113
151
+
152
+ ## 4.0.0-beta.112
153
+
154
+ ### Patch Changes
155
+
156
+ - 8a4a6d2: fup
157
+ - effect-app@4.0.0-beta.112
158
+
159
+ ## 4.0.0-beta.111
160
+
161
+ ### Patch Changes
162
+
163
+ - ca94edf: fix typo
164
+ - Updated dependencies [ca94edf]
165
+ - effect-app@4.0.0-beta.111
166
+
167
+ ## 4.0.0-beta.110
168
+
169
+ ### Minor Changes
170
+
171
+ - c313c07: Add per-namespace in-memory SQLite adapter via LayerMap. When `makeSqlClientLayer` option is provided to `SQLiteStoreLayer`, each namespace gets its own SQLite database instance managed by a `LayerMap`. Introduces `WithNsTransaction` service for namespace-aware SQL transactions, used by `makeSqlTransactionMiddleware`.
172
+
173
+ ### Patch Changes
174
+
175
+ - effect-app@4.0.0-beta.110
176
+
177
+ ## 4.0.0-beta.109
178
+
179
+ ### Patch Changes
180
+
181
+ - 82f66f1: use uninterruptiple
182
+ - effect-app@4.0.0-beta.109
183
+
184
+ ## 4.0.0-beta.108
185
+
186
+ ### Patch Changes
187
+
188
+ - Updated dependencies [3e46e7b]
189
+ - effect-app@4.0.0-beta.108
190
+
191
+ ## 4.0.0-beta.107
192
+
193
+ ### Patch Changes
194
+
195
+ - 902ca1b: fix
196
+ - effect-app@4.0.0-beta.107
197
+
198
+ ## 4.0.0-beta.106
199
+
200
+ ### Patch Changes
201
+
202
+ - f22a026: Use `Effect.cached` in `getOrCreateStoreEffect` for proper memoization of the resolver effect.
203
+ - effect-app@4.0.0-beta.106
204
+
205
+ ## 4.0.0-beta.105
206
+
207
+ ### Minor Changes
208
+
209
+ - 3d732b1: Rewrite `withRequestResolverCache` to use official `RequestResolver.withCache`, creating a cached resolver per ContextMap via `getOrCreateStoreEffect` with semaphore-guarded initialization.
210
+
211
+ ### Patch Changes
212
+
213
+ - 47e53f5: Fix `withRequestResolverCache` causing "RequestResolver did not complete request" errors by using the `preCheck` hook instead of handling cache in `runAll`. Cache hits for in-flight or completed requests are now handled before entries enter the batch, preventing uncompleted entries.
214
+ - 5773159: Add `itemType` annotation to all repository spans
215
+ - effect-app@4.0.0-beta.105
216
+
217
+ ## 4.0.0-beta.104
218
+
219
+ ### Patch Changes
220
+
221
+ - Updated dependencies [e944bca]
222
+ - effect-app@4.0.0-beta.104
223
+
224
+ ## 4.0.0-beta.103
225
+
226
+ ### Patch Changes
227
+
228
+ - Updated dependencies [7119320]
229
+ - effect-app@4.0.0-beta.103
230
+
231
+ ## 4.0.0-beta.102
232
+
233
+ ### Patch Changes
234
+
235
+ - 62627e9: Fix boolean handling in SQL SELECT and WHERE
236
+ - effect-app@4.0.0-beta.102
237
+
238
+ ## 4.0.0-beta.101
239
+
240
+ ### Patch Changes
241
+
242
+ - effect-app@4.0.0-beta.101
243
+
244
+ ## 4.0.0-beta.100
245
+
246
+ ### Patch Changes
247
+
248
+ - 43611c7: enable cosmosdb large partition key hashes
249
+ - effect-app@4.0.0-beta.100
250
+
251
+ ## 4.0.0-beta.99
252
+
253
+ ### Patch Changes
254
+
255
+ - 6a0e008: remove artificial Cosmos bulkSet delays
256
+ - effect-app@4.0.0-beta.99
257
+
258
+ ## 4.0.0-beta.98
259
+
260
+ ### Patch Changes
261
+
262
+ - 5aed2e3: Add span to Cosmos `batchRemove` and include `namespace` attribute on all Cosmos store spans.
263
+ - effect-app@4.0.0-beta.98
264
+
265
+ ## 4.0.0-beta.97
266
+
267
+ ### Patch Changes
268
+
269
+ - 3eb66e9: Fix CosmosDB store `filter` to trigger namespace seeding on first access. Previously, if `filter` was the first operation called on a namespace, seed data was never created.
270
+ - effect-app@4.0.0-beta.97
271
+
272
+ ## 4.0.0-beta.96
273
+
274
+ ### Patch Changes
275
+
276
+ - Updated dependencies [5615e47]
277
+ - effect-app@4.0.0-beta.96
278
+
279
+ ## 4.0.0-beta.95
280
+
281
+ ### Patch Changes
282
+
283
+ - 88838fb: Remove pick/omit customizations from Class/TaggedClass/Struct/TaggedStruct. Use `Struct.pick(X.fields, [...])` from `effect-app` instead.
284
+ - Updated dependencies [88838fb]
285
+ - effect-app@4.0.0-beta.95
286
+
287
+ ## 4.0.0-beta.94
288
+
289
+ ### Patch Changes
290
+
291
+ - effect-app@4.0.0-beta.94
292
+
293
+ ## 4.0.0-beta.93
294
+
295
+ ### Patch Changes
296
+
297
+ - 2d85646: fix SQL includes-any/all double-quoting values for SQLite (JSON.stringify only needed for Postgres jsonb)
298
+ - effect-app@4.0.0-beta.93
299
+
300
+ ## 4.0.0-beta.92
301
+
302
+ ### Patch Changes
303
+
304
+ - b4ffee0: fix SQL whereEvery double-negation bug causing wrong query when operators like notIn are used (especially with empty arrays)
305
+ - effect-app@4.0.0-beta.92
306
+
307
+ ## 4.0.0-beta.91
308
+
309
+ ### Patch Changes
310
+
311
+ - Updated dependencies [738b482]
312
+ - effect-app@4.0.0-beta.91
313
+
314
+ ## 4.0.0-beta.90
315
+
316
+ ### Patch Changes
317
+
318
+ - d786b91: Fix SQL `whereSome`/`whereEvery` array relation queries using `EXISTS` with `json_each` (SQLite) / `jsonb_array_elements` (Pg).
319
+ - effect-app@4.0.0-beta.90
320
+
321
+ ## 4.0.0-beta.89
322
+
323
+ ### Patch Changes
324
+
325
+ - 9a9e46c: Fix SQL select queries to read `_etag` from column instead of JSON data, preventing INSERT on update.
326
+ - effect-app@4.0.0-beta.89
327
+
328
+ ## 4.0.0-beta.88
329
+
330
+ ### Patch Changes
331
+
332
+ - dfd5562: Fix SQL `IN`/`NOT IN` with null values to use `IS NULL`/`IS NOT NULL` instead of `IN (NULL, ...)`.
333
+ - effect-app@4.0.0-beta.88
334
+
335
+ ## 4.0.0-beta.87
336
+
337
+ ### Patch Changes
338
+
339
+ - 5a709d1: Fix SQLite select query type coercion using `json_quote` and apply defaultValues in SQL WHERE clauses via `COALESCE`.
340
+ - effect-app@4.0.0-beta.87
341
+
342
+ ## 4.0.0-beta.86
343
+
344
+ ### Patch Changes
345
+
346
+ - 70f1f27: Fix store seeding: break circular dependency where bulkSet re-entered seedNamespace, and add explicit seed markers to SQL/Pg stores using a dedicated `__seed__` namespace.
347
+ - effect-app@4.0.0-beta.86
348
+
349
+ ## 4.0.0-beta.85
350
+
351
+ ### Patch Changes
352
+
353
+ - db285e9: Add per-namespace seeding to SQL (SQLite/PostgreSQL) and CosmosDB store adapters. Previously only the `primary` namespace was seeded at initialization; now each namespace is lazily seeded on first access using `Effect.cached` to guarantee at-most-once execution. Primary namespace continues to seed eagerly on initialization. CosmosDB uses namespace-specific marker documents for backward compatibility.
354
+ - effect-app@4.0.0-beta.85
355
+
356
+ ## 4.0.0-beta.84
357
+
358
+ ### Patch Changes
359
+
360
+ - c80e781: Fix SQLite store namespace parameter ordering in filter queries. The `_namespace` placeholder was prepended to the WHERE clause but its value was appended to the end of the positional params array, causing it to bind to the wrong placeholder. PostgreSQL was unaffected (uses indexed `$N` placeholders).
361
+ - effect-app@4.0.0-beta.84
362
+
363
+ ## 4.0.0-beta.83
364
+
365
+ ### Patch Changes
366
+
367
+ - d1fc90a: Strip `_etag` and `id` from the `data` JSON column in SQL store adapters (SQLite + PostgreSQL). These fields are already stored as dedicated columns and were redundantly duplicated inside the JSON blob. On read, `parseRow` now re-injects `id` from the row column. Backward compatible: existing rows with `_etag`/`id` in `data` continue to work as the column values take precedence.
368
+ - effect-app@4.0.0-beta.83
369
+
370
+ ## 4.0.0-beta.82
371
+
372
+ ### Minor Changes
373
+
374
+ - 48f1457: Add storage namespace support to CosmosDB adapter via partition key prefixing. When `allowNamespace` is configured, the namespace from `storeId` is prepended to partition key values (e.g., `test-ns::primary`), isolating data per namespace within the same container.
375
+ - 48f1457: Add storage namespace support to SQL adapters (SQLite and Postgres) via a `_namespace` column. When `allowNamespace` is configured, a `_namespace` column with composite primary key `(id, _namespace)` isolates data per namespace within the same table. New tables get the schema automatically; existing tables require manual migration.
376
+ - 48f1457: Add SQL Store adapter for Effect SQL (SQLite + PostgreSQL). Table-per-repo with id/etag/data JSON columns, query DSL translation to SQL WHERE clauses, optimistic concurrency via etag.
377
+ - 48f1457: Make `withSqlTransaction` in `setupRequest` configurable via `withTransaction` option (defaults to `false`). Add `requiresTransactionConfig` and `makeSqlTransactionMiddleware` for per-RPC transaction control as a dynamic middleware that requires `SqlClient` directly. Transactions are disabled by default; opt in with `withTransaction: true` or `requiresTransaction: true`.
378
+
379
+ ### Patch Changes
380
+
381
+ - effect-app@4.0.0-beta.82
382
+
383
+ ## 4.0.0-beta.81
384
+
385
+ ### Minor Changes
386
+
387
+ - fd67f0b: Add `withRequestResolverCache` to scope RequestResolver cache to the ContextMap (request-scoped). Add `getOrCreateStore` to ContextMap for generic scoped storage.
388
+
389
+ ### Patch Changes
390
+
391
+ - effect-app@4.0.0-beta.81
392
+
393
+ ## 4.0.0-beta.80
394
+
395
+ ### Patch Changes
396
+
397
+ - eaf0115: enforce local
398
+ - effect-app@4.0.0-beta.80
399
+
400
+ ## 4.0.0-beta.79
401
+
402
+ ### Patch Changes
403
+
404
+ - d16845e: Remove `TaggedRequest` from `makeRpcClient`, now only `TaggedRequestFor` is returned. Remove all legacy `meta.moduleName` support — `id` and `moduleName` are now required on `Req` type. Remove `makeRpcGroup` (use `makeRpcGroupFromRequestsAndModuleName` instead).
405
+ - Updated dependencies [d16845e]
406
+ - effect-app@4.0.0-beta.79
407
+
408
+ ## 4.0.0-beta.78
409
+
410
+ ### Minor Changes
411
+
412
+ - 818e047: Router `matchFor` no longer requires `meta` property on resource when requests carry `moduleName` from `TaggedRequestFor`
413
+
414
+ ### Patch Changes
415
+
416
+ - effect-app@4.0.0-beta.78
417
+
418
+ ## 4.0.0-beta.77
419
+
420
+ ### Patch Changes
421
+
422
+ - Updated dependencies [3613e87]
423
+ - effect-app@4.0.0-beta.77
424
+
425
+ ## 4.0.0-beta.76
426
+
427
+ ### Patch Changes
428
+
429
+ - fac725d: update effect to latest beta
430
+ - Updated dependencies [a5248a9]
431
+ - Updated dependencies [fac725d]
432
+ - effect-app@4.0.0-beta.76
433
+
434
+ ## 4.0.0-beta.75
435
+
436
+ ### Patch Changes
437
+
438
+ - Updated dependencies [24f0a5a]
439
+ - effect-app@4.0.0-beta.75
440
+
441
+ ## 4.0.0-beta.74
442
+
443
+ ### Patch Changes
444
+
445
+ - Updated dependencies [54ec1ef]
446
+ - effect-app@4.0.0-beta.74
447
+
448
+ ## 4.0.0-beta.73
449
+
450
+ ### Patch Changes
451
+
452
+ - b53c59e: fix signature
453
+ - effect-app@4.0.0-beta.73
454
+
455
+ ## 4.0.0-beta.72
456
+
457
+ ### Patch Changes
458
+
459
+ - Updated dependencies [0541f0d]
460
+ - effect-app@4.0.0-beta.72
461
+
462
+ ## 4.0.0-beta.71
463
+
464
+ ### Patch Changes
465
+
466
+ - beae3a0: Remove `withDefaultConstructor` wrapper, use `S.withConstructorDefault` directly with `Effect.succeed`/`Effect.sync`.
467
+ - Updated dependencies [beae3a0]
468
+ - effect-app@4.0.0-beta.71
469
+
470
+ ## 4.0.0-beta.70
471
+
472
+ ### Patch Changes
473
+
474
+ - fdb9cb3: cleanup
475
+ - effect-app@4.0.0-beta.70
476
+
477
+ ## 4.0.0-beta.69
478
+
479
+ ### Patch Changes
480
+
481
+ - dc465e3: update to latest effect beta
482
+ - Updated dependencies [dc465e3]
483
+ - effect-app@4.0.0-beta.69
484
+
485
+ ## 4.0.0-beta.68
486
+
487
+ ### Patch Changes
488
+
489
+ - Updated dependencies [e6f2341]
490
+ - effect-app@4.0.0-beta.68
491
+
492
+ ## 4.0.0-beta.67
493
+
494
+ ### Patch Changes
495
+
496
+ - effect-app@4.0.0-beta.67
497
+
498
+ ## 4.0.0-beta.66
499
+
500
+ ### Patch Changes
501
+
502
+ - Updated dependencies [edc52e4]
503
+ - effect-app@4.0.0-beta.66
504
+
505
+ ## 4.0.0-beta.65
506
+
507
+ ### Patch Changes
508
+
509
+ - Updated dependencies [31739d7]
510
+ - Updated dependencies [1f103b2]
511
+ - effect-app@4.0.0-beta.65
512
+
513
+ ## 4.0.0-beta.64
514
+
515
+ ### Patch Changes
516
+
517
+ - Updated dependencies [c1a6fdc]
518
+ - effect-app@4.0.0-beta.64
519
+
520
+ ## 4.0.0-beta.63
521
+
522
+ ### Patch Changes
523
+
524
+ - 1f9d7da: fix missing toCodecJson usages
525
+ - effect-app@4.0.0-beta.63
526
+
527
+ ## 4.0.0-beta.62
528
+
529
+ ### Patch Changes
530
+
531
+ - Updated dependencies [0b21a02]
532
+ - effect-app@4.0.0-beta.62
533
+
534
+ ## 4.0.0-beta.61
535
+
536
+ ### Patch Changes
537
+
538
+ - effect-app@4.0.0-beta.61
539
+
540
+ ## 4.0.0-beta.60
541
+
542
+ ### Patch Changes
543
+
544
+ - 29c39d2: Fix repository `find` with transformed id fields in tagged union schemas
545
+ - effect-app@4.0.0-beta.60
546
+
547
+ ## 4.0.0-beta.59
548
+
549
+ ### Patch Changes
550
+
551
+ - cec026d: update packages
552
+ - Updated dependencies [cec026d]
553
+ - effect-app@4.0.0-beta.59
554
+
555
+ ## 4.0.0-beta.58
556
+
557
+ ### Patch Changes
558
+
559
+ - effect-app@4.0.0-beta.58
560
+
561
+ ## 4.0.0-beta.57
562
+
563
+ ### Patch Changes
564
+
565
+ - fbf47b8: Fix repository `find` with transformed id fields (e.g. composite ids using `decodeTo`)
566
+ - effect-app@4.0.0-beta.57
567
+
568
+ ## 4.0.0-beta.56
569
+
570
+ ### Patch Changes
571
+
572
+ - effect-app@4.0.0-beta.56
573
+
574
+ ## 4.0.0-beta.55
575
+
576
+ ### Patch Changes
577
+
578
+ - effect-app@4.0.0-beta.55
579
+
580
+ ## 4.0.0-beta.54
581
+
582
+ ### Patch Changes
583
+
584
+ - d867272: the return of `Context`
585
+ - Updated dependencies [d867272]
586
+ - effect-app@4.0.0-beta.54
587
+
588
+ ## 4.0.0-beta.53
589
+
590
+ ### Patch Changes
591
+
592
+ - Updated dependencies [ee9694e]
593
+ - effect-app@4.0.0-beta.53
594
+
595
+ ## 4.0.0-beta.52
596
+
597
+ ### Patch Changes
598
+
599
+ - Updated dependencies [6252808]
600
+ - effect-app@4.0.0-beta.52
601
+
602
+ ## 4.0.0-beta.51
603
+
604
+ ### Patch Changes
605
+
606
+ - effect-app@4.0.0-beta.51
607
+
608
+ ## 4.0.0-beta.50
609
+
610
+ ### Patch Changes
611
+
612
+ - effect-app@4.0.0-beta.50
613
+
614
+ ## 4.0.0-beta.49
615
+
616
+ ### Patch Changes
617
+
618
+ - Updated dependencies [e585c9c]
619
+ - effect-app@4.0.0-beta.49
620
+
621
+ ## 4.0.0-beta.48
622
+
623
+ ### Patch Changes
624
+
625
+ - Updated dependencies [0c88f78]
626
+ - effect-app@4.0.0-beta.48
627
+
628
+ ## 4.0.0-beta.47
629
+
630
+ ### Patch Changes
631
+
632
+ - Updated dependencies [3365758]
633
+ - effect-app@4.0.0-beta.47
634
+
635
+ ## 4.0.0-beta.46
636
+
637
+ ### Patch Changes
638
+
639
+ - effect-app@4.0.0-beta.46
640
+
641
+ ## 4.0.0-beta.45
642
+
643
+ ### Patch Changes
644
+
645
+ - 10b55ff: update packages
646
+ - Updated dependencies [10b55ff]
647
+ - effect-app@4.0.0-beta.45
648
+
649
+ ## 4.0.0-beta.44
650
+
651
+ ### Patch Changes
652
+
653
+ - a37aa38: Update to effect beta 43
654
+ - Updated dependencies [a37aa38]
655
+ - effect-app@4.0.0-beta.44
656
+
657
+ ## 4.0.0-beta.43
658
+
659
+ ### Patch Changes
660
+
661
+ - dab6992: no need for .lock.lock
662
+ - effect-app@4.0.0-beta.43
663
+
664
+ ## 4.0.0-beta.42
665
+
666
+ ### Patch Changes
667
+
668
+ - effect-app@4.0.0-beta.42
669
+
670
+ ## 4.0.0-beta.41
671
+
672
+ ### Patch Changes
673
+
674
+ - effect-app@4.0.0-beta.41
675
+
676
+ ## 4.0.0-beta.40
677
+
678
+ ### Patch Changes
679
+
680
+ - effect-app@4.0.0-beta.40
681
+
682
+ ## 4.0.0-beta.39
683
+
684
+ ### Patch Changes
685
+
686
+ - Updated dependencies [10e90d5]
687
+ - effect-app@4.0.0-beta.39
688
+
689
+ ## 4.0.0-beta.38
690
+
691
+ ### Patch Changes
692
+
693
+ - Updated dependencies [0b3e00e]
694
+ - effect-app@4.0.0-beta.38
695
+
696
+ ## 4.0.0-beta.37
697
+
698
+ ### Patch Changes
699
+
700
+ - Updated dependencies [947fe20]
701
+ - effect-app@4.0.0-beta.37
702
+
703
+ ## 4.0.0-beta.36
704
+
705
+ ### Patch Changes
706
+
707
+ - effect-app@4.0.0-beta.36
708
+
709
+ ## 4.0.0-beta.35
710
+
711
+ ### Patch Changes
712
+
713
+ - effect-app@4.0.0-beta.35
714
+
715
+ ## 4.0.0-beta.34
716
+
717
+ ### Patch Changes
718
+
719
+ - 8c645d5: update to latest effect
720
+ - Updated dependencies [8c645d5]
721
+ - effect-app@4.0.0-beta.34
722
+
723
+ ## 4.0.0-beta.33
724
+
725
+ ### Patch Changes
726
+
727
+ - 4b95009: use Finite instead of Number
728
+ - Updated dependencies [4b95009]
729
+ - effect-app@4.0.0-beta.33
730
+
731
+ ## 4.0.0-beta.32
732
+
733
+ ### Patch Changes
734
+
735
+ - Updated dependencies [01d862a]
736
+ - effect-app@4.0.0-beta.32
737
+
738
+ ## 4.0.0-beta.31
739
+
740
+ ### Patch Changes
741
+
742
+ - Updated dependencies [6b6d601]
743
+ - effect-app@4.0.0-beta.31
744
+
745
+ ## 4.0.0-beta.30
746
+
747
+ ### Patch Changes
748
+
749
+ - Updated dependencies [5ec1f45]
750
+ - effect-app@4.0.0-beta.30
751
+
752
+ ## 4.0.0-beta.29
753
+
754
+ ### Patch Changes
755
+
756
+ - Updated dependencies [a899d46]
757
+ - effect-app@4.0.0-beta.29
758
+
759
+ ## 4.0.0-beta.28
760
+
761
+ ### Patch Changes
762
+
763
+ - Updated dependencies [0099208]
764
+ - effect-app@4.0.0-beta.28
765
+
766
+ ## 4.0.0-beta.27
767
+
768
+ ### Patch Changes
769
+
770
+ - 601a1ff: update effect to 4.0.0-beta.37 and drop the Schema Class disableValidation workaround now that the patched effect schema covers it
771
+ - Updated dependencies [601a1ff]
772
+ - effect-app@4.0.0-beta.27
773
+
774
+ ## 4.0.0-beta.26
775
+
776
+ ### Patch Changes
777
+
778
+ - Updated dependencies [4da28e2]
779
+ - effect-app@4.0.0-beta.26
780
+
781
+ ## 4.0.0-beta.25
782
+
783
+ ### Patch Changes
784
+
785
+ - Updated dependencies [6282d4b]
786
+ - effect-app@4.0.0-beta.25
787
+
788
+ ## 4.0.0-beta.24
789
+
790
+ ### Patch Changes
791
+
792
+ - Updated dependencies [32f71bf]
793
+ - effect-app@4.0.0-beta.24
794
+
795
+ ## 4.0.0-beta.23
796
+
797
+ ### Patch Changes
798
+
799
+ - Updated dependencies [ea08a79]
800
+ - effect-app@4.0.0-beta.23
801
+
802
+ ## 4.0.0-beta.22
803
+
804
+ ### Patch Changes
805
+
806
+ - effect-app@4.0.0-beta.22
807
+
808
+ ## 4.0.0-beta.21
809
+
810
+ ### Patch Changes
811
+
812
+ - 75c72ee: update effect to 4.0.0-beta.36, adapt to Option<A> revert from A | undefined
813
+ - Updated dependencies [0d349e7]
814
+ - Updated dependencies [75c72ee]
815
+ - effect-app@4.0.0-beta.21
816
+
817
+ ## 4.0.0-beta.20
818
+
819
+ ### Patch Changes
820
+
821
+ - aa921db: Fix `TaggedRequest` no-config error type inference so requests without a third argument infer the same default error schema as requests with explicit success config.
822
+ - Updated dependencies [aa921db]
823
+ - effect-app@4.0.0-beta.20
824
+
825
+ ## 4.0.0-beta.19
826
+
827
+ ### Patch Changes
828
+
829
+ - Updated dependencies [ffc10a4]
830
+ - effect-app@4.0.0-beta.19
831
+
832
+ ## 4.0.0-beta.18
833
+
834
+ ### Patch Changes
835
+
836
+ - Updated dependencies [e9dbbdd]
837
+ - effect-app@4.0.0-beta.18
838
+
839
+ ## 4.0.0-beta.17
840
+
841
+ ### Patch Changes
842
+
843
+ - Updated dependencies [c8a6a3f]
844
+ - effect-app@4.0.0-beta.17
845
+
846
+ ## 4.0.0-beta.16
847
+
848
+ ### Patch Changes
849
+
850
+ - Updated dependencies [56db2c4]
851
+ - effect-app@4.0.0-beta.16
852
+
853
+ ## 4.0.0-beta.15
854
+
855
+ ### Patch Changes
856
+
857
+ - a3c9cc8: fix SSE event stream merge in pipe usage
858
+ - Updated dependencies [20186b6]
859
+ - effect-app@4.0.0-beta.15
860
+
861
+ ## 4.0.0-beta.14
862
+
863
+ ### Patch Changes
864
+
865
+ - effect-app@4.0.0-beta.14
866
+
3
867
  ## 4.0.0-beta.13
4
868
 
5
869
  ### Patch Changes