effect 4.0.0-beta.88 → 4.0.0-beta.89
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/Effect.d.ts +5 -2
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +4 -1
- package/dist/Effect.js.map +1 -1
- package/dist/Schema.d.ts +14 -1
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +14 -1
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +17 -5
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +22 -7
- package/dist/SchemaAST.js.map +1 -1
- package/dist/internal/effect.js +4 -5
- package/dist/internal/effect.js.map +1 -1
- package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpTracer.js +2 -1
- package/dist/unstable/observability/OtlpTracer.js.map +1 -1
- package/package.json +1 -1
- package/src/Effect.ts +10 -4
- package/src/Schema.ts +14 -1
- package/src/SchemaAST.ts +23 -7
- package/src/internal/effect.ts +17 -8
- package/src/unstable/observability/OtlpTracer.ts +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OtlpTracer.d.ts","sourceRoot":"","sources":["../../../src/unstable/observability/OtlpTracer.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAA;AAC7C,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"OtlpTracer.d.ts","sourceRoot":"","sources":["../../../src/unstable/observability/OtlpTracer.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,7 @@ import * as Config from "../../Config.js";
|
|
|
15
15
|
import * as Duration from "../../Duration.js";
|
|
16
16
|
import * as Effect from "../../Effect.js";
|
|
17
17
|
import { flow } from "../../Function.js";
|
|
18
|
+
import { renderPrettyError } from "../../internal/effect.js";
|
|
18
19
|
import * as Layer from "../../Layer.js";
|
|
19
20
|
import * as Option from "../../Option.js";
|
|
20
21
|
import * as Tracer from "../../Tracer.js";
|
|
@@ -227,7 +228,7 @@ const makeOtlpSpan = self => {
|
|
|
227
228
|
}, {
|
|
228
229
|
"key": "exception.stacktrace",
|
|
229
230
|
"value": {
|
|
230
|
-
"stringValue": error
|
|
231
|
+
"stringValue": renderPrettyError(error) ?? "No stack trace available"
|
|
231
232
|
}
|
|
232
233
|
}]
|
|
233
234
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OtlpTracer.js","names":["Cause","Config","Duration","Effect","flow","Layer","Option","Tracer","OtlpEnv","Exporter","entriesToAttributes","OtlpResource","OtlpSerialization","make","fnUntraced","options","otelResource","fromConfig","resource","serialization","scope","name","serviceNameUnsafe","exporter","label","url","headers","exportInterval","seconds","maxBatchSize","body","spans","data","resourceSpans","scopeSpans","traces","shutdownTimeout","exportFn","span","sampled","push","makeOtlpSpan","makeSpan","status","_tag","startTime","attributes","Map","export","context","primitive","fiber","currentSpan","undefined","layer","effect","layerFromConfig","gen","disabled","endpoint","exporters","all","boolean","pipe","withDefault","includes","empty","baseTimeout","tracesTimeout","exportTimeout","scheduleDelay","option","int","map","millis","firstSomeOf","_","toString","getOrUndefined","orDie","unwrap","SpanProto","end","endTime","exit","attribute","key","value","set","event","events","addLinks","links","self","Object","assign","create","isSome","parent","traceId","generateId","spanId","len","chars","result","i","Math","floor","random","length","entries","timeUnixNano","String","droppedAttributesCount","otelStatus","constOtelStatusSuccess","hasInterruptsOnly","cause","code","StatusCode","Ok","message","stringValue","boolValue","errors","prettyErrors","Error","error","
|
|
1
|
+
{"version":3,"file":"OtlpTracer.js","names":["Cause","Config","Duration","Effect","flow","renderPrettyError","Layer","Option","Tracer","OtlpEnv","Exporter","entriesToAttributes","OtlpResource","OtlpSerialization","make","fnUntraced","options","otelResource","fromConfig","resource","serialization","scope","name","serviceNameUnsafe","exporter","label","url","headers","exportInterval","seconds","maxBatchSize","body","spans","data","resourceSpans","scopeSpans","traces","shutdownTimeout","exportFn","span","sampled","push","makeOtlpSpan","makeSpan","status","_tag","startTime","attributes","Map","export","context","primitive","fiber","currentSpan","undefined","layer","effect","layerFromConfig","gen","disabled","endpoint","exporters","all","boolean","pipe","withDefault","includes","empty","baseTimeout","tracesTimeout","exportTimeout","scheduleDelay","option","int","map","millis","firstSomeOf","_","toString","getOrUndefined","orDie","unwrap","SpanProto","end","endTime","exit","attribute","key","value","set","event","events","addLinks","links","self","Object","assign","create","isSome","parent","traceId","generateId","spanId","len","chars","result","i","Math","floor","random","length","entries","timeUnixNano","String","droppedAttributesCount","otelStatus","constOtelStatusSuccess","hasInterruptsOnly","cause","code","StatusCode","Ok","message","stringValue","boolValue","errors","prettyErrors","Error","error","parentSpanId","match","onNone","onSome","kind","SpanKind","startTimeUnixNano","endTimeUnixNano","droppedEventsCount","link","droppedLinksCount","Unset","unspecified","internal","server","client","producer","consumer"],"sources":["../../../src/unstable/observability/OtlpTracer.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
package/src/Effect.ts
CHANGED
|
@@ -2400,7 +2400,9 @@ export const fromResult: <A, E>(result: Result.Result<A, E>) => Effect<A, E> = i
|
|
|
2400
2400
|
* **Details**
|
|
2401
2401
|
*
|
|
2402
2402
|
* `Option.some` becomes a successful effect with the contained value, while
|
|
2403
|
-
* `Option.none` becomes a failed effect
|
|
2403
|
+
* `Option.none` becomes a failed effect. By default the failure is a
|
|
2404
|
+
* `NoSuchElementError`, but you can provide an `onNone` callback to customize
|
|
2405
|
+
* the error value.
|
|
2404
2406
|
*
|
|
2405
2407
|
* **Example** (Converting an Option into an Effect)
|
|
2406
2408
|
*
|
|
@@ -2412,6 +2414,7 @@ export const fromResult: <A, E>(result: Result.Result<A, E>) => Effect<A, E> = i
|
|
|
2412
2414
|
*
|
|
2413
2415
|
* const effect1 = Effect.fromOption(some)
|
|
2414
2416
|
* const effect2 = Effect.fromOption(none)
|
|
2417
|
+
* const effect3 = Effect.fromOption(none, () => new Error("missing"))
|
|
2415
2418
|
*
|
|
2416
2419
|
* Effect.runPromise(effect1).then(console.log) // 42
|
|
2417
2420
|
* Effect.runPromiseExit(effect2).then(console.log)
|
|
@@ -2421,9 +2424,12 @@ export const fromResult: <A, E>(result: Result.Result<A, E>) => Effect<A, E> = i
|
|
|
2421
2424
|
* @category converting
|
|
2422
2425
|
* @since 4.0.0
|
|
2423
2426
|
*/
|
|
2424
|
-
export const fromOption: <
|
|
2425
|
-
|
|
2426
|
-
|
|
2427
|
+
export const fromOption: <Arg extends Option<unknown> | LazyArg<unknown>, E = Cause.NoSuchElementError>(
|
|
2428
|
+
arg: Arg,
|
|
2429
|
+
...rest: [Arg] extends [Option<unknown>] ? [onNone?: LazyArg<E>] : []
|
|
2430
|
+
) => [Arg] extends [Option<infer A>] ? Effect<A, E>
|
|
2431
|
+
: [Arg] extends [LazyArg<infer E>] ? <A>(option: Option<A>) => Effect<A, E>
|
|
2432
|
+
: never = internal.fromOption
|
|
2427
2433
|
|
|
2428
2434
|
/**
|
|
2429
2435
|
* Converts an `Option` of an `Effect` into an `Effect` of an `Option`.
|
package/src/Schema.ts
CHANGED
|
@@ -3056,8 +3056,21 @@ export const BigInt: BigInt = make(SchemaAST.bigInt)
|
|
|
3056
3056
|
export interface Void extends Bottom<void, void, never, never, SchemaAST.Void, Void> {}
|
|
3057
3057
|
|
|
3058
3058
|
/**
|
|
3059
|
-
* Schema for
|
|
3059
|
+
* Schema for a TypeScript `void` return value.
|
|
3060
3060
|
*
|
|
3061
|
+
* **When to use**
|
|
3062
|
+
*
|
|
3063
|
+
* Use when you need to model the return value of a function, RPC, or endpoint
|
|
3064
|
+
* whose result is intentionally ignored.
|
|
3065
|
+
*
|
|
3066
|
+
* **Details**
|
|
3067
|
+
*
|
|
3068
|
+
* Runtime parsing accepts any present value and discards it, producing
|
|
3069
|
+
* `undefined`. The public decoded and encoded TypeScript representation remains
|
|
3070
|
+
* `void`, so typed construction, decoding, and encoding APIs are still modeled
|
|
3071
|
+
* as `void`.
|
|
3072
|
+
*
|
|
3073
|
+
* @see {@link Undefined} for a schema that matches only the exact `undefined` value.
|
|
3061
3074
|
* @category schemas
|
|
3062
3075
|
* @since 3.10.0
|
|
3063
3076
|
*/
|
package/src/SchemaAST.ts
CHANGED
|
@@ -793,13 +793,20 @@ export {
|
|
|
793
793
|
}
|
|
794
794
|
|
|
795
795
|
/**
|
|
796
|
-
* AST node matching
|
|
796
|
+
* AST node matching TypeScript `void` return-value semantics.
|
|
797
|
+
*
|
|
798
|
+
* **When to use**
|
|
799
|
+
*
|
|
800
|
+
* Use when you need an AST node for a value whose result is intentionally
|
|
801
|
+
* ignored.
|
|
797
802
|
*
|
|
798
803
|
* **Details**
|
|
799
804
|
*
|
|
800
|
-
*
|
|
801
|
-
* `void`
|
|
805
|
+
* Parsers built from this node accept any present runtime input and map it to
|
|
806
|
+
* `undefined`. Public schemas built from it may still expose `void` as their
|
|
807
|
+
* typed decoded and encoded representation.
|
|
802
808
|
*
|
|
809
|
+
* @see {@link undefined} for the AST singleton that matches only exact `undefined`
|
|
803
810
|
* @see {@link void_ void}
|
|
804
811
|
* @see {@link isVoid}
|
|
805
812
|
* @category models
|
|
@@ -809,7 +816,7 @@ export class Void extends Base {
|
|
|
809
816
|
readonly _tag = "Void"
|
|
810
817
|
/** @internal */
|
|
811
818
|
getParser() {
|
|
812
|
-
return
|
|
819
|
+
return fromAnyToConst(undefined)
|
|
813
820
|
}
|
|
814
821
|
/** @internal */
|
|
815
822
|
toCodecJson(): AST {
|
|
@@ -828,8 +835,13 @@ export {
|
|
|
828
835
|
*
|
|
829
836
|
* **When to use**
|
|
830
837
|
*
|
|
831
|
-
* Use when constructing or comparing AST nodes
|
|
832
|
-
*
|
|
838
|
+
* Use when constructing or comparing AST nodes for TypeScript `void` return
|
|
839
|
+
* values whose result is intentionally ignored.
|
|
840
|
+
*
|
|
841
|
+
* **Details**
|
|
842
|
+
*
|
|
843
|
+
* The node parses any present runtime value as `undefined`; schemas may still
|
|
844
|
+
* expose `void` on their typed decoded and encoded sides.
|
|
833
845
|
*
|
|
834
846
|
* @see {@link Void} for the AST node class
|
|
835
847
|
* @see {@link undefined} for the sibling AST singleton that matches exactly `undefined`
|
|
@@ -2415,7 +2427,6 @@ function getCandidateTypes(ast: AST): ReadonlyArray<Type> {
|
|
|
2415
2427
|
case "Null":
|
|
2416
2428
|
return ["null"]
|
|
2417
2429
|
case "Undefined":
|
|
2418
|
-
case "Void":
|
|
2419
2430
|
return ["undefined"]
|
|
2420
2431
|
case "String":
|
|
2421
2432
|
case "TemplateLiteral":
|
|
@@ -3493,6 +3504,11 @@ function fromConst<const T>(
|
|
|
3493
3504
|
}
|
|
3494
3505
|
}
|
|
3495
3506
|
|
|
3507
|
+
function fromAnyToConst<const T>(value: T): SchemaParser.Parser {
|
|
3508
|
+
const succeed = Effect.succeedSome(value)
|
|
3509
|
+
return (oinput) => oinput._tag === "None" ? Effect.succeedNone : succeed
|
|
3510
|
+
}
|
|
3511
|
+
|
|
3496
3512
|
function fromRefinement<T>(
|
|
3497
3513
|
ast: AST,
|
|
3498
3514
|
refinement: (input: unknown) => input is T
|
package/src/internal/effect.ts
CHANGED
|
@@ -459,10 +459,11 @@ const currentStackTrace = (frame: StackFrame): string => {
|
|
|
459
459
|
|
|
460
460
|
/** @internal */
|
|
461
461
|
export const causePretty = <E>(cause: Cause.Cause<E>): string =>
|
|
462
|
-
causePrettyErrors<E>(cause).map((
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
462
|
+
causePrettyErrors<E>(cause).map(renderPrettyError).join("\n")
|
|
463
|
+
|
|
464
|
+
/** @internal */
|
|
465
|
+
export const renderPrettyError = (e: Error): string | undefined =>
|
|
466
|
+
e.cause ? `${e.stack} {\n${renderErrorCause(e.cause as Error, " ")}\n}` : e.stack
|
|
466
467
|
|
|
467
468
|
const renderErrorCause = (cause: Error, prefix: string) => {
|
|
468
469
|
const lines = cause.stack!.split("\n")
|
|
@@ -892,10 +893,18 @@ export const suspend: <A, E, R>(
|
|
|
892
893
|
})
|
|
893
894
|
|
|
894
895
|
/** @internal */
|
|
895
|
-
export const fromOption: <
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
896
|
+
export const fromOption: <Arg extends Option.Option<unknown> | LazyArg<unknown>, E = Cause.NoSuchElementError>(
|
|
897
|
+
arg: Arg,
|
|
898
|
+
...rest: [Arg] extends [Option.Option<unknown>] ? [onNone?: LazyArg<E>] : []
|
|
899
|
+
) => [Arg] extends [Option.Option<infer A>] ? Effect.Effect<A, E>
|
|
900
|
+
: [Arg] extends [LazyArg<infer E>] ? <A>(option: Option.Option<A>) => Effect.Effect<A, E>
|
|
901
|
+
: never = dual(
|
|
902
|
+
(args) => args.length >= 2 || Option.isOption(args[0]),
|
|
903
|
+
<A, E>(option: Option.Option<A>, onNone?: LazyArg<E>): Effect.Effect<A, Cause.NoSuchElementError | E> =>
|
|
904
|
+
Option.isNone(option)
|
|
905
|
+
? fail(onNone ? onNone() : new NoSuchElementError("Effect.fromOption: Option.none"))
|
|
906
|
+
: succeed(option.value)
|
|
907
|
+
)
|
|
899
908
|
|
|
900
909
|
/** @internal */
|
|
901
910
|
export const fromResult: <A, E>(result: Result.Result<A, E>) => Effect.Effect<A, E> = Result.match({
|
|
@@ -17,6 +17,7 @@ import * as Duration from "../../Duration.ts"
|
|
|
17
17
|
import * as Effect from "../../Effect.ts"
|
|
18
18
|
import type * as Exit from "../../Exit.ts"
|
|
19
19
|
import { flow } from "../../Function.ts"
|
|
20
|
+
import { renderPrettyError } from "../../internal/effect.ts"
|
|
20
21
|
import * as Layer from "../../Layer.ts"
|
|
21
22
|
import * as Option from "../../Option.ts"
|
|
22
23
|
import type * as Scope from "../../Scope.ts"
|
|
@@ -311,7 +312,7 @@ const makeOtlpSpan = (self: SpanImpl): OtlpSpan => {
|
|
|
311
312
|
{
|
|
312
313
|
"key": "exception.stacktrace",
|
|
313
314
|
"value": {
|
|
314
|
-
"stringValue": error
|
|
315
|
+
"stringValue": renderPrettyError(error) ?? "No stack trace available"
|
|
315
316
|
}
|
|
316
317
|
}
|
|
317
318
|
]
|