diff --git a/.changeset/pre.json b/.changeset/pre.json index d278e0d3d..fcd8e0810 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -213,6 +213,7 @@ "stale-papers-join", "store-effect-cached", "store-seed-uninterruptible", + "stream-final-type", "strong-dots-sin", "struct-pick-omit", "sweet-humans-ring", diff --git a/packages/effect-app/CHANGELOG.md b/packages/effect-app/CHANGELOG.md index 99aa2d4ab..4fd89a3da 100644 --- a/packages/effect-app/CHANGELOG.md +++ b/packages/effect-app/CHANGELOG.md @@ -1,5 +1,22 @@ # @effect-app/prelude +## 4.0.0-beta.179 + +### Minor Changes + +- 828d264: Stream requests now support an optional `final` schema that models the final success type of the stream. When declared, `mutateStream`'s execute effect resolves with the last emitted value typed as `Final` instead of `void`. + + ```ts + class MyStream extends SomethingStream()( + "MyStream", + { id: S.String }, + { + success: S.Union([OperationProgress, ExportComplete]), + final: ExportComplete, // execute now resolves with ExportComplete + } + ) {} + ``` + ## 4.0.0-beta.178 ## 4.0.0-beta.177 diff --git a/packages/effect-app/package.json b/packages/effect-app/package.json index acb159acd..34c835a30 100644 --- a/packages/effect-app/package.json +++ b/packages/effect-app/package.json @@ -1,6 +1,6 @@ { "name": "effect-app", - "version": "4.0.0-beta.178", + "version": "4.0.0-beta.179", "license": "MIT", "type": "module", "dependencies": { diff --git a/packages/infra/CHANGELOG.md b/packages/infra/CHANGELOG.md index 95103a877..4ddc24f48 100644 --- a/packages/infra/CHANGELOG.md +++ b/packages/infra/CHANGELOG.md @@ -1,5 +1,12 @@ # @effect-app/infra +## 4.0.0-beta.179 + +### Patch Changes + +- Updated dependencies [828d264] + - effect-app@4.0.0-beta.179 + ## 4.0.0-beta.178 ### Patch Changes diff --git a/packages/infra/package.json b/packages/infra/package.json index 196c680ef..82e05ccb1 100644 --- a/packages/infra/package.json +++ b/packages/infra/package.json @@ -1,6 +1,6 @@ { "name": "@effect-app/infra", - "version": "4.0.0-beta.178", + "version": "4.0.0-beta.179", "license": "MIT", "type": "module", "dependencies": { diff --git a/packages/vue-components/CHANGELOG.md b/packages/vue-components/CHANGELOG.md index 1ab73bb51..326762685 100644 --- a/packages/vue-components/CHANGELOG.md +++ b/packages/vue-components/CHANGELOG.md @@ -1,5 +1,13 @@ # @effect-app/vue-components +## 4.0.0-beta.179 + +### Patch Changes + +- Updated dependencies [828d264] + - @effect-app/vue@4.0.0-beta.179 + - effect-app@4.0.0-beta.179 + ## 4.0.0-beta.178 ### Patch Changes diff --git a/packages/vue-components/package.json b/packages/vue-components/package.json index 7265fe018..785d0f174 100644 --- a/packages/vue-components/package.json +++ b/packages/vue-components/package.json @@ -1,6 +1,6 @@ { "name": "@effect-app/vue-components", - "version": "4.0.0-beta.178", + "version": "4.0.0-beta.179", "scripts": { "check": "vue-tsc", "build": "pnpm build:run", diff --git a/packages/vue/CHANGELOG.md b/packages/vue/CHANGELOG.md index 6c5758b46..ffe7a4dd0 100644 --- a/packages/vue/CHANGELOG.md +++ b/packages/vue/CHANGELOG.md @@ -1,5 +1,27 @@ # @effect-app/vue +## 4.0.0-beta.179 + +### Minor Changes + +- 828d264: Stream requests now support an optional `final` schema that models the final success type of the stream. When declared, `mutateStream`'s execute effect resolves with the last emitted value typed as `Final` instead of `void`. + + ```ts + class MyStream extends SomethingStream()( + "MyStream", + { id: S.String }, + { + success: S.Union([OperationProgress, ExportComplete]), + final: ExportComplete, // execute now resolves with ExportComplete + } + ) {} + ``` + +### Patch Changes + +- Updated dependencies [828d264] + - effect-app@4.0.0-beta.179 + ## 4.0.0-beta.178 ### Minor Changes @@ -42,8 +64,8 @@ ```ts useMutation(startExportCommand, { - select: (result) => pollUntilDone(result.jobId) - }) + select: (result) => pollUntilDone(result.jobId), + }); ``` ### Patch Changes diff --git a/packages/vue/package.json b/packages/vue/package.json index 6ed25c7fc..dc1f2aad5 100644 --- a/packages/vue/package.json +++ b/packages/vue/package.json @@ -1,6 +1,6 @@ { "name": "@effect-app/vue", - "version": "4.0.0-beta.178", + "version": "4.0.0-beta.179", "license": "MIT", "type": "module", "homepage": "https://github.com/effect-ts-app/libs/tree/main/packages/vue",