@effect-app/infra 4.0.0-beta.21 → 4.0.0-beta.211

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 (309) hide show
  1. package/CHANGELOG.md +1556 -0
  2. package/_check.sh +1 -1
  3. package/dist/CUPS.d.ts +7 -7
  4. package/dist/CUPS.d.ts.map +1 -1
  5. package/dist/CUPS.js +10 -12
  6. package/dist/Emailer/Sendgrid.d.ts +14 -14
  7. package/dist/Emailer/Sendgrid.d.ts.map +1 -1
  8. package/dist/Emailer/Sendgrid.js +16 -15
  9. package/dist/Emailer/fake.d.ts +1 -1
  10. package/dist/Emailer/service.d.ts +10 -4
  11. package/dist/Emailer/service.d.ts.map +1 -1
  12. package/dist/Emailer/service.js +3 -3
  13. package/dist/Emailer.d.ts +1 -1
  14. package/dist/MainFiberSet.d.ts +9 -9
  15. package/dist/MainFiberSet.d.ts.map +1 -1
  16. package/dist/MainFiberSet.js +3 -3
  17. package/dist/Model/Repository/Registry.d.ts +20 -0
  18. package/dist/Model/Repository/Registry.d.ts.map +1 -0
  19. package/dist/Model/Repository/Registry.js +17 -0
  20. package/dist/Model/Repository/ext.d.ts +33 -15
  21. package/dist/Model/Repository/ext.d.ts.map +1 -1
  22. package/dist/Model/Repository/ext.js +54 -2
  23. package/dist/Model/Repository/internal/internal.d.ts +6 -6
  24. package/dist/Model/Repository/internal/internal.d.ts.map +1 -1
  25. package/dist/Model/Repository/internal/internal.js +98 -50
  26. package/dist/Model/Repository/legacy.d.ts +1 -1
  27. package/dist/Model/Repository/makeRepo.d.ts +7 -6
  28. package/dist/Model/Repository/makeRepo.d.ts.map +1 -1
  29. package/dist/Model/Repository/makeRepo.js +5 -1
  30. package/dist/Model/Repository/service.d.ts +28 -23
  31. package/dist/Model/Repository/service.d.ts.map +1 -1
  32. package/dist/Model/Repository/validation.d.ts +46 -17
  33. package/dist/Model/Repository/validation.d.ts.map +1 -1
  34. package/dist/Model/Repository/validation.js +5 -5
  35. package/dist/Model/Repository.d.ts +2 -1
  36. package/dist/Model/Repository.d.ts.map +1 -1
  37. package/dist/Model/Repository.js +2 -1
  38. package/dist/Model/dsl.d.ts +4 -4
  39. package/dist/Model/dsl.d.ts.map +1 -1
  40. package/dist/Model/filter/filterApi.d.ts +5 -5
  41. package/dist/Model/filter/filterApi.d.ts.map +1 -1
  42. package/dist/Model/filter/types/errors.d.ts +1 -1
  43. package/dist/Model/filter/types/fields.d.ts +1 -1
  44. package/dist/Model/filter/types/path/common.d.ts +1 -1
  45. package/dist/Model/filter/types/path/eager.d.ts +1 -1
  46. package/dist/Model/filter/types/path/eager.d.ts.map +1 -1
  47. package/dist/Model/filter/types/path/eager.js +1 -1
  48. package/dist/Model/filter/types/path/index.d.ts +1 -1
  49. package/dist/Model/filter/types/utils.d.ts +1 -1
  50. package/dist/Model/filter/types/validator.d.ts +1 -1
  51. package/dist/Model/filter/types.d.ts +1 -1
  52. package/dist/Model/query/dsl.d.ts +16 -16
  53. package/dist/Model/query/dsl.d.ts.map +1 -1
  54. package/dist/Model/query/new-kid-interpreter.d.ts +6 -6
  55. package/dist/Model/query/new-kid-interpreter.d.ts.map +1 -1
  56. package/dist/Model/query/new-kid-interpreter.js +3 -3
  57. package/dist/Model/query.d.ts +1 -1
  58. package/dist/Model.d.ts +2 -1
  59. package/dist/Model.d.ts.map +1 -1
  60. package/dist/Model.js +2 -1
  61. package/dist/QueueMaker/SQLQueue.d.ts +5 -7
  62. package/dist/QueueMaker/SQLQueue.d.ts.map +1 -1
  63. package/dist/QueueMaker/SQLQueue.js +130 -116
  64. package/dist/QueueMaker/errors.d.ts +2 -2
  65. package/dist/QueueMaker/errors.d.ts.map +1 -1
  66. package/dist/QueueMaker/memQueue.d.ts +7 -4
  67. package/dist/QueueMaker/memQueue.d.ts.map +1 -1
  68. package/dist/QueueMaker/memQueue.js +75 -63
  69. package/dist/QueueMaker/sbqueue.d.ts +6 -3
  70. package/dist/QueueMaker/sbqueue.d.ts.map +1 -1
  71. package/dist/QueueMaker/sbqueue.js +52 -53
  72. package/dist/QueueMaker/service.d.ts +1 -1
  73. package/dist/RequestContext.d.ts +74 -35
  74. package/dist/RequestContext.d.ts.map +1 -1
  75. package/dist/RequestContext.js +13 -14
  76. package/dist/RequestFiberSet.d.ts +7 -7
  77. package/dist/RequestFiberSet.d.ts.map +1 -1
  78. package/dist/RequestFiberSet.js +3 -3
  79. package/dist/Store/ContextMapContainer.d.ts +19 -3
  80. package/dist/Store/ContextMapContainer.d.ts.map +1 -1
  81. package/dist/Store/ContextMapContainer.js +13 -3
  82. package/dist/Store/Cosmos/query.d.ts +1 -1
  83. package/dist/Store/Cosmos/query.d.ts.map +1 -1
  84. package/dist/Store/Cosmos/query.js +10 -12
  85. package/dist/Store/Cosmos.d.ts +1 -1
  86. package/dist/Store/Cosmos.d.ts.map +1 -1
  87. package/dist/Store/Cosmos.js +335 -243
  88. package/dist/Store/Disk.d.ts +2 -2
  89. package/dist/Store/Disk.d.ts.map +1 -1
  90. package/dist/Store/Disk.js +72 -35
  91. package/dist/Store/Memory.d.ts +6 -4
  92. package/dist/Store/Memory.d.ts.map +1 -1
  93. package/dist/Store/Memory.js +90 -57
  94. package/dist/Store/SQL/Pg.d.ts +4 -0
  95. package/dist/Store/SQL/Pg.d.ts.map +1 -0
  96. package/dist/Store/SQL/Pg.js +231 -0
  97. package/dist/Store/SQL/query.d.ts +38 -0
  98. package/dist/Store/SQL/query.d.ts.map +1 -0
  99. package/dist/Store/SQL/query.js +367 -0
  100. package/dist/Store/SQL.d.ts +20 -0
  101. package/dist/Store/SQL.d.ts.map +1 -0
  102. package/dist/Store/SQL.js +464 -0
  103. package/dist/Store/codeFilter.d.ts +1 -1
  104. package/dist/Store/codeFilter.d.ts.map +1 -1
  105. package/dist/Store/codeFilter.js +4 -2
  106. package/dist/Store/index.d.ts +5 -2
  107. package/dist/Store/index.d.ts.map +1 -1
  108. package/dist/Store/index.js +15 -3
  109. package/dist/Store/service.d.ts +18 -7
  110. package/dist/Store/service.d.ts.map +1 -1
  111. package/dist/Store/service.js +24 -6
  112. package/dist/Store/utils.d.ts +1 -1
  113. package/dist/Store/utils.d.ts.map +1 -1
  114. package/dist/Store/utils.js +3 -4
  115. package/dist/Store.d.ts +1 -1
  116. package/dist/adapters/SQL/Model.d.ts +31 -42
  117. package/dist/adapters/SQL/Model.d.ts.map +1 -1
  118. package/dist/adapters/SQL/Model.js +29 -38
  119. package/dist/adapters/SQL.d.ts +1 -1
  120. package/dist/adapters/ServiceBus.d.ts +11 -11
  121. package/dist/adapters/ServiceBus.d.ts.map +1 -1
  122. package/dist/adapters/ServiceBus.js +25 -21
  123. package/dist/adapters/cosmos-client.d.ts +3 -3
  124. package/dist/adapters/cosmos-client.d.ts.map +1 -1
  125. package/dist/adapters/cosmos-client.js +3 -3
  126. package/dist/adapters/index.d.ts +8 -2
  127. package/dist/adapters/index.d.ts.map +1 -1
  128. package/dist/adapters/index.js +8 -2
  129. package/dist/adapters/logger.d.ts +2 -2
  130. package/dist/adapters/logger.d.ts.map +1 -1
  131. package/dist/adapters/memQueue.d.ts +3 -3
  132. package/dist/adapters/memQueue.d.ts.map +1 -1
  133. package/dist/adapters/memQueue.js +3 -3
  134. package/dist/adapters/mongo-client.d.ts +3 -3
  135. package/dist/adapters/mongo-client.d.ts.map +1 -1
  136. package/dist/adapters/mongo-client.js +3 -3
  137. package/dist/adapters/redis-client.d.ts +3 -3
  138. package/dist/adapters/redis-client.d.ts.map +1 -1
  139. package/dist/adapters/redis-client.js +3 -3
  140. package/dist/api/ContextProvider.d.ts +8 -8
  141. package/dist/api/ContextProvider.d.ts.map +1 -1
  142. package/dist/api/ContextProvider.js +6 -6
  143. package/dist/api/codec.d.ts +1 -1
  144. package/dist/api/internal/RequestContextMiddleware.d.ts +2 -2
  145. package/dist/api/internal/RequestContextMiddleware.d.ts.map +1 -1
  146. package/dist/api/internal/RequestContextMiddleware.js +2 -2
  147. package/dist/api/internal/auth.d.ts +44 -6
  148. package/dist/api/internal/auth.d.ts.map +1 -1
  149. package/dist/api/internal/auth.js +160 -29
  150. package/dist/api/internal/events.d.ts +3 -3
  151. package/dist/api/internal/events.d.ts.map +1 -1
  152. package/dist/api/internal/events.js +10 -8
  153. package/dist/api/internal/health.d.ts +1 -1
  154. package/dist/api/layerUtils.d.ts +6 -6
  155. package/dist/api/layerUtils.d.ts.map +1 -1
  156. package/dist/api/layerUtils.js +5 -5
  157. package/dist/api/middlewares.d.ts +1 -1
  158. package/dist/api/reportError.d.ts +1 -1
  159. package/dist/api/routing/middleware/RouterMiddleware.d.ts +4 -4
  160. package/dist/api/routing/middleware/RouterMiddleware.d.ts.map +1 -1
  161. package/dist/api/routing/middleware/middleware.d.ts +39 -3
  162. package/dist/api/routing/middleware/middleware.d.ts.map +1 -1
  163. package/dist/api/routing/middleware/middleware.js +48 -16
  164. package/dist/api/routing/middleware.d.ts +1 -2
  165. package/dist/api/routing/middleware.d.ts.map +1 -1
  166. package/dist/api/routing/middleware.js +1 -2
  167. package/dist/api/routing/schema/jwt.d.ts +1 -1
  168. package/dist/api/routing/schema/jwt.d.ts.map +1 -1
  169. package/dist/api/routing/tsort.d.ts +1 -1
  170. package/dist/api/routing/tsort.d.ts.map +1 -1
  171. package/dist/api/routing/utils.d.ts +3 -3
  172. package/dist/api/routing/utils.d.ts.map +1 -1
  173. package/dist/api/routing.d.ts +80 -37
  174. package/dist/api/routing.d.ts.map +1 -1
  175. package/dist/api/routing.js +112 -40
  176. package/dist/api/setupRequest.d.ts +8 -5
  177. package/dist/api/setupRequest.d.ts.map +1 -1
  178. package/dist/api/setupRequest.js +12 -7
  179. package/dist/api/util.d.ts +1 -1
  180. package/dist/arbs.d.ts +1 -1
  181. package/dist/arbs.d.ts.map +1 -1
  182. package/dist/arbs.js +5 -3
  183. package/dist/errorReporter.d.ts +4 -4
  184. package/dist/errorReporter.d.ts.map +1 -1
  185. package/dist/errorReporter.js +20 -25
  186. package/dist/errors.d.ts +1 -1
  187. package/dist/fileUtil.d.ts +1 -1
  188. package/dist/fileUtil.d.ts.map +1 -1
  189. package/dist/index.d.ts +1 -1
  190. package/dist/logger/jsonLogger.d.ts +1 -1
  191. package/dist/logger/logFmtLogger.d.ts +1 -1
  192. package/dist/logger/shared.d.ts +1 -1
  193. package/dist/logger/shared.js +2 -2
  194. package/dist/logger.d.ts +1 -1
  195. package/dist/logger.d.ts.map +1 -1
  196. package/dist/otel.d.ts +75 -0
  197. package/dist/otel.d.ts.map +1 -0
  198. package/dist/otel.js +65 -0
  199. package/dist/rateLimit.d.ts +9 -3
  200. package/dist/rateLimit.d.ts.map +1 -1
  201. package/dist/rateLimit.js +5 -11
  202. package/dist/test.d.ts +2 -2
  203. package/dist/test.d.ts.map +1 -1
  204. package/dist/test.js +1 -1
  205. package/dist/vitest.d.ts +1 -1
  206. package/examples/query.ts +39 -35
  207. package/package.json +45 -37
  208. package/src/CUPS.ts +9 -11
  209. package/src/Emailer/Sendgrid.ts +17 -14
  210. package/src/Emailer/service.ts +9 -3
  211. package/src/MainFiberSet.ts +5 -6
  212. package/src/Model/Repository/Registry.ts +33 -0
  213. package/src/Model/Repository/ext.ts +96 -10
  214. package/src/Model/Repository/internal/internal.ts +213 -148
  215. package/src/Model/Repository/makeRepo.ts +12 -10
  216. package/src/Model/Repository/service.ts +31 -22
  217. package/src/Model/Repository/validation.ts +4 -4
  218. package/src/Model/Repository.ts +1 -0
  219. package/src/Model/dsl.ts +3 -3
  220. package/src/Model/filter/types/path/eager.ts +1 -2
  221. package/src/Model/query/dsl.ts +18 -18
  222. package/src/Model/query/new-kid-interpreter.ts +2 -2
  223. package/src/Model.ts +1 -0
  224. package/src/QueueMaker/SQLQueue.ts +144 -152
  225. package/src/QueueMaker/memQueue.ts +104 -103
  226. package/src/QueueMaker/sbqueue.ts +70 -86
  227. package/src/RequestContext.ts +14 -16
  228. package/src/RequestFiberSet.ts +2 -2
  229. package/src/Store/ContextMapContainer.ts +41 -2
  230. package/src/Store/Cosmos/query.ts +16 -20
  231. package/src/Store/Cosmos.ts +473 -348
  232. package/src/Store/Disk.ts +102 -65
  233. package/src/Store/Memory.ts +118 -83
  234. package/src/Store/SQL/Pg.ts +352 -0
  235. package/src/Store/SQL/query.ts +409 -0
  236. package/src/Store/SQL.ts +734 -0
  237. package/src/Store/codeFilter.ts +3 -1
  238. package/src/Store/index.ts +17 -2
  239. package/src/Store/service.ts +32 -8
  240. package/src/Store/utils.ts +23 -22
  241. package/src/adapters/SQL/Model.ts +41 -40
  242. package/src/adapters/ServiceBus.ts +125 -121
  243. package/src/adapters/cosmos-client.ts +2 -2
  244. package/src/adapters/index.ts +7 -0
  245. package/src/adapters/memQueue.ts +2 -2
  246. package/src/adapters/mongo-client.ts +2 -2
  247. package/src/adapters/redis-client.ts +2 -2
  248. package/src/api/ContextProvider.ts +12 -13
  249. package/src/api/internal/RequestContextMiddleware.ts +1 -1
  250. package/src/api/internal/auth.ts +246 -44
  251. package/src/api/internal/events.ts +13 -9
  252. package/src/api/layerUtils.ts +8 -8
  253. package/src/api/routing/middleware/RouterMiddleware.ts +4 -4
  254. package/src/api/routing/middleware/middleware.ts +55 -14
  255. package/src/api/routing/middleware.ts +0 -2
  256. package/src/api/routing.ts +298 -128
  257. package/src/api/setupRequest.ts +28 -8
  258. package/src/arbs.ts +4 -2
  259. package/src/errorReporter.ts +62 -74
  260. package/src/logger/shared.ts +1 -1
  261. package/src/otel.ts +152 -0
  262. package/src/rateLimit.ts +30 -22
  263. package/src/test.ts +1 -1
  264. package/test/auth.test.ts +101 -0
  265. package/test/contextProvider.test.ts +11 -11
  266. package/test/controller.test.ts +21 -30
  267. package/test/dist/auth.test.d.ts.map +1 -0
  268. package/test/dist/contextProvider.test.d.ts.map +1 -1
  269. package/test/dist/controller.test.d.ts.map +1 -1
  270. package/test/dist/date-query.test.d.ts.map +1 -0
  271. package/test/dist/fixtures.d.ts +26 -12
  272. package/test/dist/fixtures.d.ts.map +1 -1
  273. package/test/dist/fixtures.js +12 -10
  274. package/test/dist/query.test.d.ts.map +1 -1
  275. package/test/dist/rawQuery.test.d.ts.map +1 -1
  276. package/test/dist/repository-ext.test.d.ts.map +1 -0
  277. package/test/dist/requires.test.d.ts.map +1 -1
  278. package/test/dist/router-generator.test.d.ts.map +1 -0
  279. package/test/dist/routing-interruptibility.test.d.ts.map +1 -0
  280. package/test/dist/rpc-e2e-invalidation.test.d.ts.map +1 -0
  281. package/test/dist/rpc-multi-middleware.test.d.ts.map +1 -1
  282. package/test/dist/rpc-stream-fullstack.test.d.ts.map +1 -0
  283. package/test/dist/sql-store.test.d.ts.map +1 -0
  284. package/test/fixtures.ts +11 -9
  285. package/test/query.test.ts +216 -34
  286. package/test/rawQuery.test.ts +23 -19
  287. package/test/repository-ext.test.ts +60 -0
  288. package/test/requires.test.ts +6 -6
  289. package/test/router-generator.test.ts +183 -0
  290. package/test/routing-interruptibility.test.ts +63 -0
  291. package/test/rpc-e2e-invalidation.test.ts +251 -0
  292. package/test/rpc-multi-middleware.test.ts +78 -9
  293. package/test/rpc-stream-fullstack.test.ts +300 -0
  294. package/test/sql-store.test.ts +1064 -0
  295. package/test/validateSample.test.ts +15 -12
  296. package/tsconfig.examples.json +1 -1
  297. package/tsconfig.json +0 -1
  298. package/tsconfig.json.bak +2 -2
  299. package/tsconfig.src.json +35 -35
  300. package/tsconfig.test.json +2 -2
  301. package/dist/Operations.d.ts +0 -55
  302. package/dist/Operations.d.ts.map +0 -1
  303. package/dist/Operations.js +0 -102
  304. package/dist/OperationsRepo.d.ts +0 -41
  305. package/dist/OperationsRepo.d.ts.map +0 -1
  306. package/dist/OperationsRepo.js +0 -14
  307. package/eslint.config.mjs +0 -24
  308. package/src/Operations.ts +0 -235
  309. package/src/OperationsRepo.ts +0 -16
