@effect/platform 0.87.2 → 0.87.3

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.
@@ -3,15 +3,20 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.withPreResponseHandler = exports.toWebHandlerRuntime = exports.toWebHandlerLayer = exports.toWebHandler = exports.toHandled = exports.currentPreResponseHandlers = exports.appendPreResponseHandler = void 0;
6
+ exports.withPreResponseHandler = exports.unsafeEjectStreamScope = exports.toWebHandlerRuntime = exports.toWebHandlerLayer = exports.toWebHandler = exports.toHandled = exports.ejectDefaultScopeClose = exports.currentPreResponseHandlers = exports.appendPreResponseHandler = void 0;
7
7
  var Context = _interopRequireWildcard(require("effect/Context"));
8
8
  var Effect = _interopRequireWildcard(require("effect/Effect"));
9
9
  var Exit = _interopRequireWildcard(require("effect/Exit"));
10
+ var Fiber = _interopRequireWildcard(require("effect/Fiber"));
10
11
  var FiberRef = _interopRequireWildcard(require("effect/FiberRef"));
12
+ var GlobalValue = _interopRequireWildcard(require("effect/GlobalValue"));
11
13
  var Layer = _interopRequireWildcard(require("effect/Layer"));
14
+ var Option = _interopRequireWildcard(require("effect/Option"));
12
15
  var Runtime = _interopRequireWildcard(require("effect/Runtime"));
13
16
  var Scope = _interopRequireWildcard(require("effect/Scope"));
17
+ var Stream = _interopRequireWildcard(require("effect/Stream"));
14
18
  var _Unify = require("effect/Unify");
19
+ var HttpBody = _interopRequireWildcard(require("./HttpBody.js"));
15
20
  var ServerError = _interopRequireWildcard(require("./HttpServerError.js"));
16
21
  var ServerRequest = _interopRequireWildcard(require("./HttpServerRequest.js"));
17
22
  var ServerResponse = _interopRequireWildcard(require("./HttpServerResponse.js"));
@@ -74,13 +79,45 @@ const toHandled = (self, handleResponse, middleware) => {
74
79
  return handledSymbol in request ? Effect.void : handleResponse(request, response);
75
80
  })
76
81
  }));
77
- return Effect.uninterruptible(Effect.scoped(withMiddleware));
82
+ return Effect.uninterruptible(scoped(withMiddleware));
78
83
  };
79
84
  /**
85
+ * If you want to finalize the http request scope elsewhere, you can use this
86
+ * function to eject from the default scope closure.
87
+ *
80
88
  * @since 1.0.0
81
- * @category fiber refs
89
+ * @category Scope
82
90
  */
83
91
  exports.toHandled = toHandled;
92
+ const ejectDefaultScopeClose = scope => {
93
+ ejectedScopes.add(scope);
94
+ };
95
+ /**
96
+ * @since 1.0.0
97
+ * @category Scope
98
+ */
99
+ exports.ejectDefaultScopeClose = ejectDefaultScopeClose;
100
+ const unsafeEjectStreamScope = response => {
101
+ if (response.body._tag !== "Stream") {
102
+ return response;
103
+ }
104
+ const fiber = Option.getOrThrow(Fiber.getCurrentFiber());
105
+ const scope = Context.unsafeGet(fiber.currentContext, Scope.Scope);
106
+ ejectDefaultScopeClose(scope);
107
+ return ServerResponse.setBody(response, HttpBody.stream(Stream.ensuring(response.body.stream, Scope.close(scope, Exit.void)), response.body.contentType, response.body.contentLength));
108
+ };
109
+ exports.unsafeEjectStreamScope = unsafeEjectStreamScope;
110
+ const ejectedScopes = /*#__PURE__*/GlobalValue.globalValue("@effect/platform/HttpApp/ejectedScopes", () => new WeakSet());
111
+ const scoped = effect => Effect.flatMap(Scope.make(), scope => Effect.onExit(Scope.extend(effect, scope), exit => {
112
+ if (ejectedScopes.has(scope)) {
113
+ return Effect.void;
114
+ }
115
+ return Scope.close(scope, exit);
116
+ }));
117
+ /**
118
+ * @since 1.0.0
119
+ * @category fiber refs
120
+ */
84
121
  const currentPreResponseHandlers = exports.currentPreResponseHandlers = internal.currentPreResponseHandlers;
