@clayroach/effect 3.19.14-source-capture.7 → 3.19.14-source-trace.1
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/SourceLocation/package.json +6 -0
- package/dist/cjs/Effect.js +2 -28
- package/dist/cjs/Effect.js.map +1 -1
- package/dist/cjs/FiberRef.js +12 -1
- package/dist/cjs/FiberRef.js.map +1 -1
- package/dist/cjs/Layer.js +2 -24
- package/dist/cjs/Layer.js.map +1 -1
- package/dist/cjs/RuntimeFlags.js +1 -29
- package/dist/cjs/RuntimeFlags.js.map +1 -1
- package/dist/cjs/SourceLocation.js +60 -0
- package/dist/cjs/SourceLocation.js.map +1 -0
- package/dist/cjs/Tracer.js +1 -15
- package/dist/cjs/Tracer.js.map +1 -1
- package/dist/cjs/Utils.js +1 -1
- package/dist/cjs/Utils.js.map +1 -1
- package/dist/cjs/index.js +3 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/internal/clock.js +1 -1
- package/dist/cjs/internal/clock.js.map +1 -1
- package/dist/cjs/internal/core.js +17 -50
- package/dist/cjs/internal/core.js.map +1 -1
- package/dist/cjs/internal/effect/circular.js +18 -30
- package/dist/cjs/internal/effect/circular.js.map +1 -1
- package/dist/cjs/internal/fiberRuntime.js +16 -65
- package/dist/cjs/internal/fiberRuntime.js.map +1 -1
- package/dist/cjs/internal/layer/circular.js +1 -5
- package/dist/cjs/internal/layer/circular.js.map +1 -1
- package/dist/cjs/internal/layer.js +1 -3
- package/dist/cjs/internal/layer.js.map +1 -1
- package/dist/cjs/internal/logger.js +25 -2
- package/dist/cjs/internal/logger.js.map +1 -1
- package/dist/cjs/internal/runtimeFlags.js +2 -11
- package/dist/cjs/internal/runtimeFlags.js.map +1 -1
- package/dist/cjs/internal/tracer.js +1 -114
- package/dist/cjs/internal/tracer.js.map +1 -1
- package/dist/dts/Config.d.ts +2 -2
- package/dist/dts/Config.d.ts.map +1 -1
- package/dist/dts/Effect.d.ts +8 -29
- package/dist/dts/Effect.d.ts.map +1 -1
- package/dist/dts/FiberRef.d.ts +12 -0
- package/dist/dts/FiberRef.d.ts.map +1 -1
- package/dist/dts/Layer.d.ts +0 -22
- package/dist/dts/Layer.d.ts.map +1 -1
- package/dist/dts/RuntimeFlags.d.ts +0 -28
- package/dist/dts/RuntimeFlags.d.ts.map +1 -1
- package/dist/dts/SourceLocation.d.ts +88 -0
- package/dist/dts/SourceLocation.d.ts.map +1 -0
- package/dist/dts/Tracer.d.ts +0 -15
- package/dist/dts/Tracer.d.ts.map +1 -1
- package/dist/dts/index.d.ts +6 -0
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/dts/internal/core.d.ts.map +1 -1
- package/dist/dts/internal/layer.d.ts.map +1 -1
- package/dist/dts/internal/runtimeFlags.d.ts.map +1 -1
- package/dist/esm/Effect.js +0 -26
- package/dist/esm/Effect.js.map +1 -1
- package/dist/esm/FiberRef.js +11 -0
- package/dist/esm/FiberRef.js.map +1 -1
- package/dist/esm/Layer.js +0 -22
- package/dist/esm/Layer.js.map +1 -1
- package/dist/esm/RuntimeFlags.js +0 -28
- package/dist/esm/RuntimeFlags.js.map +1 -1
- package/dist/esm/SourceLocation.js +51 -0
- package/dist/esm/SourceLocation.js.map +1 -0
- package/dist/esm/Tracer.js +0 -14
- package/dist/esm/Tracer.js.map +1 -1
- package/dist/esm/Utils.js +1 -1
- package/dist/esm/Utils.js.map +1 -1
- package/dist/esm/index.js +6 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/internal/clock.js +1 -1
- package/dist/esm/internal/clock.js.map +1 -1
- package/dist/esm/internal/core.js +12 -45
- package/dist/esm/internal/core.js.map +1 -1
- package/dist/esm/internal/effect/circular.js +18 -30
- package/dist/esm/internal/effect/circular.js.map +1 -1
- package/dist/esm/internal/fiberRuntime.js +13 -60
- package/dist/esm/internal/fiberRuntime.js.map +1 -1
- package/dist/esm/internal/layer/circular.js +0 -4
- package/dist/esm/internal/layer/circular.js.map +1 -1
- package/dist/esm/internal/layer.js +0 -2
- package/dist/esm/internal/layer.js.map +1 -1
- package/dist/esm/internal/logger.js +25 -2
- package/dist/esm/internal/logger.js.map +1 -1
- package/dist/esm/internal/runtimeFlags.js +1 -9
- package/dist/esm/internal/runtimeFlags.js.map +1 -1
- package/dist/esm/internal/tracer.js +0 -111
- package/dist/esm/internal/tracer.js.map +1 -1
- package/package.json +12 -1
- package/src/Config.ts +2 -2
- package/src/Effect.ts +8 -30
- package/src/FiberRef.ts +13 -0
- package/src/Layer.ts +0 -23
- package/src/RuntimeFlags.ts +0 -32
- package/src/SourceLocation.ts +108 -0
- package/src/Tracer.ts +0 -16
- package/src/index.ts +7 -0
- package/src/internal/config.ts +2 -2
- package/src/internal/core.ts +22 -106
- package/src/internal/effect/circular.ts +6 -16
- package/src/internal/fiberRuntime.ts +15 -88
- package/src/internal/layer/circular.ts +0 -14
- package/src/internal/layer.ts +0 -4
- package/src/internal/logger.ts +41 -4
- package/src/internal/runtimeFlags.ts +1 -11
- package/src/internal/tracer.ts +0 -143
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.zipLeftOptions = exports.withTracerScoped = exports.withSpanScoped = exports.withRuntimeFlagsScoped = exports.withRandomScoped = exports.withEarlyRelease = exports.withConfigProviderScoped = exports.withClockScoped = exports.whenLogLevel = exports.validateWith = exports.validateFirst = exports.validateAllParDiscard = exports.validateAllPar = exports.validateAll = exports.validate = exports.using = exports.
|
|
7
|
-
exports.zipWithOptions =
|
|
6
|
+
exports.zipRightOptions = exports.zipOptions = exports.zipLeftOptions = exports.withTracerScoped = exports.withSpanScoped = exports.withRuntimeFlagsScoped = exports.withRandomScoped = exports.withEarlyRelease = exports.withConfigProviderScoped = exports.withClockScoped = exports.whenLogLevel = exports.validateWith = exports.validateFirst = exports.validateAllParDiscard = exports.validateAllPar = exports.validateAll = exports.validate = exports.using = exports.unsafeMakeChildFiber = exports.unsafeForkUnstarted = exports.unsafeFork = exports.tracerLogger = exports.tagMetricsScoped = exports.structuredLogger = exports.sequentialFinalizers = exports.scopedWith = exports.scopedEffect = exports.scopeWith = exports.scopeUse = exports.scopeTag = exports.scopeMake = exports.scopeExtend = exports.scope = exports.replicateEffect = exports.replicate = exports.reduceEffect = exports.raceWith = exports.raceFibersWith = exports.raceAll = exports.race = exports.prettyLogger = exports.partition = exports.parallelNFinalizers = exports.parallelFinalizers = exports.mergeAll = exports.makeSpanScoped = exports.loggerWithSpanAnnotations = exports.loggerWithLeveledLog = exports.loggerWithConsoleLog = exports.loggerWithConsoleError = exports.logFmtLogger = exports.labelMetricsScoped = exports.jsonLogger = exports.invokeWithInterrupt = exports.interruptWhenPossible = exports.forkWithErrorHandler = exports.forkDaemon = exports.fork = exports.forEachParUnbounded = exports.forEachParN = exports.forEachConcurrentDiscard = exports.forEach = exports.finalizersMaskInternal = exports.finalizersMask = exports.filter = exports.fiberSuccesses = exports.fiberStarted = exports.fiberScoped = exports.fiberRefUnsafeMakeSupervisor = exports.fiberRefMakeWith = exports.fiberRefMakeRuntimeFlags = exports.fiberRefMakeContext = exports.fiberRefMake = exports.fiberRefLocallyScopedWith = exports.fiberRefLocallyScoped = exports.fiberLifetimes = exports.fiberJoinAll = exports.fiberInterruptFork = exports.fiberFailures = exports.fiberAwaitAll = exports.fiberAll = exports.fiberActive = exports.exists = exports.ensuring = exports.disconnect = exports.defaultLogger = exports.daemonChildren = exports.currentSupervisor = exports.currentRuntimeFlags = exports.currentMinimumLogLevel = exports.currentLoggers = exports.batchedLogger = exports.annotateLogsScoped = exports.allWith = exports.allSuccesses = exports.all = exports.addFinalizer = exports.acquireReleaseInterruptible = exports.acquireRelease = exports.FiberRuntime = void 0;
|
|
7
|
+
exports.zipWithOptions = void 0;
|
|
8
8
|
var RA = _interopRequireWildcard(require("../Array.js"));
|
|
9
9
|
var Boolean = _interopRequireWildcard(require("../Boolean.js"));
|
|
10
10
|
var Chunk = _interopRequireWildcard(require("../Chunk.js"));
|
|
@@ -1426,22 +1426,13 @@ const allEither = (effects, reconcile, options) => {
|
|
|
1426
1426
|
};
|
|
1427
1427
|
/* @internal */
|
|
1428
1428
|
const all = (arg, options) => {
|
|
1429
|
-
// Capture stack trace early (while user code is on stack)
|
|
1430
|
-
const rawStack = new Error().stack ?? "";
|
|
1431
1429
|
const [effects, reconcile] = allResolveInput(arg);
|
|
1432
|
-
const count = Array.isArray(effects) ? effects.length : undefined;
|
|
1433
|
-
let result;
|
|
1434
1430
|
if (options?.mode === "validate") {
|
|
1435
|
-
|
|
1431
|
+
return allValidate(effects, reconcile, options);
|
|
1436
1432
|
} else if (options?.mode === "either") {
|
|
1437
|
-
|
|
1438
|
-
}
|
|
1439
|
-
|
|
1440
|
-
}
|
|
1441
|
-
// Set operation metadata in trace field for OpSupervision
|
|
1442
|
-
;
|
|
1443
|
-
result.trace = core.makeOperationMeta("all", rawStack, count);
|
|
1444
|
-
return result;
|
|
1433
|
+
return allEither(effects, reconcile, options);
|
|
1434
|
+
}
|
|
1435
|
+
return options?.discard !== true && reconcile._tag === "Some" ? core.map(forEach(effects, _Function.identity, options), reconcile.value) : forEach(effects, _Function.identity, options);
|
|
1445
1436
|
};
|
|
1446
1437
|
/* @internal */
|
|
1447
1438
|
exports.all = all;
|
|
@@ -1457,20 +1448,13 @@ const replicate = exports.replicate = /*#__PURE__*/(0, _Function.dual)(2, (self,
|
|
|
1457
1448
|
/* @internal */
|
|
1458
1449
|
const replicateEffect = exports.replicateEffect = /*#__PURE__*/(0, _Function.dual)(args => core.isEffect(args[0]), (self, n, options) => all(replicate(self, n), options));
|
|
1459
1450
|
/* @internal */
|
|
1460
|
-
const forEach = exports.forEach = /*#__PURE__*/(0, _Function.dual)(args => Predicate.isIterable(args[0]), (self, f, options) => {
|
|
1461
|
-
|
|
1462
|
-
|
|
1463
|
-
|
|
1464
|
-
|
|
1465
|
-
|
|
1466
|
-
|
|
1467
|
-
return concurrency.match(options.concurrency, () => finalizersMaskInternal(ExecutionStrategy.sequential, options?.concurrentFinalizers)(restore => isRequestBatchingEnabled ? forEachConcurrentDiscard(self, (a, i) => restore(f(a, i)), true, false, 1) : core.forEachSequentialDiscard(self, (a, i) => restore(f(a, i)))), () => finalizersMaskInternal(ExecutionStrategy.parallel, options?.concurrentFinalizers)(restore => forEachConcurrentDiscard(self, (a, i) => restore(f(a, i)), isRequestBatchingEnabled, false)), n => finalizersMaskInternal(ExecutionStrategy.parallelN(n), options?.concurrentFinalizers)(restore => forEachConcurrentDiscard(self, (a, i) => restore(f(a, i)), isRequestBatchingEnabled, false, n)));
|
|
1468
|
-
}
|
|
1469
|
-
return concurrency.match(options?.concurrency, () => finalizersMaskInternal(ExecutionStrategy.sequential, options?.concurrentFinalizers)(restore => isRequestBatchingEnabled ? forEachParN(self, 1, (a, i) => restore(f(a, i)), true) : core.forEachSequential(self, (a, i) => restore(f(a, i)))), () => finalizersMaskInternal(ExecutionStrategy.parallel, options?.concurrentFinalizers)(restore => forEachParUnbounded(self, (a, i) => restore(f(a, i)), isRequestBatchingEnabled)), n => finalizersMaskInternal(ExecutionStrategy.parallelN(n), options?.concurrentFinalizers)(restore => forEachParN(self, n, (a, i) => restore(f(a, i)), isRequestBatchingEnabled)));
|
|
1470
|
-
});
|
|
1471
|
-
result.trace = core.makeOperationMeta("forEach", rawStack, count);
|
|
1472
|
-
return result;
|
|
1473
|
-
});
|
|
1451
|
+
const forEach = exports.forEach = /*#__PURE__*/(0, _Function.dual)(args => Predicate.isIterable(args[0]), (self, f, options) => core.withFiberRuntime(r => {
|
|
1452
|
+
const isRequestBatchingEnabled = options?.batching === true || options?.batching === "inherit" && r.getFiberRef(core.currentRequestBatching);
|
|
1453
|
+
if (options?.discard) {
|
|
1454
|
+
return concurrency.match(options.concurrency, () => finalizersMaskInternal(ExecutionStrategy.sequential, options?.concurrentFinalizers)(restore => isRequestBatchingEnabled ? forEachConcurrentDiscard(self, (a, i) => restore(f(a, i)), true, false, 1) : core.forEachSequentialDiscard(self, (a, i) => restore(f(a, i)))), () => finalizersMaskInternal(ExecutionStrategy.parallel, options?.concurrentFinalizers)(restore => forEachConcurrentDiscard(self, (a, i) => restore(f(a, i)), isRequestBatchingEnabled, false)), n => finalizersMaskInternal(ExecutionStrategy.parallelN(n), options?.concurrentFinalizers)(restore => forEachConcurrentDiscard(self, (a, i) => restore(f(a, i)), isRequestBatchingEnabled, false, n)));
|
|
1455
|
+
}
|
|
1456
|
+
return concurrency.match(options?.concurrency, () => finalizersMaskInternal(ExecutionStrategy.sequential, options?.concurrentFinalizers)(restore => isRequestBatchingEnabled ? forEachParN(self, 1, (a, i) => restore(f(a, i)), true) : core.forEachSequential(self, (a, i) => restore(f(a, i)))), () => finalizersMaskInternal(ExecutionStrategy.parallel, options?.concurrentFinalizers)(restore => forEachParUnbounded(self, (a, i) => restore(f(a, i)), isRequestBatchingEnabled)), n => finalizersMaskInternal(ExecutionStrategy.parallelN(n), options?.concurrentFinalizers)(restore => forEachParN(self, n, (a, i) => restore(f(a, i)), isRequestBatchingEnabled)));
|
|
1457
|
+
}));
|
|
1474
1458
|
/* @internal */
|
|
1475
1459
|
const forEachParUnbounded = (self, f, batching) => core.suspend(() => {
|
|
1476
1460
|
const as = RA.fromIterable(self);
|
|
@@ -1645,27 +1629,10 @@ const forEachParN = (self, n, f, batching) => core.suspend(() => {
|
|
|
1645
1629
|
});
|
|
1646
1630
|
/* @internal */
|
|
1647
1631
|
exports.forEachParN = forEachParN;
|
|
1648
|
-
const fork = self =>
|
|
1649
|
-
// Capture stack trace immediately while user code is on stack
|
|
1650
|
-
// Creating Error object is cheap; parsing is delayed until we know capture is enabled
|
|
1651
|
-
const rawStack = new Error().stack ?? "";
|
|
1652
|
-
const result = core.withFiberRuntime((state, status) => {
|
|
1653
|
-
// Check if capture is enabled, then parse the pre-captured stack if needed
|
|
1654
|
-
const capturedLocation = state.getFiberRef(core.currentCaptureStackTraces) && rawStack ? tracer.parseSourceLocationFromStack(rawStack) : undefined;
|
|
1655
|
-
const fiber = unsafeForkWithLocation(self, state, status.runtimeFlags, null, capturedLocation);
|
|
1656
|
-
return core.succeed(fiber);
|
|
1657
|
-
});
|
|
1658
|
-
result.trace = core.makeOperationMeta("fork", rawStack, 1);
|
|
1659
|
-
return result;
|
|
1660
|
-
};
|
|
1632
|
+
const fork = self => core.withFiberRuntime((state, status) => core.succeed(unsafeFork(self, state, status.runtimeFlags)));
|
|
1661
1633
|
/* @internal */
|
|
1662
1634
|
exports.fork = fork;
|
|
1663
|
-
const forkDaemon = self =>
|
|
1664
|
-
const rawStack = new Error().stack ?? "";
|
|
1665
|
-
const result = forkWithScopeOverride(self, fiberScope.globalScope);
|
|
1666
|
-
result.trace = core.makeOperationMeta("forkDaemon", rawStack, 1);
|
|
1667
|
-
return result;
|
|
1668
|
-
};
|
|
1635
|
+
const forkDaemon = self => forkWithScopeOverride(self, fiberScope.globalScope);
|
|
1669
1636
|
/* @internal */
|
|
1670
1637
|
exports.forkDaemon = forkDaemon;
|
|
1671
1638
|
const forkWithErrorHandler = exports.forkWithErrorHandler = /*#__PURE__*/(0, _Function.dual)(2, (self, handler) => fork(core.onError(self, cause => {
|
|
@@ -1685,13 +1652,6 @@ const unsafeFork = (effect, parentFiber, parentRuntimeFlags, overrideScope = nul
|
|
|
1685
1652
|
};
|
|
1686
1653
|
/** @internal */
|
|
1687
1654
|
exports.unsafeFork = unsafeFork;
|
|
1688
|
-
const unsafeForkWithLocation = (effect, parentFiber, parentRuntimeFlags, overrideScope = null, capturedLocation = undefined) => {
|
|
1689
|
-
const childFiber = unsafeMakeChildFiberWithLocation(effect, parentFiber, parentRuntimeFlags, overrideScope, capturedLocation);
|
|
1690
|
-
childFiber.resume(effect);
|
|
1691
|
-
return childFiber;
|
|
1692
|
-
};
|
|
1693
|
-
/** @internal */
|
|
1694
|
-
exports.unsafeForkWithLocation = unsafeForkWithLocation;
|
|
1695
1655
|
const unsafeForkUnstarted = (effect, parentFiber, parentRuntimeFlags, overrideScope = null) => {
|
|
1696
1656
|
const childFiber = unsafeMakeChildFiber(effect, parentFiber, parentRuntimeFlags, overrideScope);
|
|
1697
1657
|
return childFiber;
|
|
@@ -1699,19 +1659,10 @@ const unsafeForkUnstarted = (effect, parentFiber, parentRuntimeFlags, overrideSc
|
|
|
1699
1659
|
/** @internal */
|
|
1700
1660
|
exports.unsafeForkUnstarted = unsafeForkUnstarted;
|
|
1701
1661
|
const unsafeMakeChildFiber = (effect, parentFiber, parentRuntimeFlags, overrideScope = null) => {
|
|
1702
|
-
return unsafeMakeChildFiberWithLocation(effect, parentFiber, parentRuntimeFlags, overrideScope, undefined);
|
|
1703
|
-
};
|
|
1704
|
-
/** @internal */
|
|
1705
|
-
exports.unsafeMakeChildFiber = unsafeMakeChildFiber;
|
|
1706
|
-
const unsafeMakeChildFiberWithLocation = (effect, parentFiber, parentRuntimeFlags, overrideScope = null, capturedLocation = undefined) => {
|
|
1707
1662
|
const childId = FiberId.unsafeMake();
|
|
1708
1663
|
const parentFiberRefs = parentFiber.getFiberRefs();
|
|
1709
1664
|
const childFiberRefs = fiberRefs.forkAs(parentFiberRefs, childId);
|
|
1710
1665
|
const childFiber = new FiberRuntime(childId, childFiberRefs, parentRuntimeFlags);
|
|
1711
|
-
// Set pre-captured source location if enabled
|
|
1712
|
-
if (capturedLocation && parentFiber.getFiberRef(core.currentCaptureStackTraces)) {
|
|
1713
|
-
childFiber.setFiberRef(core.currentSourceLocation, capturedLocation);
|
|
1714
|
-
}
|
|
1715
1666
|
const childContext = fiberRefs.getOrDefault(childFiberRefs, core.currentContext);
|
|
1716
1667
|
const supervisor = childFiber.currentSupervisor;
|
|
1717
1668
|
supervisor.onStart(childContext, effect, Option.some(parentFiber), childFiber);
|
|
@@ -1721,7 +1672,7 @@ const unsafeMakeChildFiberWithLocation = (effect, parentFiber, parentRuntimeFlag
|
|
|
1721
1672
|
return childFiber;
|
|
1722
1673
|
};
|
|
1723
1674
|
/* @internal */
|
|
1724
|
-
exports.
|
|
1675
|
+
exports.unsafeMakeChildFiber = unsafeMakeChildFiber;
|
|
1725
1676
|
const forkWithScopeOverride = (self, scopeOverride) => core.withFiberRuntime((parentFiber, parentStatus) => core.succeed(unsafeFork(self, parentFiber, parentStatus.runtimeFlags, scopeOverride)));
|
|
1726
1677
|
/* @internal */
|
|
1727
1678
|
const mergeAll = exports.mergeAll = /*#__PURE__*/(0, _Function.dual)(args => Predicate.isFunction(args[2]), (elements, zero, f, options) => concurrency.matchSimple(options?.concurrency, () => RA.fromIterable(elements).reduce((acc, a, i) => core.zipWith(acc, a, (acc, a) => f(acc, a, i)), core.succeed(zero)), () => core.flatMap(Ref.make(zero), acc => core.flatMap(forEach(elements, (effect, i) => core.flatMap(effect, a => Ref.update(acc, b => f(b, a, i))), options), () => Ref.get(acc)))));
|