package/CHANGELOG.md CHANGED
@@ -1,5 +1,1561 @@
1
1
  # @effect-app/infra
2
2
 
3
+ ## 4.0.0-beta.211
4
+
5
+ ### Patch Changes
6
+
7
+ - ebbb799: Repository owns OTel span topology; store adapters annotate db._ semconv attrs on the current span instead of opening their own child spans. Eliminates 1-1 nested span chains (e.g. `Repository.query` → `Cosmos.filter`). Adds `annotateDb` helper alongside `withDbSpan` in `otel.ts`. Repo public ops (`find`, `all`, `query`, `queryRaw`, `mapped._`) get explicit `Repository.<op>` spans; internal codec steps (`encodeMany`, `parseMany`, `parseMany2`) keep bare names. `validateSample`opens per-iteration sub-spans to prevent attribute clobber. Adds WeakMap decoder cache for`parseMany2` schemas.
8
+ - e33f1eb: Drop OTel spans from ServiceBus client/sender/receiver/subscription lifecycle wrappers; keep `withLogSpan` + info logs only. Removes high-cardinality `sessionId` from log span names; promotes it to `messaging.session.id` log attribute via `Effect.annotateLogs`.
9
+ - effect-app@4.0.0-beta.211
10
+
11
+ ## 4.0.0-beta.210
12
+
13
+ ### Minor Changes
14
+
15
+ - 3a588e4: Standardize span attributes on OpenTelemetry semantic conventions.
16
+
17
+ All Store adapters (Cosmos, PostgreSQL, SQLite, Memory, Disk) and Queue adapters
18
+ (Service Bus, SQL, Memory) now emit OTel-compliant span names and attributes via
19
+ the new `@effect-app/infra/otel` helper module.
20
+
21
+ Span name convention: `<operation> <collection|destination>` (low cardinality).
22
+
23
+ Attribute key migration:
24
+
25
+ | Old | New |
26
+ | --------------------------------------------------- | --------------------------------------------------------------------------------- |
27
+ | `repository.table_name` / `repository.container_id` | `db.collection.name` |
28
+ | `repository.namespace` | `db.namespace` |
29
+ | `repository.model_name` / `itemType` | `app.entity` |
30
+ | `id` / `itemId` (entity span attr) | `app.entity.id` |
31
+ | `itemIds` | `app.entity.ids` |
32
+ | `db.cosmos.request_charge` | `azure.cosmosdb.operation.request_charge` |
33
+ | `db.cosmos.resource_count` | `db.response.returned_rows` |
34
+ | `db.cosmos.response_bytes` | `db.response.body.size` |
35
+ | `disk.file` / `disk.file_size` | `disk.file.path` / `disk.file.size` |
36
+ | `queue.name` | `messaging.destination.name` |
37
+ | `queue.sessionId` | `messaging.message.conversation_id` |
38
+ | `queue.type` | `messaging.system` |
39
+ | `queue.input` (full body) | `messaging.message.body` (+ `messaging.message.id`, `messaging.message.type`) |
40
+ | `message_tags` | `messaging.message.types` + `messaging.batch.message_count` |
41
+ | `request.name` | `code.function.name` (from `spanAttributes`) / `rpc.method` (middleware) |
42
+ | `request.locale` | `app.locale` |
43
+ | `request.namespace` | `app.tenant.id` |
44
+ | `request.source.id` | `client.id` |
45
+ | `request.user.sub` / `.roles` | `user.id` / `user.roles` |
46
+ | `requestInput` | `rpc.request.payload` |
47
+ | `connectionId` | `network.connection.id` |
48
+ | Span `Request.<module>.<method>` | Span `<module>/<method>` + `rpc.system`/`rpc.service`/`rpc.method` (kind: server) |
49
+ | `<spanPrefix>.<op>` (SQL/Model) | OTel db span via `withDbSpan`, with `dbSystem?` option |
50
+
51
+ New attributes added:
52
+
53
+ - `db.system.name` — e.g. `postgresql`, `sqlite`, `cosmosdb`, `memory`, `disk`
54
+ - `db.operation.name` — e.g. `find`, `all`, `filter`, `set`
55
+ - `db.query.text` — sanitized / parameterized SQL or Cosmos query (no bound values)
56
+ - `messaging.operation.name` — `publish`, `process`, `receive`
57
+
58
+ Breaking: dashboards/alerts keying on the previous attribute names must be
59
+ updated. Queue consumer spans no longer log raw message bodies — use
60
+ `messaging.message.id` and `messaging.message.type` instead.
61
+
62
+ ### Patch Changes
63
+
64
+ - effect-app@4.0.0-beta.210
65
+
66
+ ## 4.0.0-beta.209
67
+
68
+ ### Patch Changes
69
+
70
+ - c991be1: update packages
71
+ - Updated dependencies [c991be1]
72
+ - Updated dependencies [3bae238]
73
+ - effect-app@4.0.0-beta.209
74
+
75
+ ## 4.0.0-beta.208
76
+
77
+ ### Patch Changes
78
+
79
+ - effect-app@4.0.0-beta.208
80
+
81
+ ## 4.0.0-beta.207
82
+
83
+ ### Patch Changes
84
+
85
+ - b0db40f: Router handlers are now discriminated by `Resource[K]["stream"]`:
86
+
87
+ - Stream resources (`stream: true`) accept only `(req) => Stream<...>` handlers.
88
+ - Non-stream resources accept only `(req) => Effect<...>` (or generator yielding `Yieldable`).
89
+
90
+ Mixing — e.g. returning `Effect.fail(...)` or `Effect<Stream<...>>` from a stream handler — no longer type-checks.
91
+
92
+ The runtime `Stream.unwrap` branch that lifted `Effect`/`Effect<Stream>` returns into a `Stream` is removed; handlers for stream resources must return a `Stream` directly. Migrate `Effect.gen(...).pipe(Stream.unwrap)` patterns by returning the `Stream` directly, and convert `Effect.fail(err)` in stream handlers to `Stream.fail(err)`.
93
+
94
+ - Updated dependencies [8fffc3c]
95
+ - effect-app@4.0.0-beta.207
96
+
97
+ ## 4.0.0-beta.206
98
+
99
+ ### Patch Changes
100
+
101
+ - 54bfc59: Require middleware to flow through `makeRpcClient` and the live layer through `makeRouter`.
102
+
103
+ ### `makeRpcClient(middleware, generalErrors?)`
104
+
105
+ Signature drops the `rcs` (request-context map wrapper) parameter. `rcs` was only load-bearing on the type side for `RequestConfig` inference; that information is now derived from `middleware.requestContextMap`. `middleware` is required — the previous "rcs + optional middleware" overload is gone.
106
+
107
+ **Migration**:
108
+
109
+ ```diff
110
+ -makeRpcClient(RequestContextMap, undefined, AppMiddleware)
111
+ +makeRpcClient(AppMiddleware)
112
+ ```
113
+
114
+ For tests/clients without a real middleware, build a minimal stub (`{ requestContextMap, requestContext }`) or pass any value satisfying `ClientMiddleware<RCM>`.
115
+
116
+ ### `makeRouter(middlewareLive)`
117
+
118
+ `makeRouter()` no longer infers the live middleware layer from `meta.middleware.Default`. The Live layer is now passed explicitly to `makeRouter`, and the request classes only carry the middleware tag (schema-only). This decouples the router from any assumption that the middleware tag exposes a `Default` static.
119
+
120
+ **Migration**:
121
+
122
+ ```diff
123
+ -export const { Router, matchAll } = makeRouter()
124
+ +export const { Router, matchAll } = makeRouter(AppMiddleware.Default)
125
+ ```
126
+
127
+ - Updated dependencies [54bfc59]
128
+ - effect-app@4.0.0-beta.206
129
+
130
+ ## 4.0.0-beta.205
131
+
132
+ ### Patch Changes
133
+
134
+ - Updated dependencies [f313973]
135
+ - effect-app@4.0.0-beta.205
136
+
137
+ ## 4.0.0-beta.204
138
+
139
+ ### Patch Changes
140
+
141
+ - Updated dependencies [0a0030f]
142
+ - effect-app@4.0.0-beta.204
143
+
144
+ ## 4.0.0-beta.203
145
+
146
+ ### Patch Changes
147
+
148
+ - Updated dependencies [992d9fa]
149
+ - effect-app@4.0.0-beta.203
150
+
151
+ ## 4.0.0-beta.202
152
+
153
+ ### Patch Changes
154
+
155
+ - Updated dependencies [1186b09]
156
+ - effect-app@4.0.0-beta.202
157
+
158
+ ## 4.0.0-beta.201
159
+
160
+ ### Patch Changes
161
+
162
+ - d67d17a: Source middleware errors exclusively from the rpc middleware tag, and move command/stream invalidation wrap/unwrap entirely into the routing layer (server) and `apiClientFactory` (client). `InvalidationMiddleware` and `InvalidationMiddlewareLive` are removed.
163
+
164
+ ### Resource error schemas
165
+
166
+ Three sites that used to fold `RequestContextMap[*].error` into a request's own error schema now stop doing so:
167
+
168
+ - `makeRpcClient` / `makeRequestClass` — `failureSchema` is just `config.error` (still merged with the optional `generalErrors` parameter, which is the only remaining error mix on both type and runtime levels).
169
+ - `MiddlewareMaker.rpc()` — `error: options.error` only; the previous union with `rcm.config[*].error` is gone.
170
+ - Routing and `apiClientFactory.makeRpcGroupFromRequestsAndModuleName` — `Invalidation.makeCommandRpc` is called with `error: resource.error` (no widening with the composite middleware error union).
171
+
172
+ Middleware errors reach the client through the rpc's `middlewares[*].error` failure-union channel of `Rpc.exitSchema`, exposed by attaching the middleware tag to the rpc on both sides:
173
+
174
+ - **Server**: `makeRouter(middleware)` attaches the live composite tag (existing behavior).
175
+ - **Client**: new `middleware` option on `ClientForOptions` / `ApiClientFactory.makeFor(layer, { middleware })` attaches the same tag schema-only (no Live invoked). Threaded through `makeRpcGroupFromRequestsAndModuleName` to `RpcGroup.middleware(tag)`. Without it, stream rpcs (whose top-level `errorSchema` is forced to `Never` by effect-rpc) hit `SchemaError: Expected never | { _tag: "error", ... }` decoding middleware-thrown errors that bypass the in-stream `Stream.catch` wrap.
176
+
177
+ **Migration**: handlers that yield errors previously sourced from rcm (e.g. `yield* new UnauthorizedError()`) now require those errors to be declared explicitly on the resource — `Req.Query<T>()("...", fields, { success, error: UnauthorizedError })`. The handler error type no longer auto-includes the rcm union.
178
+
179
+ ### Invalidation wrap/unwrap
180
+
181
+ - `routing.ts` (server) provides a per-request `InvalidationSet` for commands, wraps the success value as `CommandResponseWithMetaData`, and converts handler-thrown failures into `CommandFailureWithMetaData` so accumulated invalidation keys reach the client on either path. Stream wrap (per-chunk envelope + final `done` chunk) was already in routing and is unchanged.
182
+ - `apiClientFactory.ts` (client) `unwrapCommand` strips both envelopes and forwards keys to `InvalidationKeysFromServer`.
183
+ - `InvalidationMiddleware` (the tag) and `InvalidationMiddlewareLive` (the layer) are **removed**. The middleware was the previous home of the wrap; with the wrap moved to routing/apiClientFactory, the middleware became a thin pass-through and is no longer needed. `DefaultGenericMiddlewares` and `DefaultGenericMiddlewaresLive` shrink accordingly — no migration needed for callers that used the defaults; callers that referenced `InvalidationMiddleware` / `InvalidationMiddlewareLive` directly should drop those imports.
184
+
185
+ Middleware-thrown errors are never wrapped: by definition the handler never ran, so there is nothing to invalidate. They flow raw on the Cause and the client decodes them via the middleware-tag failure-union channel described above.
186
+
187
+ - Updated dependencies [d67d17a]
188
+ - effect-app@4.0.0-beta.201
189
+
190
+ ## 4.0.0-beta.200
191
+
192
+ ### Patch Changes
193
+
194
+ - 0cff7c1: workaround middleware error issue
195
+ - Updated dependencies [8f1cf6a]
196
+ - Updated dependencies [0cff7c1]
197
+ - effect-app@4.0.0-beta.200
198
+
199
+ ## 4.0.0-beta.199
200
+
201
+ ### Patch Changes
202
+
203
+ - de9fb83: Annotate Cosmos read spans with response size, resource count, and request charge.
204
+
205
+ `Cosmos.queryRaw`, `Cosmos.all`, `Cosmos.filter`, and `Cosmos.find` now set `db.cosmos.request_charge`, `db.cosmos.response_bytes`, and (where applicable) `db.cosmos.resource_count` on the active span. Bytes are sourced from `diagnostics.clientSideRequestStatistics.totalResponsePayloadLengthInBytes` — no payload stringification.
206
+
207
+ - effect-app@4.0.0-beta.199
208
+
209
+ ## 4.0.0-beta.198
210
+
211
+ ### Patch Changes
212
+
213
+ - 32dbc54: fix stream type when no success specified
214
+ - Updated dependencies [32dbc54]
215
+ - effect-app@4.0.0-beta.198
216
+
217
+ ## 4.0.0-beta.197
218
+
219
+ ### Minor Changes
220
+
221
+ - 3dc0d2a: Add streaming as a `stream: true` config option on `Query` / `Command` instead of a separate request type.
222
+
223
+ `TaggedRequestFor` now exposes only `Query` and `Command` factories — the standalone `Stream` factory is removed. To produce a Stream of `success` values, pass `stream: true` in the request config. The request `type` field stays `"command" | "query"`; a new `stream: boolean` field carries the streaming flag (stripped from the stored handler config).
224
+
225
+ ```ts
226
+ // Query that streams results
227
+ Req.Query<T>()("Tag", {}, { stream: true, success: ... })
228
+
229
+ // Command that streams results
230
+ Req.Command<T>()("Tag", {}, { stream: true, success: ... })
231
+ ```
232
+
233
+ Vue client mapping (per-handler properties mirror the non-stream API — `.query`, `.fn`, `.mutate`):
234
+
235
+ - `query` + `stream: true` → exposes `.query` (read-only streaming, tracked Vue Query). Helper map key: `${name}Query`.
236
+ - `command` + `stream: true` → exposes `.fn` and `.mutate` (mutating streaming).
237
+ - Plain `query` / `command` unchanged.
238
+
239
+ Server routing dispatches via the new `stream` flag (`makeStreamRpc` for streaming commands/queries, `makeCommandRpc` / `Rpc.make` otherwise).
240
+
241
+ Also lifts the `Struct` / `TaggedStruct` and `Opaque` definitions in `effect-app/Schema` to use `S.Bottom` / `S.Opaque` directly, exposing `fields`, `mapFields`, and a `MakeIn` that allows `void` when all fields are optional. `TaggedRequestFor` request classes now use `Opaque(TaggedStruct(...))` instead of `TaggedClass`, and decoding/encoding services are derived from `success` / `error` rather than stored on the request.
242
+
243
+ **Migration**: replace `Req.Stream` with `Req.Query` or `Req.Command` and add `stream: true` to the config — `Query` for read-only streams, `Command` for mutating streams.
244
+
245
+ ### Patch Changes
246
+
247
+ - Updated dependencies [3dc0d2a]
248
+ - effect-app@4.0.0-beta.197
249
+
250
+ ## 4.0.0-beta.196
251
+
252
+ ### Patch Changes
253
+
254
+ - effect-app@4.0.0-beta.196
255
+
256
+ ## 4.0.0-beta.195
257
+
258
+ ### Patch Changes
259
+
260
+ - 774a9b3: `MiddlewareMaker.makeMiddlewareBasic` now derives each middleware's effective error from both the static `error` field on the tag AND the `rcm` config entry referenced by `dynamic.key`, rather than relying on the static field alone.
261
+
262
+ Middlewares declared with `dynamic: RequestContextMap.get("foo")` (instead of an explicit static `error: ...`) end up with `tag.error = Schema.Never` at runtime — `RpcMiddleware.Tag` defaults the static error to `Never` when not provided. The composite `MiddlewareMaker.Tag(...).middleware(...)` walked `make[*].error` to build its own error union, collapsing to `Union<Never, ...> ≡ Never`.
263
+
264
+ `Rpc.exitSchema` walks `rpc.middlewares[*].error` when building the wire-level failure union for every rpc kind. Empty-union meant middleware-thrown errors (`NotLoggedInError`, `UnauthorizedError`, etc.) never reached the wire schema. Query/command happened to work because their wire `errorSchema = resource.error` already covered the merge from `makeRpcClient`. Stream rpcs have `errorSchema` force-set to `Schema.Never` by effect-rpc, so the resource-level merge never reached the wire — middleware errors decoded as "Expected never, got X".
265
+
266
+ Per middleware, the new logic pushes both the static `_.error` (if non-`Never`) and `rcm[_.dynamic.key].error` (if non-`Never`) into the composite's failure union.
267
+
268
+ - Updated dependencies [774a9b3]
269
+ - effect-app@4.0.0-beta.195
270
+
271
+ ## 4.0.0-beta.194
272
+
273
+ ### Patch Changes
274
+
275
+ - effect-app@4.0.0-beta.194
276
+
277
+ ## 4.0.0-beta.193
278
+
279
+ ### Patch Changes
280
+
281
+ - 9569911: Stream resources accept `Effect.fail(...)` (and `Effect<Stream>`) from controller handlers — previously only `Stream.fail(...)` / a returned `Stream` worked. The router now lifts an Effect result to a Stream via `Stream.unwrap`, so failures from an `Effect` propagate as a failing Stream on the client, matching `Stream.fail(...)` behavior. Also removes the need for manual `.pipe(Stream.unwrap)` on generator handlers that return a `Stream`.
282
+ - effect-app@4.0.0-beta.193
283
+
284
+ ## 4.0.0-beta.192
285
+
286
+ ### Patch Changes
287
+
288
+ - dba5779: namespaces
289
+ - effect-app@4.0.0-beta.192
290
+
291
+ ## 4.0.0-beta.191
292
+
293
+ ### Patch Changes
294
+
295
+ - 50ce7e6: Replace typescript-eslint with oxlint-tsgolint for type-aware lint. Drop ESLint entirely from non-vue packages (cli, effect-app, infra) — they now use only `oxlint --type-aware`. Vue packages keep ESLint to run `@effect-app/no-await-effect` (no tsgolint equivalent) via `@typescript-eslint/parser` + `vue-eslint-parser`.
296
+ - Updated dependencies [50ce7e6]
297
+ - effect-app@4.0.0-beta.191
298
+
299
+ ## 4.0.0-beta.190
300
+
301
+ ### Patch Changes
302
+
303
+ - Updated dependencies [985176b]
304
+ - effect-app@4.0.0-beta.190
305
+
306
+ ## 4.0.0-beta.189
307
+
308
+ ### Patch Changes
309
+
310
+ - ea32222: Update to effect 4.0.0-beta.60 and use native `Rpc.custom` constructors (`makeCommandRpc`, `makeStreamRpc`) for metadata-wrapped RPC schemas instead of manually wrapping/unwrapping schemas inline.
311
+ - Updated dependencies [ea32222]
312
+ - effect-app@4.0.0-beta.189
313
+
314
+ ## 4.0.0-beta.188
315
+
316
+ ### Patch Changes
317
+
318
+ - b2e438f: Remove Operations service and repo
319
+ - Updated dependencies [b2e438f]
320
+ - effect-app@4.0.0-beta.188
321
+
322
+ ## 4.0.0-beta.187
323
+
324
+ ### Patch Changes
325
+
326
+ - Updated dependencies [0d4e0b8]
327
+ - effect-app@4.0.0-beta.187
328
+
329
+ ## 4.0.0-beta.186
330
+
331
+ ### Patch Changes
332
+
333
+ - effect-app@4.0.0-beta.186
334
+
335
+ ## 4.0.0-beta.185
336
+
337
+ ### Patch Changes
338
+
339
+ - effect-app@4.0.0-beta.185
340
+
341
+ ## 4.0.0-beta.184
342
+
343
+ ### Patch Changes
344
+
345
+ - effect-app@4.0.0-beta.184
346
+
347
+ ## 4.0.0-beta.183
348
+
349
+ ### Patch Changes
350
+
351
+ - effect-app@4.0.0-beta.183
352
+
353
+ ## 4.0.0-beta.182
354
+
355
+ ### Patch Changes
356
+
357
+ - effect-app@4.0.0-beta.182
358
+
359
+ ## 4.0.0-beta.181
360
+
361
+ ### Patch Changes
362
+
363
+ - Updated dependencies [583393f]
364
+ - effect-app@4.0.0-beta.181
365
+
366
+ ## 4.0.0-beta.180
367
+
368
+ ### Minor Changes
369
+
370
+ - 7fa3045: V1/V2/V3: stream and command requests carry invalidation metadata
371
+
372
+ **V1** – stream final response includes metadata
373
+
374
+ - `Invalidation.StreamResponseChunk` wraps each stream item as `{ _tag: "value", value }` and appends `{ _tag: "done", metadata }` at the end carrying all accumulated invalidation keys.
375
+
376
+ **V2** – invalidation keys included in failures
377
+
378
+ - `Invalidation.CommandFailureWithMetaData` and `Invalidation.StreamFailureChunk` carry keys accumulated up to the point of failure, so clients can invalidate queries even when a command or stream errors.
379
+ - `InvalidationMiddlewareLive` wraps command failures; `routing.ts` wraps stream failures.
380
+ - `apiClientFactory.ts` unwraps both on the client side, forwarding keys before re-failing with the original error.
381
+
382
+ **V3** – mid-stream metadata chunks
383
+
384
+ - `Invalidation.StreamResponseChunk` now also includes `{ _tag: "metadata", metadata }` for mid-stream invalidation.
385
+ - After each emitted value, the server drains accumulated keys and emits a "metadata" chunk if any keys were collected since the last drain (bucket reset via `InvalidationSet.drain`).
386
+ - `apiClientFactory.ts` processes "metadata" chunks the same as "done" chunks, forwarding keys to `InvalidationKeysFromServer` immediately.
387
+ - `makeInvalidationKeysService` accepts an optional `onAdded` callback that fires after each key addition, enabling `mutate.ts` to trigger query invalidation mid-stream without waiting for the stream to complete.
388
+
389
+ ### Patch Changes
390
+
391
+ - Updated dependencies [7fa3045]
392
+ - effect-app@4.0.0-beta.180
393
+
394
+ ## 4.0.0-beta.179
395
+
396
+ ### Patch Changes
397
+
398
+ - Updated dependencies [828d264]
399
+ - effect-app@4.0.0-beta.179
400
+
401
+ ## 4.0.0-beta.178
402
+
403
+ ### Patch Changes
404
+
405
+ - effect-app@4.0.0-beta.178
406
+
407
+ ## 4.0.0-beta.177
408
+
409
+ ### Minor Changes
410
+
411
+ - 89d8b3a: Add Effect RPC `Stream` support to the wrapper.
412
+
413
+ - New `Stream` request constructor on `TaggedRequestFor` parallel to `Query`/`Command`. Emits resources with `type: "stream"`.
414
+ - Server router (`@effect-app/infra` `routing.ts`) accepts stream resources whose handlers return a `Stream.Stream<A, E, R>` (or a function from input to one). Forwards `stream: true` to `Rpc.make` so `RpcSchema.Stream` wrapping is applied. Streams bypass `applyRequestTypeInterruptibility` and the `Effect.withSpan` wrapping (the RPC server adds its own span).
415
+ - Client (`apiClientFactory.ts`) detects stream resources, forwards `stream: true` when constructing `RpcGroup`, and exposes the per-request `handler` as a `Stream.Stream` (via `Stream.unwrap` over the `ManagedRuntime` context) instead of an `Effect`. `Invalidation.CommandResponseWithMetaData` continues to apply only to commands.
416
+ - New `RequestStreamHandler` / `RequestStreamHandlerWithInput` shapes in `clientFor.ts`; `RequestHandlers` dispatches on `type: "stream"`.
417
+
418
+ ### Patch Changes
419
+
420
+ - Updated dependencies [89d8b3a]
421
+ - effect-app@4.0.0-beta.177
422
+
423
+ ## 4.0.0-beta.176
424
+
425
+ ### Patch Changes
426
+
427
+ - pass options
428
+ - Updated dependencies
429
+ - effect-app@4.0.0-beta.176
430
+
431
+ ## 4.0.0-beta.175
432
+
433
+ ### Patch Changes
434
+
435
+ - effect-app@4.0.0-beta.175
436
+
437
+ ## 4.0.0-beta.174
438
+
439
+ ### Minor Changes
440
+
441
+ - 821468d: Add server-driven cache invalidation via RPC response headers.
442
+
443
+ - `effect-app/rpc`: new `Invalidation` module with `InvalidationKey` / `InvalidationKeys` schemas, `Invalidates` annotation (for declaring static invalidation on Rpc definitions), `InvalidationSet` reference (request-scoped accumulator), and `makeInvalidationSet` helper.
444
+ - `effect-app/middleware`: new `InvalidationMiddleware` RPC middleware tag; included in `DefaultGenericMiddlewares`.
445
+ - `effect-app/client`: new `InvalidationKeys` module with `InvalidationKeysFromServer` reference and `makeInvalidationKeysService` helper; `apiClientFactory` now taps HTTP responses to read the `x-invalidate` header and forward keys to `InvalidationKeysFromServer`.
446
+ - `@effect-app/infra`: new `InvalidationMiddlewareLive` RPC middleware implementation that owns the full lifecycle — creates a request-scoped `InvalidationSet` (backed by a `Ref`), pre-populates it from the `Invalidates` annotation, provides it to the handler, and after the handler completes registers an HTTP pre-response handler (via `appendPreResponseHandlerUnsafe`) to write the accumulated keys as an `x-invalidate` response header. No separate HTTP middleware is needed.
447
+ - `@effect-app/vue`: `invalidateQueries` / `useMutation` now reads server-provided invalidation keys from `InvalidationKeysFromServer` after each mutation and applies them alongside the client-side invalidation.
448
+
449
+ ### Patch Changes
450
+
451
+ - Updated dependencies [821468d]
452
+ - effect-app@4.0.0-beta.174
453
+
454
+ ## 4.0.0-beta.173
455
+
456
+ ### Patch Changes
457
+
458
+ - effect-app@4.0.0-beta.173
459
+
460
+ ## 4.0.0-beta.172
461
+
462
+ ### Patch Changes
463
+
464
+ - improve sentry
465
+ - effect-app@4.0.0-beta.172
466
+
467
+ ## 4.0.0-beta.171
468
+
469
+ ### Patch Changes
470
+
471
+ - Updated dependencies [d71d976]
472
+ - effect-app@4.0.0-beta.171
473
+
474
+ ## 4.0.0-beta.170
475
+
476
+ ### Patch Changes
477
+
478
+ - Updated dependencies [8f09f77]
479
+ - effect-app@4.0.0-beta.170
480
+
481
+ ## 4.0.0-beta.169
482
+
483
+ ### Patch Changes
484
+
485
+ - Updated dependencies [8ae8b53]
486
+ - effect-app@4.0.0-beta.169
487
+
488
+ ## 4.0.0-beta.168
489
+
490
+ ### Patch Changes
491
+
492
+ - Updated dependencies [178480a]
493
+ - effect-app@4.0.0-beta.168
494
+
495
+ ## 4.0.0-beta.167
496
+
497
+ ### Patch Changes
498
+
499
+ - Updated dependencies [140e192]
500
+ - effect-app@4.0.0-beta.167
501
+
502
+ ## 4.0.0-beta.166
503
+
504
+ ### Patch Changes
505
+
506
+ - Updated dependencies [dbcc53b]
507
+ - effect-app@4.0.0-beta.166
508
+
509
+ ## 4.0.0-beta.165
510
+
511
+ ### Patch Changes
512
+
513
+ - Updated dependencies [f88ea34]
514
+ - effect-app@4.0.0-beta.165
515
+
516
+ ## 4.0.0-beta.164
517
+
518
+ ### Patch Changes
519
+
520
+ - Updated dependencies [8cb3de4]
521
+ - effect-app@4.0.0-beta.164
522
+
523
+ ## 4.0.0-beta.163
524
+
525
+ ### Patch Changes
526
+
527
+ - Updated dependencies [b952f19]
528
+ - effect-app@4.0.0-beta.163
529
+
530
+ ## 4.0.0-beta.162
531
+
532
+ ### Patch Changes
533
+
534
+ - Updated dependencies [b52b424]
535
+ - effect-app@4.0.0-beta.162
536
+
537
+ ## 4.0.0-beta.161
538
+
539
+ ### Patch Changes
540
+
541
+ - effect-app@4.0.0-beta.161
542
+
543
+ ## 4.0.0-beta.160
544
+
545
+ ### Patch Changes
546
+
547
+ - 505bfa9: Add concurrent decode helper APIs and migrate decode callsites to use them.
548
+
549
+ - Add `withDefaultParseOptions` and keep `DefaultParseOptions` centralized.
550
+ - Export `decodeEffectConcurrently` and `decodeUnknownEffectConcurrently` from Schema and SchemaParser modules.
551
+ - Update repository, queue, client, form, and CLI decode paths to use concurrent decode helpers.
552
+ - Keep schema constructors free of hardcoded parse concurrency overrides.
553
+
554
+ - Updated dependencies [505bfa9]
555
+ - effect-app@4.0.0-beta.160
556
+
557
+ ## 4.0.0-beta.159
558
+
559
+ ### Patch Changes
560
+
561
+ - c1e73de:
562
+ - Updated dependencies [c1e73de]
563
+ - effect-app@4.0.0-beta.159
564
+
565
+ ## 4.0.0-beta.158
566
+
567
+ ### Patch Changes
568
+
569
+ - Updated dependencies [3c1f52d]
570
+ - Updated dependencies [6ae3050]
571
+ - effect-app@4.0.0-beta.158
572
+
573
+ ## 4.0.0-beta.157
574
+
575
+ ### Patch Changes
576
+
577
+ - 6fff09c: unify encoded function for when you use encodedKeys
578
+ - Updated dependencies [6fff09c]
579
+ - effect-app@4.0.0-beta.157
580
+
581
+ ## 4.0.0-beta.156
582
+
583
+ ### Patch Changes
584
+
585
+ - effect-app@4.0.0-beta.156
586
+
587
+ ## 4.0.0-beta.155
588
+
589
+ ### Patch Changes
590
+
591
+ - Updated dependencies [c215db8]
592
+ - effect-app@4.0.0-beta.155
593
+
594
+ ## 4.0.0-beta.154
595
+
596
+ ### Patch Changes
597
+
598
+ - effect-app@4.0.0-beta.154
599
+
600
+ ## 4.0.0-beta.153
601
+
602
+ ### Patch Changes
603
+
604
+ - effect-app@4.0.0-beta.153
605
+
606
+ ## 4.0.0-beta.152
607
+
608
+ ### Patch Changes
609
+
610
+ - effect-app@4.0.0-beta.152
611
+
612
+ ## 4.0.0-beta.151
613
+
614
+ ### Patch Changes
615
+
616
+ - 925214b: update packages
617
+ - effect-app@4.0.0-beta.151
618
+
619
+ ## 4.0.0-beta.150
620
+
621
+ ### Patch Changes
622
+
623
+ - Updated dependencies [85a8275]
624
+ - effect-app@4.0.0-beta.150
625
+
626
+ ## 4.0.0-beta.149
627
+
628
+ ### Patch Changes
629
+
630
+ - Updated dependencies [f317c5e]
631
+ - effect-app@4.0.0-beta.149
632
+
633
+ ## 4.0.0-beta.148
634
+
635
+ ### Patch Changes
636
+
637
+ - Updated dependencies [199e9a5]
638
+ - effect-app@4.0.0-beta.148
639
+
640
+ ## 4.0.0-beta.147
641
+
642
+ ### Patch Changes
643
+
644
+ - Updated dependencies [47e3742]
645
+ - effect-app@4.0.0-beta.147
646
+
647
+ ## 4.0.0-beta.146
648
+
649
+ ### Patch Changes
650
+
651
+ - Updated dependencies [a4dff57]
652
+ - effect-app@4.0.0-beta.146
653
+
654
+ ## 4.0.0-beta.145
655
+
656
+ ### Patch Changes
657
+
658
+ - Updated dependencies [12abb55]
659
+ - effect-app@4.0.0-beta.145
660
+
661
+ ## 4.0.0-beta.144
662
+
663
+ ### Patch Changes
664
+
665
+ - d31253f: Refactor eligible schema classes and tagged classes to Opaque schemas, and migrate constructor call sites to use `.make` for those models.
666
+ - Updated dependencies [11422f8]
667
+ - Updated dependencies [d31253f]
668
+ - effect-app@4.0.0-beta.144
669
+
670
+ ## 4.0.0-beta.143
671
+
672
+ ### Patch Changes
673
+
674
+ - Updated dependencies [79eb019]
675
+ - effect-app@4.0.0-beta.143
676
+
677
+ ## 4.0.0-beta.142
678
+
679
+ ### Patch Changes
680
+
681
+ - Updated dependencies [3436d44]
682
+ - Updated dependencies [025de47]
683
+ - effect-app@4.0.0-beta.142
684
+
685
+ ## 4.0.0-beta.141
686
+
687
+ ### Patch Changes
688
+
689
+ - Updated dependencies [7c25dbb]
690
+ - effect-app@4.0.0-beta.141
691
+
692
+ ## 4.0.0-beta.140
693
+
694
+ ### Patch Changes
695
+
696
+ - 1576688: Add configurable `fakeMailAddress` to `SendgridConfig`. Supports `{i}` placeholder for unique addresses, e.g. `"test+{i}@example.com"`.
697
+ - effect-app@4.0.0-beta.140
698
+
699
+ ## 4.0.0-beta.139
700
+
701
+ ### Patch Changes
702
+
703
+ - effect-app@4.0.0-beta.139
704
+
705
+ ## 4.0.0-beta.138
706
+
707
+ ### Patch Changes
708
+
709
+ - effect-app@4.0.0-beta.138
710
+
711
+ ## 4.0.0-beta.137
712
+
713
+ ### Patch Changes
714
+
715
+ - effect-app@4.0.0-beta.137
716
+
717
+ ## 4.0.0-beta.136
718
+
719
+ ### Patch Changes
720
+
721
+ - effect-app@4.0.0-beta.136
722
+
723
+ ## 4.0.0-beta.135
724
+
725
+ ### Patch Changes
726
+
727
+ - Updated dependencies [c7bbc41]
728
+ - effect-app@4.0.0-beta.135
729
+
730
+ ## 4.0.0-beta.134
731
+
732
+ ### Patch Changes
733
+
734
+ - eed57c6: Fix `R` inference in `OneDSL`, `OneDSLExt.modify` and `OneDSLExt.update`. The callback's effect type was annotated as `Effect<…, E, FixEnv<R, Evt, S1, S2>>`, which deadlocked inference of `R` (TS6 fell back to `never`, tsgo to `unknown`, leaking `unknown` into yielded effects in generator handlers). Now matches the existing `AllDSLExt` pattern: bare `R` in the callback, `FixEnv<R, …>` only in the return type.
735
+ - Updated dependencies [9d3495e]
736
+ - Updated dependencies [f353d48]
737
+ - effect-app@4.0.0-beta.134
738
+
739
+ ## 4.0.0-beta.133
740
+
741
+ ### Patch Changes
742
+
743
+ - 2f862a4: Apply `toCodecJson` in `SQLModel.JsonFromString` so SQL JSON string fields use the proper JSON-safe codec at the encode/decode boundary (aligns with queue, event, and gist call sites).
744
+ - c3299f7: update packages
745
+ - Updated dependencies [c3299f7]
746
+ - effect-app@4.0.0-beta.133
747
+
748
+ ## 4.0.0-beta.132
749
+
750
+ ### Patch Changes
751
+
752
+ - effect-app@4.0.0-beta.132
753
+
754
+ ## 4.0.0-beta.131
755
+
756
+ ### Patch Changes
757
+
758
+ - 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.
759
+ - effect-app@4.0.0-beta.131
760
+
761
+ ## 4.0.0-beta.130
762
+
763
+ ### Patch Changes
764
+
765
+ - Updated dependencies [ea1bd46]
766
+ - effect-app@4.0.0-beta.130
767
+
768
+ ## 4.0.0-beta.129
769
+
770
+ ### Patch Changes
771
+
772
+ - effect-app@4.0.0-beta.129
773
+
774
+ ## 4.0.0-beta.128
775
+
776
+ ### Patch Changes
777
+
778
+ - Updated dependencies [57db551]
779
+ - effect-app@4.0.0-beta.128
780
+
781
+ ## 4.0.0-beta.127
782
+
783
+ ### Patch Changes
784
+
785
+ - 71a0719: Merge `batchPar` into `batch`, expose `concurrency` via an optional `BatchOptions` argument, and make `batch` dual (data-first + data-last).
786
+ - 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.
787
+ - effect-app@4.0.0-beta.127
788
+
789
+ ## 4.0.0-beta.126
790
+
791
+ ### Patch Changes
792
+
793
+ - Updated dependencies [458bb1b]
794
+ - effect-app@4.0.0-beta.126
795
+
796
+ ## 4.0.0-beta.125
797
+
798
+ ### Patch Changes
799
+
800
+ - 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`.
801
+ - effect-app@4.0.0-beta.125
802
+
803
+ ## 4.0.0-beta.124
804
+
805
+ ### Patch Changes
806
+
807
+ - c9e0c44: cleanup auth
808
+ - 256ae85: cleanup
809
+ - Updated dependencies [256ae85]
810
+ - effect-app@4.0.0-beta.124
811
+
812
+ ## 4.0.0-beta.123
813
+
814
+ ### Patch Changes
815
+
816
+ - Updated dependencies [14aba14]
817
+ - effect-app@4.0.0-beta.123
818
+
819
+ ## 4.0.0-beta.122
820
+
821
+ ### Patch Changes
822
+
823
+ - 27bf9b6: Fix `Repository.query` environment typing to exclude schema context provided through `makeRepo` options.
824
+ - e02a258: Add optional batching overloads for repository `save` and `remove` helpers.
825
+ - f052d38: Replace `(...) => Effect.gen` with `Effect.fnUntraced` and convert select multi-step `pipe` chains to `Effect.gen` across infra.
826
+ - Updated dependencies [f052d38]
827
+ - effect-app@4.0.0-beta.122
828
+
829
+ ## 4.0.0-beta.121
830
+
831
+ ### Patch Changes
832
+
833
+ - 1015582: Fix `Q.project` field selection with `Schema.encodeKeys` by deriving selected fields from the encoded schema shape.
834
+ - Updated dependencies [5ac46cb]
835
+ - effect-app@4.0.0-beta.121
836
+
837
+ ## 4.0.0-beta.120
838
+
839
+ ### Patch Changes
840
+
841
+ - Updated dependencies [f21190c]
842
+ - effect-app@4.0.0-beta.120
843
+
844
+ ## 4.0.0-beta.119
845
+
846
+ ### Patch Changes
847
+
848
+ - db7ba34: Filter SSE events stream by storeId namespace
849
+ - effect-app@4.0.0-beta.119
850
+
851
+ ## 4.0.0-beta.118
852
+
853
+ ### Patch Changes
854
+
855
+ - Update effect packages to 4.0.0-beta.52
856
+ - Updated dependencies [bd26832]
857
+ - Updated dependencies [08d2e70]
858
+ - Updated dependencies
859
+ - effect-app@4.0.0-beta.118
860
+
861
+ ## 4.0.0-beta.117
862
+
863
+ ### Patch Changes
864
+
865
+ - 1d85785: Wrap store seed effects with `Effect.uninterruptible` to prevent interruption during seeding
866
+ - effect-app@4.0.0-beta.117
867
+
868
+ ## 4.0.0-beta.116
869
+
870
+ ### Patch Changes
871
+
872
+ - 7d5cefc: SQL and Pg stores now scope seed migration records by namespace and table name in shared databases to avoid cross-namespace seed collisions.
873
+ - effect-app@4.0.0-beta.116
874
+
875
+ ## 4.0.0-beta.115
876
+
877
+ ### Patch Changes
878
+
879
+ - 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.
880
+ - effect-app@4.0.0-beta.115
881
+
882
+ ## 4.0.0-beta.114
883
+
884
+ ### Patch Changes
885
+
886
+ - 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.
887
+ - effect-app@4.0.0-beta.114
888
+
889
+ ## 4.0.0-beta.113
890
+
891
+ ### Minor Changes
892
+
893
+ - 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.
894
+
895
+ 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.
896
+
897
+ 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.
898
+
899
+ ### Patch Changes
900
+
901
+ - effect-app@4.0.0-beta.113
902
+
903
+ ## 4.0.0-beta.112
904
+
905
+ ### Patch Changes
906
+
907
+ - 8a4a6d2: fup
908
+ - effect-app@4.0.0-beta.112
909
+
910
+ ## 4.0.0-beta.111
911
+
912
+ ### Patch Changes
913
+
914
+ - ca94edf: fix typo
915
+ - Updated dependencies [ca94edf]
916
+ - effect-app@4.0.0-beta.111
917
+
918
+ ## 4.0.0-beta.110
919
+
920
+ ### Minor Changes
921
+
922
+ - 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`.
923
+
924
+ ### Patch Changes
925
+
926
+ - effect-app@4.0.0-beta.110
927
+
928
+ ## 4.0.0-beta.109
929
+
930
+ ### Patch Changes
931
+
932
+ - 82f66f1: use uninterruptiple
933
+ - effect-app@4.0.0-beta.109
934
+
935
+ ## 4.0.0-beta.108
936
+
937
+ ### Patch Changes
938
+
939
+ - Updated dependencies [3e46e7b]
940
+ - effect-app@4.0.0-beta.108
941
+
942
+ ## 4.0.0-beta.107
943
+
944
+ ### Patch Changes
945
+
946
+ - 902ca1b: fix
947
+ - effect-app@4.0.0-beta.107
948
+
949
+ ## 4.0.0-beta.106
950
+
951
+ ### Patch Changes
952
+
953
+ - f22a026: Use `Effect.cached` in `getOrCreateStoreEffect` for proper memoization of the resolver effect.
954
+ - effect-app@4.0.0-beta.106
955
+
956
+ ## 4.0.0-beta.105
957
+
958
+ ### Minor Changes
959
+
960
+ - 3d732b1: Rewrite `withRequestResolverCache` to use official `RequestResolver.withCache`, creating a cached resolver per ContextMap via `getOrCreateStoreEffect` with semaphore-guarded initialization.
961
+
962
+ ### Patch Changes
963
+
964
+ - 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.
965
+ - 5773159: Add `itemType` annotation to all repository spans
966
+ - effect-app@4.0.0-beta.105
967
+
968
+ ## 4.0.0-beta.104
969
+
970
+ ### Patch Changes
971
+
972
+ - Updated dependencies [e944bca]
973
+ - effect-app@4.0.0-beta.104
974
+
975
+ ## 4.0.0-beta.103
976
+
977
+ ### Patch Changes
978
+
979
+ - Updated dependencies [7119320]
980
+ - effect-app@4.0.0-beta.103
981
+
982
+ ## 4.0.0-beta.102
983
+
984
+ ### Patch Changes
985
+
986
+ - 62627e9: Fix boolean handling in SQL SELECT and WHERE
987
+ - effect-app@4.0.0-beta.102
988
+
989
+ ## 4.0.0-beta.101
990
+
991
+ ### Patch Changes
992
+
993
+ - effect-app@4.0.0-beta.101
994
+
995
+ ## 4.0.0-beta.100
996
+
997
+ ### Patch Changes
998
+
999
+ - 43611c7: enable cosmosdb large partition key hashes
1000
+ - effect-app@4.0.0-beta.100
1001
+
1002
+ ## 4.0.0-beta.99
1003
+
1004
+ ### Patch Changes
1005
+
1006
+ - 6a0e008: remove artificial Cosmos bulkSet delays
1007
+ - effect-app@4.0.0-beta.99
1008
+
1009
+ ## 4.0.0-beta.98
1010
+
1011
+ ### Patch Changes
1012
+
1013
+ - 5aed2e3: Add span to Cosmos `batchRemove` and include `namespace` attribute on all Cosmos store spans.
1014
+ - effect-app@4.0.0-beta.98
1015
+
1016
+ ## 4.0.0-beta.97
1017
+
1018
+ ### Patch Changes
1019
+
1020
+ - 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.
1021
+ - effect-app@4.0.0-beta.97
1022
+
1023
+ ## 4.0.0-beta.96
1024
+
1025
+ ### Patch Changes
1026
+
1027
+ - Updated dependencies [5615e47]
1028
+ - effect-app@4.0.0-beta.96
1029
+
1030
+ ## 4.0.0-beta.95
1031
+
1032
+ ### Patch Changes
1033
+
1034
+ - 88838fb: Remove pick/omit customizations from Class/TaggedClass/Struct/TaggedStruct. Use `Struct.pick(X.fields, [...])` from `effect-app` instead.
1035
+ - Updated dependencies [88838fb]
1036
+ - effect-app@4.0.0-beta.95
1037
+
1038
+ ## 4.0.0-beta.94
1039
+
1040
+ ### Patch Changes
1041
+
1042
+ - effect-app@4.0.0-beta.94
1043
+
1044
+ ## 4.0.0-beta.93
1045
+
1046
+ ### Patch Changes
1047
+
1048
+ - 2d85646: fix SQL includes-any/all double-quoting values for SQLite (JSON.stringify only needed for Postgres jsonb)
1049
+ - effect-app@4.0.0-beta.93
1050
+
1051
+ ## 4.0.0-beta.92
1052
+
1053
+ ### Patch Changes
1054
+
1055
+ - b4ffee0: fix SQL whereEvery double-negation bug causing wrong query when operators like notIn are used (especially with empty arrays)
1056
+ - effect-app@4.0.0-beta.92
1057
+
1058
+ ## 4.0.0-beta.91
1059
+
1060
+ ### Patch Changes
1061
+
1062
+ - Updated dependencies [738b482]
1063
+ - effect-app@4.0.0-beta.91
1064
+
1065
+ ## 4.0.0-beta.90
1066
+
1067
+ ### Patch Changes
1068
+
1069
+ - d786b91: Fix SQL `whereSome`/`whereEvery` array relation queries using `EXISTS` with `json_each` (SQLite) / `jsonb_array_elements` (Pg).
1070
+ - effect-app@4.0.0-beta.90
1071
+
1072
+ ## 4.0.0-beta.89
1073
+
1074
+ ### Patch Changes
1075
+
1076
+ - 9a9e46c: Fix SQL select queries to read `_etag` from column instead of JSON data, preventing INSERT on update.
1077
+ - effect-app@4.0.0-beta.89
1078
+
1079
+ ## 4.0.0-beta.88
1080
+
1081
+ ### Patch Changes
1082
+
1083
+ - dfd5562: Fix SQL `IN`/`NOT IN` with null values to use `IS NULL`/`IS NOT NULL` instead of `IN (NULL, ...)`.
1084
+ - effect-app@4.0.0-beta.88
1085
+
1086
+ ## 4.0.0-beta.87
1087
+
1088
+ ### Patch Changes
1089
+
1090
+ - 5a709d1: Fix SQLite select query type coercion using `json_quote` and apply defaultValues in SQL WHERE clauses via `COALESCE`.
1091
+ - effect-app@4.0.0-beta.87
1092
+
1093
+ ## 4.0.0-beta.86
1094
+
1095
+ ### Patch Changes
1096
+
1097
+ - 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.
1098
+ - effect-app@4.0.0-beta.86
1099
+
1100
+ ## 4.0.0-beta.85
1101
+
1102
+ ### Patch Changes
1103
+
1104
+ - 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.
1105
+ - effect-app@4.0.0-beta.85
1106
+
1107
+ ## 4.0.0-beta.84
1108
+
1109
+ ### Patch Changes
1110
+
1111
+ - 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).
1112
+ - effect-app@4.0.0-beta.84
1113
+
1114
+ ## 4.0.0-beta.83
1115
+
1116
+ ### Patch Changes
1117
+
1118
+ - 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.
1119
+ - effect-app@4.0.0-beta.83
1120
+
1121
+ ## 4.0.0-beta.82
1122
+
1123
+ ### Minor Changes
1124
+
1125
+ - 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.
1126
+ - 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.
1127
+ - 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.
1128
+ - 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`.
1129
+
1130
+ ### Patch Changes
1131
+
1132
+ - effect-app@4.0.0-beta.82
1133
+
1134
+ ## 4.0.0-beta.81
1135
+
1136
+ ### Minor Changes
1137
+
1138
+ - fd67f0b: Add `withRequestResolverCache` to scope RequestResolver cache to the ContextMap (request-scoped). Add `getOrCreateStore` to ContextMap for generic scoped storage.
1139
+
1140
+ ### Patch Changes
1141
+
1142
+ - effect-app@4.0.0-beta.81
1143
+
1144
+ ## 4.0.0-beta.80
1145
+
1146
+ ### Patch Changes
1147
+
1148
+ - eaf0115: enforce local
1149
+ - effect-app@4.0.0-beta.80
1150
+
1151
+ ## 4.0.0-beta.79
1152
+
1153
+ ### Patch Changes
1154
+
1155
+ - 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).
1156
+ - Updated dependencies [d16845e]
1157
+ - effect-app@4.0.0-beta.79
1158
+
1159
+ ## 4.0.0-beta.78
1160
+
1161
+ ### Minor Changes
1162
+
1163
+ - 818e047: Router `matchFor` no longer requires `meta` property on resource when requests carry `moduleName` from `TaggedRequestFor`
1164
+
1165
+ ### Patch Changes
1166
+
1167
+ - effect-app@4.0.0-beta.78
1168
+
1169
+ ## 4.0.0-beta.77
1170
+
1171
+ ### Patch Changes
1172
+
1173
+ - Updated dependencies [3613e87]
1174
+ - effect-app@4.0.0-beta.77
1175
+
1176
+ ## 4.0.0-beta.76
1177
+
1178
+ ### Patch Changes
1179
+
1180
+ - fac725d: update effect to latest beta
1181
+ - Updated dependencies [a5248a9]
1182
+ - Updated dependencies [fac725d]
1183
+ - effect-app@4.0.0-beta.76
1184
+
1185
+ ## 4.0.0-beta.75
1186
+
1187
+ ### Patch Changes
1188
+
1189
+ - Updated dependencies [24f0a5a]
1190
+ - effect-app@4.0.0-beta.75
1191
+
1192
+ ## 4.0.0-beta.74
1193
+
1194
+ ### Patch Changes
1195
+
1196
+ - Updated dependencies [54ec1ef]
1197
+ - effect-app@4.0.0-beta.74
1198
+
1199
+ ## 4.0.0-beta.73
1200
+
1201
+ ### Patch Changes
1202
+
1203
+ - b53c59e: fix signature
1204
+ - effect-app@4.0.0-beta.73
1205
+
1206
+ ## 4.0.0-beta.72
1207
+
1208
+ ### Patch Changes
1209
+
1210
+ - Updated dependencies [0541f0d]
1211
+ - effect-app@4.0.0-beta.72
1212
+
1213
+ ## 4.0.0-beta.71
1214
+
1215
+ ### Patch Changes
1216
+
1217
+ - beae3a0: Remove `withDefaultConstructor` wrapper, use `S.withConstructorDefault` directly with `Effect.succeed`/`Effect.sync`.
1218
+ - Updated dependencies [beae3a0]
1219
+ - effect-app@4.0.0-beta.71
1220
+
1221
+ ## 4.0.0-beta.70
1222
+
1223
+ ### Patch Changes
1224
+
1225
+ - fdb9cb3: cleanup
1226
+ - effect-app@4.0.0-beta.70
1227
+
1228
+ ## 4.0.0-beta.69
1229
+
1230
+ ### Patch Changes
1231
+
1232
+ - dc465e3: update to latest effect beta
1233
+ - Updated dependencies [dc465e3]
1234
+ - effect-app@4.0.0-beta.69
1235
+
1236
+ ## 4.0.0-beta.68
1237
+
1238
+ ### Patch Changes
1239
+
1240
+ - Updated dependencies [e6f2341]
1241
+ - effect-app@4.0.0-beta.68
1242
+
1243
+ ## 4.0.0-beta.67
1244
+
1245
+ ### Patch Changes
1246
+
1247
+ - effect-app@4.0.0-beta.67
1248
+
1249
+ ## 4.0.0-beta.66
1250
+
1251
+ ### Patch Changes
1252
+
1253
+ - Updated dependencies [edc52e4]
1254
+ - effect-app@4.0.0-beta.66
1255
+
1256
+ ## 4.0.0-beta.65
1257
+
1258
+ ### Patch Changes
1259
+
1260
+ - Updated dependencies [31739d7]
1261
+ - Updated dependencies [1f103b2]
1262
+ - effect-app@4.0.0-beta.65
1263
+
1264
+ ## 4.0.0-beta.64
1265
+
1266
+ ### Patch Changes
1267
+
1268
+ - Updated dependencies [c1a6fdc]
1269
+ - effect-app@4.0.0-beta.64
1270
+
1271
+ ## 4.0.0-beta.63
1272
+
1273
+ ### Patch Changes
1274
+
1275
+ - 1f9d7da: fix missing toCodecJson usages
1276
+ - effect-app@4.0.0-beta.63
1277
+
1278
+ ## 4.0.0-beta.62
1279
+
1280
+ ### Patch Changes
1281
+
1282
+ - Updated dependencies [0b21a02]
1283
+ - effect-app@4.0.0-beta.62
1284
+
1285
+ ## 4.0.0-beta.61
1286
+
1287
+ ### Patch Changes
1288
+
1289
+ - effect-app@4.0.0-beta.61
1290
+
1291
+ ## 4.0.0-beta.60
1292
+
1293
+ ### Patch Changes
1294
+
1295
+ - 29c39d2: Fix repository `find` with transformed id fields in tagged union schemas
1296
+ - effect-app@4.0.0-beta.60
1297
+
1298
+ ## 4.0.0-beta.59
1299
+
1300
+ ### Patch Changes
1301
+
1302
+ - cec026d: update packages
1303
+ - Updated dependencies [cec026d]
1304
+ - effect-app@4.0.0-beta.59
1305
+
1306
+ ## 4.0.0-beta.58
1307
+
1308
+ ### Patch Changes
1309
+
1310
+ - effect-app@4.0.0-beta.58
1311
+
1312
+ ## 4.0.0-beta.57
1313
+
1314
+ ### Patch Changes
1315
+
1316
+ - fbf47b8: Fix repository `find` with transformed id fields (e.g. composite ids using `decodeTo`)
1317
+ - effect-app@4.0.0-beta.57
1318
+
1319
+ ## 4.0.0-beta.56
1320
+
1321
+ ### Patch Changes
1322
+
1323
+ - effect-app@4.0.0-beta.56
1324
+
1325
+ ## 4.0.0-beta.55
1326
+
1327
+ ### Patch Changes
1328
+
1329
+ - effect-app@4.0.0-beta.55
1330
+
1331
+ ## 4.0.0-beta.54
1332
+
1333
+ ### Patch Changes
1334
+
1335
+ - d867272: the return of `Context`
1336
+ - Updated dependencies [d867272]
1337
+ - effect-app@4.0.0-beta.54
1338
+
1339
+ ## 4.0.0-beta.53
1340
+
1341
+ ### Patch Changes
1342
+
1343
+ - Updated dependencies [ee9694e]
1344
+ - effect-app@4.0.0-beta.53
1345
+
1346
+ ## 4.0.0-beta.52
1347
+
1348
+ ### Patch Changes
1349
+
1350
+ - Updated dependencies [6252808]
1351
+ - effect-app@4.0.0-beta.52
1352
+
1353
+ ## 4.0.0-beta.51
1354
+
1355
+ ### Patch Changes
1356
+
1357
+ - effect-app@4.0.0-beta.51
1358
+
1359
+ ## 4.0.0-beta.50
1360
+
1361
+ ### Patch Changes
1362
+
1363
+ - effect-app@4.0.0-beta.50
1364
+
1365
+ ## 4.0.0-beta.49
1366
+
1367
+ ### Patch Changes
1368
+
1369
+ - Updated dependencies [e585c9c]
1370
+ - effect-app@4.0.0-beta.49
1371
+
1372
+ ## 4.0.0-beta.48
1373
+
1374
+ ### Patch Changes
1375
+
1376
+ - Updated dependencies [0c88f78]
1377
+ - effect-app@4.0.0-beta.48
1378
+
1379
+ ## 4.0.0-beta.47
1380
+
1381
+ ### Patch Changes
1382
+
1383
+ - Updated dependencies [3365758]
1384
+ - effect-app@4.0.0-beta.47
1385
+
1386
+ ## 4.0.0-beta.46
1387
+
1388
+ ### Patch Changes
1389
+
1390
+ - effect-app@4.0.0-beta.46
1391
+
1392
+ ## 4.0.0-beta.45
1393
+
1394
+ ### Patch Changes
1395
+
1396
+ - 10b55ff: update packages
1397
+ - Updated dependencies [10b55ff]
1398
+ - effect-app@4.0.0-beta.45
1399
+
1400
+ ## 4.0.0-beta.44
1401
+
1402
+ ### Patch Changes
1403
+
1404
+ - a37aa38: Update to effect beta 43
1405
+ - Updated dependencies [a37aa38]
1406
+ - effect-app@4.0.0-beta.44
1407
+
1408
+ ## 4.0.0-beta.43
1409
+
1410
+ ### Patch Changes
1411
+
1412
+ - dab6992: no need for .lock.lock
1413
+ - effect-app@4.0.0-beta.43
1414
+
1415
+ ## 4.0.0-beta.42
1416
+
1417
+ ### Patch Changes
1418
+
1419
+ - effect-app@4.0.0-beta.42
1420
+
1421
+ ## 4.0.0-beta.41
1422
+
1423
+ ### Patch Changes
1424
+
1425
+ - effect-app@4.0.0-beta.41
1426
+
1427
+ ## 4.0.0-beta.40
1428
+
1429
+ ### Patch Changes
1430
+
1431
+ - effect-app@4.0.0-beta.40
1432
+
1433
+ ## 4.0.0-beta.39
1434
+
1435
+ ### Patch Changes
1436
+
1437
+ - Updated dependencies [10e90d5]
1438
+ - effect-app@4.0.0-beta.39
1439
+
1440
+ ## 4.0.0-beta.38
1441
+
1442
+ ### Patch Changes
1443
+
1444
+ - Updated dependencies [0b3e00e]
1445
+ - effect-app@4.0.0-beta.38
1446
+
1447
+ ## 4.0.0-beta.37
1448
+
1449
+ ### Patch Changes
1450
+
1451
+ - Updated dependencies [947fe20]
1452
+ - effect-app@4.0.0-beta.37
1453
+
1454
+ ## 4.0.0-beta.36
1455
+
1456
+ ### Patch Changes
1457
+
1458
+ - effect-app@4.0.0-beta.36
1459
+
1460
+ ## 4.0.0-beta.35
1461
+
1462
+ ### Patch Changes
1463
+
1464
+ - effect-app@4.0.0-beta.35
1465
+
1466
+ ## 4.0.0-beta.34
1467
+
1468
+ ### Patch Changes
1469
+
1470
+ - 8c645d5: update to latest effect
1471
+ - Updated dependencies [8c645d5]
1472
+ - effect-app@4.0.0-beta.34
1473
+
1474
+ ## 4.0.0-beta.33
1475
+
1476
+ ### Patch Changes
1477
+
1478
+ - 4b95009: use Finite instead of Number
1479
+ - Updated dependencies [4b95009]
1480
+ - effect-app@4.0.0-beta.33
1481
+
1482
+ ## 4.0.0-beta.32
1483
+
1484
+ ### Patch Changes
1485
+
1486
+ - Updated dependencies [01d862a]
1487
+ - effect-app@4.0.0-beta.32
1488
+
1489
+ ## 4.0.0-beta.31
1490
+
1491
+ ### Patch Changes
1492
+
1493
+ - Updated dependencies [6b6d601]
1494
+ - effect-app@4.0.0-beta.31
1495
+
1496
+ ## 4.0.0-beta.30
1497
+
1498
+ ### Patch Changes
1499
+
1500
+ - Updated dependencies [5ec1f45]
1501
+ - effect-app@4.0.0-beta.30
1502
+
1503
+ ## 4.0.0-beta.29
1504
+
1505
+ ### Patch Changes
1506
+
1507
+ - Updated dependencies [a899d46]
1508
+ - effect-app@4.0.0-beta.29
1509
+
1510
+ ## 4.0.0-beta.28
1511
+
1512
+ ### Patch Changes
1513
+
1514
+ - Updated dependencies [0099208]
1515
+ - effect-app@4.0.0-beta.28
1516
+
1517
+ ## 4.0.0-beta.27
1518
+
1519
+ ### Patch Changes
1520
+
1521
+ - 601a1ff: update effect to 4.0.0-beta.37 and drop the Schema Class disableValidation workaround now that the patched effect schema covers it
1522
+ - Updated dependencies [601a1ff]
1523
+ - effect-app@4.0.0-beta.27
1524
+
1525
+ ## 4.0.0-beta.26
1526
+
1527
+ ### Patch Changes
1528
+
1529
+ - Updated dependencies [4da28e2]
1530
+ - effect-app@4.0.0-beta.26
1531
+
1532
+ ## 4.0.0-beta.25
1533
+
1534
+ ### Patch Changes
1535
+
1536
+ - Updated dependencies [6282d4b]
1537
+ - effect-app@4.0.0-beta.25
1538
+
1539
+ ## 4.0.0-beta.24
1540
+
1541
+ ### Patch Changes
1542
+
1543
+ - Updated dependencies [32f71bf]
1544
+ - effect-app@4.0.0-beta.24
1545
+
1546
+ ## 4.0.0-beta.23
1547
+
1548
+ ### Patch Changes
1549
+
1550
+ - Updated dependencies [ea08a79]
1551
+ - effect-app@4.0.0-beta.23
1552
+
1553
+ ## 4.0.0-beta.22
1554
+
1555
+ ### Patch Changes
1556
+
1557
+ - effect-app@4.0.0-beta.22
1558
+
3
1559
  ## 4.0.0-beta.21
4
1560
 
5
1561
  ### Patch Changes