85
122
  /**
86
123
  * @since 1.0.0
@@ -101,7 +138,7 @@ const toWebHandlerRuntime = runtime => {
101
138
  return (self, middleware) => {
102
139
  const resolveSymbol = Symbol.for("@effect/platform/HttpApp/resolve");
103
140
  const httpApp = toHandled(self, (request, response) => {
104
- ;
141
+ response = unsafeEjectStreamScope(response);
105
142
  request[resolveSymbol](ServerResponse.toWeb(response, {
106
143
  withoutBody: request.method === "HEAD",
107
144
  runtime
@@ -1 +1 @@
1
- {"version":3,"file":"HttpApp.js","names":["Context","_interopRequireWildcard","require","Effect","Exit","FiberRef","Layer","Runtime","Scope","_Unify","ServerError","ServerRequest","ServerResponse","internal","internalMiddleware","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","handledSymbol","Symbol","for","toHandled","self","handleResponse","middleware","responded","withFiberRuntime","fiber","flatMap","response","request","unsafeGet","currentContext","HttpServerRequest","handler","getFiberRef","currentPreResponseHandlers","_tag","as","tap","value","withErrorHandling","catchAllCause","cause","causeResponse","zipRight","failCause","withMiddleware","unify","undefined","tracer","matchCauseEffect","onFailure","void","_cause","empty","status","onSuccess","uninterruptible","scoped","exports","appendPreResponseHandler","withPreResponseHandler","toWebHandlerRuntime","runtime","run","runFork","resolveSymbol","httpApp","toWeb","withoutBody","method","context","Promise","resolve","contextMap","Map","unsafeMap","isContext","key","httpServerRequest","fromWeb","locally","unsafeMake","signal","addEventListener","unsafeInterruptAsFork","clientAbortFiberId","once","toWebHandler","defaultRuntime","toWebHandlerLayer","layer","scope","runSync","make","close","runPromise","build","map","toRuntime","_","runner","extend","then"],"sources":["../../src/HttpApp.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"HttpApp.js","names":["Context","_interopRequireWildcard","require","Effect","Exit","Fiber","FiberRef","GlobalValue","Layer","Option","Runtime","Scope","Stream","_Unify","HttpBody","ServerError","ServerRequest","ServerResponse","internal","internalMiddleware","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","handledSymbol","Symbol","for","toHandled","self","handleResponse","middleware","responded","withFiberRuntime","fiber","flatMap","response","request","unsafeGet","currentContext","HttpServerRequest","handler","getFiberRef","currentPreResponseHandlers","_tag","as","tap","value","withErrorHandling","catchAllCause","cause","causeResponse","zipRight","failCause","withMiddleware","unify","undefined","tracer","matchCauseEffect","onFailure","void","_cause","empty","status","onSuccess","uninterruptible","scoped","exports","ejectDefaultScopeClose","scope","ejectedScopes","add","unsafeEjectStreamScope","body","getOrThrow","getCurrentFiber","setBody","stream","ensuring","close","contentType","contentLength","globalValue","WeakSet","effect","make","onExit","extend","exit","appendPreResponseHandler","withPreResponseHandler","toWebHandlerRuntime","runtime","run","runFork","resolveSymbol","httpApp","toWeb","withoutBody","method","context","Promise","resolve","contextMap","Map","unsafeMap","isContext","key","httpServerRequest","fromWeb","locally","unsafeMake","signal","addEventListener","unsafeInterruptAsFork","clientAbortFiberId","once","toWebHandler","defaultRuntime","toWebHandlerLayer","layer","runSync","runPromise","build","map","toRuntime","_","runner","then"],"sources":["../../src/HttpApp.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"HttpBody.js","names":["Predicate","_interopRequireWildcard","require","internal","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TypeId","exports","isHttpBody","u","hasProperty","ErrorTypeId","HttpBodyError","empty","raw","uint8Array","text","unsafeJson","json","jsonSchema","urlParams","formData","formDataRecord","stream","file","fileInfo","fileWeb"],"sources":["../../src/HttpBody.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"HttpBody.js","names":["Predicate","_interopRequireWildcard","require","internal","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TypeId","exports","isHttpBody","u","hasProperty","ErrorTypeId","HttpBodyError","empty","raw","uint8Array","text","unsafeJson","json","jsonSchema","urlParams","formData","formDataRecord","stream","file","fileInfo","fileWeb"],"sources":["../../src/HttpBody.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -5,7 +5,7 @@ import * as Context from "effect/Context";
5
5
  import * as Effect from "effect/Effect";
6
6
  import * as FiberRef from "effect/FiberRef";
7
7
  import * as Layer from "effect/Layer";
8
- import type * as Option from "effect/Option";
8
+ import * as Option from "effect/Option";
9
9
  import * as Runtime from "effect/Runtime";
10
10
  import * as Scope from "effect/Scope";
11
11
  import type { HttpMiddleware } from "./HttpMiddleware.js";
@@ -27,6 +27,19 @@ export type Default<E = never, R = never> = HttpApp<ServerResponse.HttpServerRes
27
27
  * @category combinators
28
28
  */
