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

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