effect 3.1.5 → 3.2.0
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.
- package/dist/cjs/Array.js +139 -2
- package/dist/cjs/Array.js.map +1 -1
- package/dist/cjs/Cause.js +8 -1
- package/dist/cjs/Cause.js.map +1 -1
- package/dist/cjs/Chunk.js +18 -1
- package/dist/cjs/Chunk.js.map +1 -1
- package/dist/cjs/Config.js.map +1 -1
- package/dist/cjs/Data.js +11 -8
- package/dist/cjs/Data.js.map +1 -1
- package/dist/cjs/Effect.js +106 -18
- package/dist/cjs/Effect.js.map +1 -1
- package/dist/cjs/Stream.js +19 -1
- package/dist/cjs/Stream.js.map +1 -1
- package/dist/cjs/Tracer.js.map +1 -1
- package/dist/cjs/internal/cause.js +55 -48
- package/dist/cjs/internal/cause.js.map +1 -1
- package/dist/cjs/internal/channel.js +11 -1
- package/dist/cjs/internal/channel.js.map +1 -1
- package/dist/cjs/internal/core-effect.js +51 -9
- package/dist/cjs/internal/core-effect.js.map +1 -1
- package/dist/cjs/internal/core.js +8 -4
- package/dist/cjs/internal/core.js.map +1 -1
- package/dist/cjs/internal/fiberRuntime.js +27 -14
- package/dist/cjs/internal/fiberRuntime.js.map +1 -1
- package/dist/cjs/internal/layer/circular.js +4 -1
- package/dist/cjs/internal/layer/circular.js.map +1 -1
- package/dist/cjs/internal/layer.js +11 -1
- package/dist/cjs/internal/layer.js.map +1 -1
- package/dist/cjs/internal/runtime.js +9 -4
- package/dist/cjs/internal/runtime.js.map +1 -1
- package/dist/cjs/internal/schedule.js +2 -2
- package/dist/cjs/internal/schedule.js.map +1 -1
- package/dist/cjs/internal/stream.js +27 -9
- package/dist/cjs/internal/stream.js.map +1 -1
- package/dist/cjs/internal/tracer.js +31 -1
- package/dist/cjs/internal/tracer.js.map +1 -1
- package/dist/cjs/internal/version.js +1 -1
- package/dist/dts/Array.d.ts +199 -0
- package/dist/dts/Array.d.ts.map +1 -1
- package/dist/dts/Cause.d.ts +15 -0
- package/dist/dts/Cause.d.ts.map +1 -1
- package/dist/dts/Chunk.d.ts +20 -0
- package/dist/dts/Chunk.d.ts.map +1 -1
- package/dist/dts/Config.d.ts +6 -2
- package/dist/dts/Config.d.ts.map +1 -1
- package/dist/dts/Data.d.ts +46 -13
- package/dist/dts/Data.d.ts.map +1 -1
- package/dist/dts/Effect.d.ts +122 -15
- package/dist/dts/Effect.d.ts.map +1 -1
- package/dist/dts/Stream.d.ts +23 -1
- package/dist/dts/Stream.d.ts.map +1 -1
- package/dist/dts/Tracer.d.ts +1 -0
- package/dist/dts/Tracer.d.ts.map +1 -1
- package/dist/dts/internal/core-effect.d.ts +7 -1
- package/dist/dts/internal/core-effect.d.ts.map +1 -1
- package/dist/dts/internal/core.d.ts.map +1 -1
- package/dist/dts/internal/stream.d.ts.map +1 -1
- package/dist/esm/Array.js +182 -0
- package/dist/esm/Array.js.map +1 -1
- package/dist/esm/Cause.js +7 -0
- package/dist/esm/Cause.js.map +1 -1
- package/dist/esm/Chunk.js +16 -0
- package/dist/esm/Chunk.js.map +1 -1
- package/dist/esm/Config.js.map +1 -1
- package/dist/esm/Data.js +11 -8
- package/dist/esm/Data.js.map +1 -1
- package/dist/esm/Effect.js +103 -15
- package/dist/esm/Effect.js.map +1 -1
- package/dist/esm/Stream.js +18 -0
- package/dist/esm/Stream.js.map +1 -1
- package/dist/esm/Tracer.js.map +1 -1
- package/dist/esm/internal/cause.js +54 -47
- package/dist/esm/internal/cause.js.map +1 -1
- package/dist/esm/internal/channel.js +10 -1
- package/dist/esm/internal/channel.js.map +1 -1
- package/dist/esm/internal/core-effect.js +47 -7
- package/dist/esm/internal/core-effect.js.map +1 -1
- package/dist/esm/internal/core.js +7 -3
- package/dist/esm/internal/core.js.map +1 -1
- package/dist/esm/internal/fiberRuntime.js +26 -14
- package/dist/esm/internal/fiberRuntime.js.map +1 -1
- package/dist/esm/internal/layer/circular.js +4 -1
- package/dist/esm/internal/layer/circular.js.map +1 -1
- package/dist/esm/internal/layer.js +10 -1
- package/dist/esm/internal/layer.js.map +1 -1
- package/dist/esm/internal/runtime.js +9 -4
- package/dist/esm/internal/runtime.js.map +1 -1
- package/dist/esm/internal/schedule.js +2 -2
- package/dist/esm/internal/schedule.js.map +1 -1
- package/dist/esm/internal/stream.js +23 -7
- package/dist/esm/internal/stream.js.map +1 -1
- package/dist/esm/internal/tracer.js +29 -0
- package/dist/esm/internal/tracer.js.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/package.json +1 -1
- package/src/Array.ts +214 -0
- package/src/Cause.ts +17 -0
- package/src/Chunk.ts +30 -0
- package/src/Config.ts +8 -6
- package/src/Data.ts +121 -48
- package/src/Effect.ts +126 -15
- package/src/Stream.ts +31 -1
- package/src/Tracer.ts +1 -0
- package/src/internal/cause.ts +70 -52
- package/src/internal/channel.ts +32 -14
- package/src/internal/core-effect.ts +74 -25
- package/src/internal/core.ts +8 -3
- package/src/internal/fiberRuntime.ts +22 -11
- package/src/internal/layer/circular.ts +4 -2
- package/src/internal/layer.ts +37 -14
- package/src/internal/runtime.ts +10 -5
- package/src/internal/schedule.ts +2 -2
- package/src/internal/stream.ts +37 -13
- package/src/internal/tracer.ts +21 -0
- package/src/internal/version.ts +1 -1
|
@@ -41,6 +41,7 @@ import * as SinkEndReason from "./stream/sinkEndReason.js";
|
|
|
41
41
|
import * as ZipAllState from "./stream/zipAllState.js";
|
|
42
42
|
import * as ZipChunksState from "./stream/zipChunksState.js";
|
|
43
43
|
import * as InternalTake from "./take.js";
|
|
44
|
+
import * as InternalTracer from "./tracer.js";
|
|
44
45
|
/** @internal */
|
|
45
46
|
const StreamSymbolKey = "effect/Stream";
|
|
46
47
|
/** @internal */
|
|
@@ -2027,13 +2028,19 @@ export const toQueue = /*#__PURE__*/dual(args => isStream(args[0]), (self, optio
|
|
|
2027
2028
|
/** @internal */
|
|
2028
2029
|
export const toQueueOfElements = /*#__PURE__*/dual(args => isStream(args[0]), (self, options) => Effect.tap(Effect.acquireRelease(Queue.bounded(options?.capacity ?? 2), queue => Queue.shutdown(queue)), queue => Effect.forkScoped(runIntoQueueElementsScoped(self, queue))));
|
|
2029
2030
|
/** @internal */
|
|
2030
|
-
export const toReadableStream =
|
|
2031
|
+
export const toReadableStream = self => toReadableStreamRuntime(self, Runtime.defaultRuntime);
|
|
2032
|
+
/** @internal */
|
|
2033
|
+
export const toReadableStreamEffect = self => Effect.map(Effect.runtime(), runtime => toReadableStreamRuntime(self, runtime));
|
|
2034
|
+
/** @internal */
|
|
2035
|
+
export const toReadableStreamRuntime = /*#__PURE__*/dual(2, (self, runtime) => {
|
|
2036
|
+
const runSync = Runtime.runSync(runtime);
|
|
2037
|
+
const runPromise = Runtime.runPromise(runtime);
|
|
2031
2038
|
let pull;
|
|
2032
2039
|
let scope;
|
|
2033
2040
|
return new ReadableStream({
|
|
2034
2041
|
start(controller) {
|
|
2035
|
-
scope =
|
|
2036
|
-
pull = pipe(toPull(
|
|
2042
|
+
scope = runSync(Scope.make());
|
|
2043
|
+
pull = pipe(toPull(self), Scope.extend(scope), runSync, Effect.tap(chunk => Effect.sync(() => {
|
|
2037
2044
|
Chunk.map(chunk, a => {
|
|
2038
2045
|
controller.enqueue(a);
|
|
2039
2046
|
});
|
|
@@ -2047,13 +2054,13 @@ export const toReadableStream = source => {
|
|
|
2047
2054
|
}), Effect.asVoid);
|
|
2048
2055
|
},
|
|
2049
2056
|
pull() {
|
|
2050
|
-
return
|
|
2057
|
+
return runPromise(pull);
|
|
2051
2058
|
},
|
|
2052
2059
|
cancel() {
|
|
2053
|
-
return
|
|
2060
|
+
return runPromise(Scope.close(scope, Exit.void));
|
|
2054
2061
|
}
|
|
2055
2062
|
});
|
|
2056
|
-
};
|
|
2063
|
+
});
|
|
2057
2064
|
/** @internal */
|
|
2058
2065
|
export const transduce = /*#__PURE__*/dual(2, (self, sink) => {
|
|
2059
2066
|
const newChannel = core.suspend(() => {
|
|
@@ -2134,7 +2141,16 @@ export const whenCaseEffect = /*#__PURE__*/dual(2, (self, pf) => pipe(fromEffect
|
|
|
2134
2141
|
/** @internal */
|
|
2135
2142
|
export const whenEffect = /*#__PURE__*/dual(2, (self, effect) => pipe(fromEffect(effect), flatMap(bool => bool ? self : empty)));
|
|
2136
2143
|
/** @internal */
|
|
2137
|
-
export const withSpan =
|
|
2144
|
+
export const withSpan = function () {
|
|
2145
|
+
const dataFirst = typeof arguments[0] !== "string";
|
|
2146
|
+
const name = dataFirst ? arguments[1] : arguments[0];
|
|
2147
|
+
const options = InternalTracer.addSpanStackTrace(dataFirst ? arguments[2] : arguments[1]);
|
|
2148
|
+
if (dataFirst) {
|
|
2149
|
+
const self = arguments[0];
|
|
2150
|
+
return new StreamImpl(channel.withSpan(toChannel(self), name, options));
|
|
2151
|
+
}
|
|
2152
|
+
return self => new StreamImpl(channel.withSpan(toChannel(self), name, options));
|
|
2153
|
+
};
|
|
2138
2154
|
/** @internal */
|
|
2139
2155
|
export const zip = /*#__PURE__*/dual(2, (self, that) => pipe(self, zipWith(that, (a, a2) => [a, a2])));
|
|
2140
2156
|
/** @internal */
|