29
29
  export declare const toHandled: <E, R, _, EH, RH>(self: Default<E, R>, handleResponse: (request: ServerRequest.HttpServerRequest, response: ServerResponse.HttpServerResponse) => Effect.Effect<_, EH, RH>, middleware?: HttpMiddleware | undefined) => Effect.Effect<void, never, Exclude<R | RH | ServerRequest.HttpServerRequest, Scope.Scope>>;
30
+ /**
31
+ * If you want to finalize the http request scope elsewhere, you can use this
32
+ * function to eject from the default scope closure.
33
+ *
34
+ * @since 1.0.0
35
+ * @category Scope
36
+ */
37
+ export declare const ejectDefaultScopeClose: (scope: Scope.Scope) => void;
38
+ /**
39
+ * @since 1.0.0
40
+ * @category Scope
41
+ */
42
+ export declare const unsafeEjectStreamScope: (response: ServerResponse.HttpServerResponse) => ServerResponse.HttpServerResponse;
30
43
  /**
31
44
  * @since 1.0.0
32
45
  * @category models
@@ -1 +1 @@
1
- {"version":3,"file":"HttpApp.d.ts","sourceRoot":"","sources":["../../src/HttpApp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HttpApp.d.ts","sourceRoot":"","sources":["../../src/HttpApp.ts"],"names":[],"mappings":"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"}
@@ -200,7 +200,7 @@ export interface Stream extends HttpBody.Proto {
200
200
  * @since 1.0.0
201
201
  * @category constructors
202
202
  */
203
- export declare const stream: (body: Stream_.Stream<globalThis.Uint8Array, unknown>, contentType?: string, contentLength?: number, etag?: string) => Stream;
203
+ export declare const stream: (body: Stream_.Stream<globalThis.Uint8Array, unknown>, contentType?: string, contentLength?: number) => Stream;
204
204
  /**
205
205
  * @since 1.0.0
206
206
  * @category constructors
@@ -1 +1 @@
1
- {"version":3,"file":"HttpBody.d.ts","sourceRoot":"","sources":["../../src/HttpBody.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HttpBody.d.ts","sourceRoot":"","sources":["../../src/HttpBody.ts"],"names":[],"mappings":"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"}
@@ -4,11 +4,16 @@
4
4
  import * as Context from "effect/Context";
5
5
  import * as Effect from "effect/Effect";
6
6
  import * as Exit from "effect/Exit";
7
+ import * as Fiber from "effect/Fiber";
7
8
  import * as FiberRef from "effect/FiberRef";
9
+ import * as GlobalValue from "effect/GlobalValue";
8
10
  import * as Layer from "effect/Layer";
11
+ import * as Option from "effect/Option";
9
12
  import * as Runtime from "effect/Runtime";
10
13
  import * as Scope from "effect/Scope";
14
+ import * as Stream from "effect/Stream";
11
15
  import { unify } from "effect/Unify";
16
+ import * as HttpBody from "./HttpBody.js";
12
17
  import * as ServerError from "./HttpServerError.js";
13
18
  import * as ServerRequest from "./HttpServerRequest.js";
14
19
  import * as ServerResponse from "./HttpServerResponse.js";
@@ -66,8 +71,38 @@ export const toHandled = (self, handleResponse, middleware) => {
66
71
  return handledSymbol in request ? Effect.void : handleResponse(request, response);
67
72
  })
68
73
  }));
69
- return Effect.uninterruptible(Effect.scoped(withMiddleware));
74
+ return Effect.uninterruptible(scoped(withMiddleware));
70
75
  };
76
+ /**
77
+ * If you want to finalize the http request scope elsewhere, you can use this
78
+ * function to eject from the default scope closure.
79
+ *
80
+ * @since 1.0.0
81
+ * @category Scope
82
+ */
83
+ export const ejectDefaultScopeClose = scope => {
84
+ ejectedScopes.add(scope);
85
+ };
86
+ /**
87
+ * @since 1.0.0
88
+ * @category Scope
89
+ */
90
+ export const unsafeEjectStreamScope = response => {
91
+ if (response.body._tag !== "Stream") {
92
+ return response;
93
+ }
94
+ const fiber = Option.getOrThrow(Fiber.getCurrentFiber());
95
+ const scope = Context.unsafeGet(fiber.currentContext, Scope.Scope);
96
+ ejectDefaultScopeClose(scope);
97
+ return ServerResponse.setBody(response, HttpBody.stream(Stream.ensuring(response.body.stream, Scope.close(scope, Exit.void)), response.body.contentType, response.body.contentLength));
98
+ };
99
+ const ejectedScopes = /*#__PURE__*/GlobalValue.globalValue("@effect/platform/HttpApp/ejectedScopes", () => new WeakSet());
100
+ const scoped = effect => Effect.flatMap(Scope.make(), scope => Effect.onExit(Scope.extend(effect, scope), exit => {
101
+ if (ejectedScopes.has(scope)) {
102
+ return Effect.void;
103
+ }
104
+ return Scope.close(scope, exit);
105
+ }));
71
106
  /**
72
107
  * @since 1.0.0
73
108
  * @category fiber refs
@@ -92,7 +127,7 @@ export const toWebHandlerRuntime = runtime => {
92
127
  return (self, middleware) => {
93
128
  const resolveSymbol = Symbol.for("@effect/platform/HttpApp/resolve");
94
129
  const httpApp = toHandled(self, (request, response) => {
95
- ;
130
+ response = unsafeEjectStreamScope(response);
96
131
  request[resolveSymbol](ServerResponse.toWeb(response, {
97
132
  withoutBody: request.method === "HEAD",
98
133
  runtime
@@ -1 +1 @@
1
- {"version":3,"file":"HttpApp.js","names":["Context","Effect","Exit","FiberRef","Layer","Runtime","Scope","unify","ServerError","ServerRequest","ServerResponse","internal","internalMiddleware","handledSymbol","Symbol","for","toHandled","self","handleResponse","middleware","responded","withFiberRuntime","fiber","flatMap","response","request","unsafeGet","currentContext","HttpServerRequest","handler","getFiberRef","currentPreResponseHandlers","_tag","as","tap","value","withErrorHandling","catchAllCause","cause","causeResponse","zipRight","failCause","withMiddleware","undefined","tracer","matchCauseEffect","onFailure","void","_cause","empty","status","onSuccess","uninterruptible","scoped","appendPreResponseHandler","withPreResponseHandler","toWebHandlerRuntime","runtime","run","runFork","resolveSymbol","httpApp","toWeb","withoutBody","method","context","Promise","resolve","contextMap","Map","unsafeMap","isContext","key","set","httpServerRequest","fromWeb","locally","unsafeMake","signal","addEventListener","unsafeInterruptAsFork","clientAbortFiberId","once","toWebHandler","defaultRuntime","toWebHandlerLayer","layer","scope","runSync","make","close","runPromise","build","map","toRuntime","_","runner","extend","then"],"sources":["../../src/HttpApp.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"HttpApp.js","names":["Context","Effect","Exit","Fiber","FiberRef","GlobalValue","Layer","Option","Runtime","Scope","Stream","unify","HttpBody","ServerError","ServerRequest","ServerResponse","internal","internalMiddleware","handledSymbol","Symbol","for","toHandled","self","handleResponse","middleware","responded","withFiberRuntime","fiber","flatMap","response","request","unsafeGet","currentContext","HttpServerRequest","handler","getFiberRef","currentPreResponseHandlers","_tag","as","tap","value","withErrorHandling","catchAllCause","cause","causeResponse","zipRight","failCause","withMiddleware","undefined","tracer","matchCauseEffect","onFailure","void","_cause","empty","status","onSuccess","uninterruptible","scoped","ejectDefaultScopeClose","scope","ejectedScopes","add","unsafeEjectStreamScope","body","getOrThrow","getCurrentFiber","setBody","stream","ensuring","close","contentType","contentLength","globalValue","WeakSet","effect","make","onExit","extend","exit","has","appendPreResponseHandler","withPreResponseHandler","toWebHandlerRuntime","runtime","run","runFork","resolveSymbol","httpApp","toWeb","withoutBody","method","context","Promise","resolve","contextMap","Map","unsafeMap","isContext","key","set","httpServerRequest","fromWeb","locally","unsafeMake","signal","addEventListener","unsafeInterruptAsFork","clientAbortFiberId","once","toWebHandler","defaultRuntime","toWebHandlerLayer","layer","runSync","runPromise","build","map","toRuntime","_","runner","then"],"sources":["../../src/HttpApp.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"HttpBody.js","names":["Predicate","internal","TypeId","isHttpBody","u","hasProperty","ErrorTypeId","HttpBodyError","empty","raw","uint8Array","text","unsafeJson","json","jsonSchema","urlParams","formData","formDataRecord","stream","file","fileInfo","fileWeb"],"sources":["../../src/HttpBody.ts"],"sourcesContent":[null],"mappings":"AAMA,OAAO,KAAKA,SAAS,MAAM,kBAAkB;AAK7C,OAAO,KAAKC,QAAQ,MAAM,wBAAwB;AAGlD;;;;AAIA,OAAO,MAAMC,MAAM,GAAkBD,QAAQ,CAACC,MAAM;AAQpD;;;;AAIA,OAAO,MAAMC,UAAU,GAAIC,CAAU,IAAoBJ,SAAS,CAACK,WAAW,CAACD,CAAC,EAAEF,MAAM,CAAC;AAoCzF;;;;AAIA,OAAO,MAAMI,WAAW,GAAkBL,QAAQ,CAACK,WAAW;AAkB9D;;;;AAIA,OAAO,MAAMC,aAAa,GAA2CN,QAAQ,CAACM,aAAa;AAqB3F;;;;AAIA,OAAO,MAAMC,KAAK,GAAUP,QAAQ,CAACO,KAAK;AAW1C;;;;AAIA,OAAO,MAAMC,GAAG,GAMLR,QAAQ,CAACQ,GAAG;AAavB;;;;AAIA,OAAO,MAAMC,UAAU,GAAsET,QAAQ,CAACS,UAAU;AAEhH;;;;AAIA,OAAO,MAAMC,IAAI,GAAuDV,QAAQ,CAACU,IAAI;AAErF;;;;AAIA,OAAO,MAAMC,UAAU,GAAkCX,QAAQ,CAACW,UAAU;AAE5E;;;;AAIA,OAAO,MAAMC,IAAI,GAAgEZ,QAAQ,CAACY,IAAI;AAE9F;;;;AAIA,OAAO,MAAMC,UAAU,GAEyCb,QAAQ,CAACa,UAAU;AAEnF;;;;AAIA,OAAO,MAAMC,SAAS,GAAmDd,QAAQ,CAACc,SAAS;AAW3F;;;;AAIA,OAAO,MAAMC,QAAQ,GAA4Cf,QAAQ,CAACe,QAAQ;AAclF;;;;AAIA,OAAO,MAAMC,cAAc,GAAyChB,QAAQ,CAACgB,cAAc;AAa3F;;;;AAIA,OAAO,MAAMC,MAAM,GAKLjB,QAAQ,CAACiB,MAAM;AAE7B;;;;AAIA,OAAO,MAAMC,IAAI,GAGgElB,QAAQ,CAACkB,IAAI;AAE9F;;;;AAIA,OAAO,MAAMC,QAAQ,GAI4DnB,QAAQ,CAACmB,QAAQ;AAElG;;;;AAIA,OAAO,MAAMC,OAAO,GAAwCpB,QAAQ,CAACoB,OAAO","ignoreList":[]}
1
+ {"version":3,"file":"HttpBody.js","names":["Predicate","internal","TypeId","isHttpBody","u","hasProperty","ErrorTypeId","HttpBodyError","empty","raw","uint8Array","text","unsafeJson","json","jsonSchema","urlParams","formData","formDataRecord","stream","file","fileInfo","fileWeb"],"sources":["../../src/HttpBody.ts"],"sourcesContent":[null],"mappings":"AAMA,OAAO,KAAKA,SAAS,MAAM,kBAAkB;AAK7C,OAAO,KAAKC,QAAQ,MAAM,wBAAwB;AAGlD;;;;AAIA,OAAO,MAAMC,MAAM,GAAkBD,QAAQ,CAACC,MAAM;AAQpD;;;;AAIA,OAAO,MAAMC,UAAU,GAAIC,CAAU,IAAoBJ,SAAS,CAACK,WAAW,CAACD,CAAC,EAAEF,MAAM,CAAC;AAoCzF;;;;AAIA,OAAO,MAAMI,WAAW,GAAkBL,QAAQ,CAACK,WAAW;AAkB9D;;;;AAIA,OAAO,MAAMC,aAAa,GAA2CN,QAAQ,CAACM,aAAa;AAqB3F;;;;AAIA,OAAO,MAAMC,KAAK,GAAUP,QAAQ,CAACO,KAAK;AAW1C;;;;AAIA,OAAO,MAAMC,GAAG,GAMLR,QAAQ,CAACQ,GAAG;AAavB;;;;AAIA,OAAO,MAAMC,UAAU,GAAsET,QAAQ,CAACS,UAAU;AAEhH;;;;AAIA,OAAO,MAAMC,IAAI,GAAuDV,QAAQ,CAACU,IAAI;AAErF;;;;AAIA,OAAO,MAAMC,UAAU,GAAkCX,QAAQ,CAACW,UAAU;AAE5E;;;;AAIA,OAAO,MAAMC,IAAI,GAAgEZ,QAAQ,CAACY,IAAI;AAE9F;;;;AAIA,OAAO,MAAMC,UAAU,GAEyCb,QAAQ,CAACa,UAAU;AAEnF;;;;AAIA,OAAO,MAAMC,SAAS,GAAmDd,QAAQ,CAACc,SAAS;AAW3F;;;;AAIA,OAAO,MAAMC,QAAQ,GAA4Cf,QAAQ,CAACe,QAAQ;AAclF;;;;AAIA,OAAO,MAAMC,cAAc,GAAyChB,QAAQ,CAACgB,cAAc;AAa3F;;;;AAIA,OAAO,MAAMC,MAAM,GAILjB,QAAQ,CAACiB,MAAM;AAE7B;;;;AAIA,OAAO,MAAMC,IAAI,GAGgElB,QAAQ,CAACkB,IAAI;AAE9F;;;;AAIA,OAAO,MAAMC,QAAQ,GAI4DnB,QAAQ,CAACmB,QAAQ;AAElG;;;;AAIA,OAAO,MAAMC,OAAO,GAAwCpB,QAAQ,CAACoB,OAAO","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/platform",
3
- "version": "0.87.2",
3
+ "version": "0.87.3",
4
4
  "description": "Unified interfaces for common platform-specific services",
5
5
  "license": "MIT",
6
6
  "repository": {
package/src/HttpApp.ts CHANGED
@@ -4,12 +4,16 @@
4
4
  import * as Context from "effect/Context"
5
5
  import * as Effect from "effect/Effect"
6
6
  import * as Exit from "effect/Exit"
7
+ import * as Fiber from "effect/Fiber"
7
8
  import * as FiberRef from "effect/FiberRef"
9
+ import * as GlobalValue from "effect/GlobalValue"
8
10
  import * as Layer from "effect/Layer"
9
- import type * as Option from "effect/Option"
11
+ import * as Option from "effect/Option"
10
12
  import * as Runtime from "effect/Runtime"
11
13
  import * as Scope from "effect/Scope"
14
+ import * as Stream from "effect/Stream"
12
15
  import { unify } from "effect/Unify"
16
+ import * as HttpBody from "./HttpBody.js"
13
17
  import type { HttpMiddleware } from "./HttpMiddleware.js"
14
18
  import * as ServerError from "./HttpServerError.js"
15
19
  import * as ServerRequest from "./HttpServerRequest.js"
@@ -115,9 +119,57 @@ export const toHandled = <E, R, _, EH, RH>(
115
119
  })
116
120
  )
117
121
 
118
- return Effect.uninterruptible(Effect.scoped(withMiddleware)) as any
122
+ return Effect.uninterruptible(scoped(withMiddleware)) as any
119
123
  }
120
124
 
125
+ /**
126
+ * If you want to finalize the http request scope elsewhere, you can use this
127
+ * function to eject from the default scope closure.
128
+ *
129
+ * @since 1.0.0
130
+ * @category Scope
131
+ */
132
+ export const ejectDefaultScopeClose = (scope: Scope.Scope): void => {
133
+ ejectedScopes.add(scope)
134
+ }
135
+
136
+ /**
137
+ * @since 1.0.0
138
+ * @category Scope
139
+ */
140
+ export const unsafeEjectStreamScope = (
141
+ response: ServerResponse.HttpServerResponse
142
+ ): ServerResponse.HttpServerResponse => {
143
+ if (response.body._tag !== "Stream") {
144
+ return response
145
+ }
146
+ const fiber = Option.getOrThrow(Fiber.getCurrentFiber())
147
+ const scope = Context.unsafeGet(fiber.currentContext, Scope.Scope) as Scope.CloseableScope
148
+ ejectDefaultScopeClose(scope)
149
+ return ServerResponse.setBody(
150
+ response,
151
+ HttpBody.stream(
152
+ Stream.ensuring(response.body.stream, Scope.close(scope, Exit.void)),
153
+ response.body.contentType,
154
+ response.body.contentLength
155
+ )
156
+ )
157
+ }
158
+
159
+ const ejectedScopes = GlobalValue.globalValue(
160
+ "@effect/platform/HttpApp/ejectedScopes",
161
+ () => new WeakSet<Scope.Scope>()
162
+ )
163
+
164
+ const scoped = <A, E, R>(effect: Effect.Effect<A, E, R>) =>
165
+ Effect.flatMap(Scope.make(), (scope) =>
166
+ Effect.onExit(Scope.extend(effect, scope), (exit) => {
167
+ if (ejectedScopes.has(scope)) {
168
+ return Effect.void
169
+ }
170
+ return Scope.close(scope, exit)
171
+ }))
172
+
121
173
  /**
122
174
  * @since 1.0.0
123
175
  * @category models
@@ -156,6 +208,7 @@ export const toWebHandlerRuntime = <R>(runtime: Runtime.Runtime<R>) => {
156
208
  return <E>(self: Default<E, R | Scope.Scope>, middleware?: HttpMiddleware | undefined) => {
157
209
  const resolveSymbol = Symbol.for("@effect/platform/HttpApp/resolve")
158
210
  const httpApp = toHandled(self, (request, response) => {
211
+ response = unsafeEjectStreamScope(response)
159
212
  ;(request as any)[resolveSymbol](
160
213
  ServerResponse.toWeb(response, { withoutBody: request.method === "HEAD", runtime })
161
214
  )
package/src/HttpBody.ts CHANGED
@@ -238,8 +238,7 @@ export interface Stream extends HttpBody.Proto {
238
238
  export const stream: (
239
239
  body: Stream_.Stream<globalThis.Uint8Array, unknown>,
240
240
  contentType?: string,
241
- contentLength?: number,
242
- etag?: string
241
+ contentLength?: number
243
242
  ) => Stream = internal.stream
244
243
 
245
244
  /**