effect 4.0.0-beta.92 → 4.0.0-beta.94

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.
Files changed (162) hide show
  1. package/dist/Cause.d.ts +3 -1
  2. package/dist/Cause.d.ts.map +1 -1
  3. package/dist/Cause.js.map +1 -1
  4. package/dist/Config.d.ts +1 -1
  5. package/dist/Config.d.ts.map +1 -1
  6. package/dist/Config.js.map +1 -1
  7. package/dist/Effect.d.ts +130 -0
  8. package/dist/Effect.d.ts.map +1 -1
  9. package/dist/Effect.js +43 -0
  10. package/dist/Effect.js.map +1 -1
  11. package/dist/FileSystem.d.ts +7 -0
  12. package/dist/FileSystem.d.ts.map +1 -1
  13. package/dist/FileSystem.js +3 -0
  14. package/dist/FileSystem.js.map +1 -1
  15. package/dist/Layer.d.ts +1 -1
  16. package/dist/Layer.d.ts.map +1 -1
  17. package/dist/Layer.js +6 -3
  18. package/dist/Layer.js.map +1 -1
  19. package/dist/LayerMap.js +1 -1
  20. package/dist/LayerMap.js.map +1 -1
  21. package/dist/LayerRef.d.ts +252 -0
  22. package/dist/LayerRef.d.ts.map +1 -0
  23. package/dist/LayerRef.js +171 -0
  24. package/dist/LayerRef.js.map +1 -0
  25. package/dist/Schema.d.ts +74 -30
  26. package/dist/Schema.d.ts.map +1 -1
  27. package/dist/Schema.js +3 -0
  28. package/dist/Schema.js.map +1 -1
  29. package/dist/SchemaParser.d.ts +1 -1
  30. package/dist/SchemaParser.d.ts.map +1 -1
  31. package/dist/SchemaParser.js.map +1 -1
  32. package/dist/internal/core.js +1 -1
  33. package/dist/internal/effect.js +10 -6
  34. package/dist/internal/effect.js.map +1 -1
  35. package/dist/testing/TestSchema.d.ts +2 -2
  36. package/dist/testing/TestSchema.d.ts.map +1 -1
  37. package/dist/testing/TestSchema.js.map +1 -1
  38. package/dist/unstable/ai/Chat.d.ts +1 -1
  39. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  40. package/dist/unstable/ai/LanguageModel.d.ts +2 -2
  41. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  42. package/dist/unstable/cli/Argument.d.ts +2 -2
  43. package/dist/unstable/cli/Argument.d.ts.map +1 -1
  44. package/dist/unstable/cli/Argument.js.map +1 -1
  45. package/dist/unstable/cli/Flag.d.ts +2 -2
  46. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  47. package/dist/unstable/cli/Flag.js.map +1 -1
  48. package/dist/unstable/cli/Param.d.ts +2 -2
  49. package/dist/unstable/cli/Param.d.ts.map +1 -1
  50. package/dist/unstable/cli/Param.js.map +1 -1
  51. package/dist/unstable/cli/Primitive.js.map +1 -1
  52. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  53. package/dist/unstable/cluster/ClusterWorkflowEngine.js +1 -0
  54. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  55. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  56. package/dist/unstable/cluster/Entity.js +5 -3
  57. package/dist/unstable/cluster/Entity.js.map +1 -1
  58. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  59. package/dist/unstable/cluster/Sharding.js +3 -1
  60. package/dist/unstable/cluster/Sharding.js.map +1 -1
  61. package/dist/unstable/cluster/internal/entityManager.js +3 -2
  62. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  63. package/dist/unstable/cluster/internal/resourceMap.js +39 -14
  64. package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
  65. package/dist/unstable/encoding/Sse.d.ts +2 -2
  66. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  67. package/dist/unstable/http/HttpBody.d.ts +1 -1
  68. package/dist/unstable/http/HttpBody.d.ts.map +1 -1
  69. package/dist/unstable/http/HttpBody.js +1 -1
  70. package/dist/unstable/http/HttpBody.js.map +1 -1
  71. package/dist/unstable/http/HttpClient.js +2 -2
  72. package/dist/unstable/http/HttpClient.js.map +1 -1
  73. package/dist/unstable/http/HttpClientRequest.d.ts +5 -4
  74. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  75. package/dist/unstable/http/HttpClientRequest.js +5 -4
  76. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  77. package/dist/unstable/http/HttpClientResponse.d.ts +1 -1
  78. package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
  79. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  80. package/dist/unstable/http/HttpIncomingMessage.d.ts +2 -2
  81. package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
  82. package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
  83. package/dist/unstable/http/HttpRouter.d.ts +4 -4
  84. package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
  85. package/dist/unstable/http/HttpRouter.js.map +1 -1
  86. package/dist/unstable/http/HttpServerRequest.d.ts +8 -8
  87. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  88. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  89. package/dist/unstable/http/HttpServerResponse.d.ts +1 -1
  90. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  91. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  92. package/dist/unstable/http/Multipart.d.ts +2 -2
  93. package/dist/unstable/http/Multipart.d.ts.map +1 -1
  94. package/dist/unstable/http/Multipart.js.map +1 -1
  95. package/dist/unstable/http/Url.d.ts +29 -4
  96. package/dist/unstable/http/Url.d.ts.map +1 -1
  97. package/dist/unstable/http/Url.js +44 -2
  98. package/dist/unstable/http/Url.js.map +1 -1
  99. package/dist/unstable/http/UrlParams.d.ts +2 -28
  100. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  101. package/dist/unstable/http/UrlParams.js +4 -46
  102. package/dist/unstable/http/UrlParams.js.map +1 -1
  103. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  104. package/dist/unstable/httpapi/HttpApi.js +2 -4
  105. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  106. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  107. package/dist/unstable/httpapi/HttpApiBuilder.js +30 -15
  108. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  109. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  110. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +7 -7
  111. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
  112. package/dist/unstable/httpapi/HttpApiSchema.d.ts +1 -1
  113. package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
  114. package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
  115. package/dist/unstable/observability/OtlpTracer.js +4 -3
  116. package/dist/unstable/observability/OtlpTracer.js.map +1 -1
  117. package/dist/unstable/reactivity/Atom.d.ts +4 -4
  118. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  119. package/dist/unstable/reactivity/Atom.js.map +1 -1
  120. package/package.json +1 -1
  121. package/src/Cause.ts +3 -1
  122. package/src/Config.ts +1 -1
  123. package/src/Effect.ts +131 -0
  124. package/src/FileSystem.ts +13 -0
  125. package/src/Layer.ts +6 -6
  126. package/src/LayerMap.ts +1 -1
  127. package/src/LayerRef.ts +379 -0
  128. package/src/Schema.ts +83 -33
  129. package/src/SchemaParser.ts +2 -2
  130. package/src/internal/core.ts +1 -1
  131. package/src/internal/effect.ts +33 -6
  132. package/src/testing/TestSchema.ts +2 -2
  133. package/src/unstable/ai/Chat.ts +1 -1
  134. package/src/unstable/ai/LanguageModel.ts +3 -3
  135. package/src/unstable/cli/Argument.ts +14 -7
  136. package/src/unstable/cli/Flag.ts +6 -3
  137. package/src/unstable/cli/Param.ts +6 -3
  138. package/src/unstable/cli/Primitive.ts +2 -2
  139. package/src/unstable/cluster/ClusterWorkflowEngine.ts +1 -0
  140. package/src/unstable/cluster/Entity.ts +13 -14
  141. package/src/unstable/cluster/Sharding.ts +134 -131
  142. package/src/unstable/cluster/internal/entityManager.ts +11 -9
  143. package/src/unstable/cluster/internal/resourceMap.ts +59 -25
  144. package/src/unstable/encoding/Sse.ts +3 -3
  145. package/src/unstable/http/HttpBody.ts +2 -2
  146. package/src/unstable/http/HttpClient.ts +2 -2
  147. package/src/unstable/http/HttpClientRequest.ts +8 -7
  148. package/src/unstable/http/HttpClientResponse.ts +2 -3
  149. package/src/unstable/http/HttpIncomingMessage.ts +4 -5
  150. package/src/unstable/http/HttpRouter.ts +8 -10
  151. package/src/unstable/http/HttpServerRequest.ts +20 -19
  152. package/src/unstable/http/HttpServerResponse.ts +2 -2
  153. package/src/unstable/http/Multipart.ts +3 -3
  154. package/src/unstable/http/Url.ts +62 -7
  155. package/src/unstable/http/UrlParams.ts +5 -58
  156. package/src/unstable/httpapi/HttpApi.ts +2 -4
  157. package/src/unstable/httpapi/HttpApiBuilder.ts +33 -21
  158. package/src/unstable/httpapi/HttpApiClient.ts +2 -2
  159. package/src/unstable/httpapi/HttpApiEndpoint.ts +7 -7
  160. package/src/unstable/httpapi/HttpApiSchema.ts +1 -1
  161. package/src/unstable/observability/OtlpTracer.ts +4 -3
  162. package/src/unstable/reactivity/Atom.ts +10 -7
@@ -1 +1 @@
1
- {"version":3,"file":"Atom.js","names":["Arr","Cause","Channel","Context","Duration","Effect","Exit","Fiber","constant","constTrue","constVoid","dual","pipe","PipeInspectableProto","Layer","MutableHashMap","Option","hasProperty","Pull","Scheduler","Schema","Scope","Stream","SubscriptionRef","KeyValueStore","AsyncResult","AtomRegistry","Registry","Reactivity","TypeId","isAtom","u","WritableTypeId","setIdleTTL","self","durationInput","duration","fromInputUnsafe","isFinite","Object","assign","create","getPrototypeOf","keepAlive","idleTTL","toMillis","undefined","removeTtl","AtomProto","toJSON","_id","lazy","label","RuntimeProto","atom","arg","options","read","makeRead","readable","get","previous","runtimeResult","_tag","replacePrevious","value","fn","arguments","length","makeFnRuntime","pull","pullSignal","state","pullAtom","makeEffect","makeStreamPullEffect","initial","makeStreamPull","subscriptionRef","ref","makeSubRef","isSubscriptionRef","runtime","getOrThrow","readSubscriptionRef","write","argAtom","makeResultFn","reactivityKeys","a","effect","isEffect","mutation","ensuring","invalidate","writable","WritableProto","isWritable","refresh","constSetSelf","ctx","setSelf","make","readOrAtom","isStream","providedServices","EffectTypeId","StreamTypeId","stream","initialValue","_get","services","success","uninterruptible","empty","scope","makeUnsafe","addFinalizer","runForkWith","close","void","servicesMap","Map","mapUnsafe","set","key","registry","scheduler","syncResult","isAsync","cancel","runCallbackSync","exit","fromExitWithPrevious","waitingFrom","waiting","onExit","isExit","runFork","fiber","currentDispatcher","flush","result","pollUnsafe","remove","addObserver","interruptUnsafe","context","globalLayer","layer","factory","layerAtom","provideMerge","build","flatMap","buildWithMemoMap","memoMap","addGlobalLayer","provide","reactivityAtom","contextWith","map","withReactivity","keys","transform","reactivity","registerUnsafe","subscribe","once","initialValueTarget","defaultMemoMap","makeMemoMapUnsafe","makeStream","add","run","scopedWith","toPullScoped","channel","whileLoop","while","body","step","arr","lastNonEmpty","catchCause","cause","isDoneCause","match","onNone","failWithPrevious","NoSuchElementError","onSome","failureWithPrevious","sub","changes","runForEachArray","i","runCallbackWith","runSyncWith","refAtom","runSync","isSuccess","fnSync","args","makeFnSync","f","hasInitialValue","isFn","counter","none","some","batch","refreshSelf","Reset","Symbol","for","Interrupt","makeFn","fibersAtom","concurrent","fibers","Set","forEach","interrupt","eff","forkDetach","startImmediately","delete","joinAll","toPull","pullChunk","getCurrent","acc","matchCauseEffect","onFailure","isReadonlyArrayNonEmpty","fail","succeed","done","items","failCause","onSuccess","chunk","disableAccumulation","appendAll","cancels","pending","size","_","family","WeakRef","FinalizationRegistry","atoms","atomEntry","newAtom","flatMapNullishOr","deref","register","withFallback","fallback","autoDispose","setLazy","withLabel","name","Error","stack","split","getInitialValueTarget","target","mapResult","debounce","millis","timeout","update","clearTimeout","val","setTimeout","withRefresh","handle","swr","staleTime","current","revalidateOnFocus","focusSignal","shouldRevalidateSWR","firstRead","isNone","revalidateOnMount","swrTimestamp","timestamp","previousSuccess","isFreshWithin","now","getOrUndefined","Date","optimistic","writeAtom","lastValue","needsRefresh","transitions","isAsyncResult","isInitial","has","isFailure","immediate","clear","optimisticFn","transition","reducer","touch","callback","resume","toExit","windowFocusSignal","count","document","visibilityState","window","addEventListener","removeEventListener","makeRefreshOnSignal","signal","refreshOnWindowFocus","kvs","setAtom","use","store","toSchemaStore","schema","resultAtom","mode","mount","mapper","getOrElse","defaultValue","isSome","searchParam","decode","decodeExit","encode","encodeExit","handleUpdate","searchParamState","updating","searchParams","URLSearchParams","location","search","newValue","getSuccess","encoded","v","updates","zipRight","updateSearchParams","entries","newUrl","pathname","toString","history","pushState","toStream","unwrap","r","toStreamResult","modify","getResult","SerializableTypeId","isSerializable","serializable","codecJson","toCodecJson","encodeSync","decodeSync","ServerValueTypeId","withServerValue","withServerValueInitial","getServerValue"],"sources":["../../../src/unstable/reactivity/Atom.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Atom.js","names":["Arr","Cause","Channel","Context","Duration","Effect","Exit","Fiber","constant","constTrue","constVoid","dual","pipe","PipeInspectableProto","Layer","MutableHashMap","Option","hasProperty","Pull","Scheduler","Schema","Scope","Stream","SubscriptionRef","KeyValueStore","AsyncResult","AtomRegistry","Registry","Reactivity","TypeId","isAtom","u","WritableTypeId","setIdleTTL","self","durationInput","duration","fromInputUnsafe","isFinite","Object","assign","create","getPrototypeOf","keepAlive","idleTTL","toMillis","undefined","removeTtl","AtomProto","toJSON","_id","lazy","label","RuntimeProto","atom","arg","options","read","makeRead","readable","get","previous","runtimeResult","_tag","replacePrevious","value","fn","arguments","length","makeFnRuntime","pull","pullSignal","state","pullAtom","makeEffect","makeStreamPullEffect","initial","makeStreamPull","subscriptionRef","ref","makeSubRef","isSubscriptionRef","runtime","getOrThrow","readSubscriptionRef","write","argAtom","makeResultFn","reactivityKeys","a","effect","isEffect","mutation","ensuring","invalidate","writable","WritableProto","isWritable","refresh","constSetSelf","ctx","setSelf","make","readOrAtom","isStream","providedServices","EffectTypeId","StreamTypeId","stream","initialValue","_get","services","success","uninterruptible","empty","scope","makeUnsafe","addFinalizer","runForkWith","close","void","servicesMap","Map","mapUnsafe","set","key","registry","scheduler","syncResult","isAsync","cancel","runCallbackSync","exit","fromExitWithPrevious","waitingFrom","waiting","onExit","isExit","runFork","fiber","currentDispatcher","flush","result","pollUnsafe","remove","addObserver","interruptUnsafe","context","globalLayer","layer","factory","layerAtom","provideMerge","build","flatMap","buildWithMemoMap","memoMap","addGlobalLayer","provide","reactivityAtom","contextWith","map","withReactivity","keys","transform","reactivity","registerUnsafe","subscribe","once","initialValueTarget","defaultMemoMap","makeMemoMapUnsafe","makeStream","add","run","scopedWith","toPullScoped","channel","whileLoop","while","body","step","arr","lastNonEmpty","catchCause","cause","isDoneCause","match","onNone","failWithPrevious","NoSuchElementError","onSome","failureWithPrevious","sub","changes","runForEachArray","i","runCallbackWith","runSyncWith","refAtom","runSync","isSuccess","fnSync","args","makeFnSync","f","hasInitialValue","isFn","counter","none","some","batch","refreshSelf","Reset","Symbol","for","Interrupt","makeFn","fibersAtom","concurrent","fibers","Set","forEach","interrupt","eff","forkDetach","startImmediately","delete","joinAll","toPull","pullChunk","getCurrent","acc","matchCauseEffect","onFailure","isReadonlyArrayNonEmpty","fail","succeed","done","items","failCause","onSuccess","chunk","disableAccumulation","appendAll","cancels","pending","size","_","family","WeakRef","FinalizationRegistry","atoms","atomEntry","newAtom","flatMapNullishOr","deref","register","withFallback","fallback","autoDispose","setLazy","withLabel","name","Error","stack","split","getInitialValueTarget","target","mapResult","debounce","millis","timeout","update","clearTimeout","val","setTimeout","withRefresh","handle","swr","staleTime","current","revalidateOnFocus","focusSignal","shouldRevalidateSWR","firstRead","isNone","revalidateOnMount","swrTimestamp","timestamp","previousSuccess","isFreshWithin","now","getOrUndefined","Date","optimistic","writeAtom","lastValue","needsRefresh","transitions","isAsyncResult","isInitial","has","isFailure","immediate","clear","optimisticFn","transition","reducer","touch","callback","resume","toExit","windowFocusSignal","count","document","visibilityState","window","addEventListener","removeEventListener","makeRefreshOnSignal","signal","refreshOnWindowFocus","kvs","setAtom","use","store","toSchemaStore","schema","resultAtom","mode","mount","mapper","getOrElse","defaultValue","isSome","searchParam","decode","decodeExit","encode","encodeExit","handleUpdate","searchParamState","updating","searchParams","URLSearchParams","location","search","newValue","getSuccess","encoded","v","updates","zipRight","updateSearchParams","entries","newUrl","pathname","toString","history","pushState","toStream","unwrap","r","toStreamResult","modify","getResult","SerializableTypeId","isSerializable","serializable","codecJson","toCodecJson","encodeSync","decodeSync","ServerValueTypeId","withServerValue","withServerValueInitial","getServerValue"],"sources":["../../../src/unstable/reactivity/Atom.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "effect",
3
3
  "type": "module",
4
- "version": "4.0.0-beta.92",
4
+ "version": "4.0.0-beta.94",
5
5
  "license": "MIT",
6
6
  "description": "The missing standard library for TypeScript, for writing production-grade software.",
7
7
  "homepage": "https://effect.website",
package/src/Cause.ts CHANGED
@@ -1234,7 +1234,9 @@ export const filterInterruptors: <E>(self: Cause<E>) => Result.Result<Set<number
1234
1234
  * @category rendering
1235
1235
  * @since 3.2.0
1236
1236
  */
1237
- export const prettyErrors: <E>(self: Cause<E>) => Array<Error> = effect.causePrettyErrors
1237
+ export const prettyErrors: <E>(self: Cause<E>, options?: {
1238
+ readonly includeCauseInStack?: boolean | undefined
1239
+ }) => Array<Error> = effect.causePrettyErrors
1238
1240
 
1239
1241
  /**
1240
1242
  * Formats a `Cause` as a human-readable string for logging or debugging.
package/src/Config.ts CHANGED
@@ -855,7 +855,7 @@ const recur: (
855
855
  * @category schemas
856
856
  * @since 4.0.0
857
857
  */
858
- export function schema<T, E>(codec: Schema.Codec<T, E>, path?: string | ConfigProvider.Path): Config<T> {
858
+ export function schema<T>(codec: Schema.ConstraintCodec<T, unknown>, path?: string | ConfigProvider.Path): Config<T> {
859
859
  const codecStringTree = Schema.toCodecStringTree(codec)
860
860
  const decodeUnknownEffect = SchemaParser.decodeUnknownEffect(codecStringTree)
861
861
  const codecStringTreeEncoded = SchemaAST.toEncoded(codecStringTree.ast)
package/src/Effect.ts CHANGED
@@ -11751,6 +11751,137 @@ export const provideContext: {
11751
11751
  <A, E, R, XR>(self: Effect<A, E, R>, context: Context.Context<XR>): Effect<A, E, Exclude<R, XR>>
11752
11752
  } = internal.provideContext
11753
11753
 
11754
+ /**
11755
+ * Runs an effect with the provided context as its complete environment.
11756
+ *
11757
+ * **When to use**
11758
+ *
11759
+ * Use when you already have a `Context` containing every service required by
11760
+ * the effect and want the wrapped effect to run with exactly that context.
11761
+ *
11762
+ * **Gotchas**
11763
+ *
11764
+ * `setContext` replaces the current context for the wrapped effect. Services
11765
+ * from an outer context are not inherited unless they are also present in the
11766
+ * context passed to `setContext`.
11767
+ *
11768
+ * **Example** (Running with a complete context)
11769
+ *
11770
+ * ```ts
11771
+ * import { Context, Effect } from "effect"
11772
+ *
11773
+ * class Config extends Context.Service<Config, {
11774
+ * readonly greeting: string
11775
+ * }>()("Config") {}
11776
+ *
11777
+ * const program = Effect.gen(function*() {
11778
+ * const config = yield* Effect.service(Config)
11779
+ * return `${config.greeting}, World!`
11780
+ * })
11781
+ *
11782
+ * const context = Context.make(Config, { greeting: "Hello" })
11783
+ *
11784
+ * const runnable = Effect.setContext(program, context)
11785
+ *
11786
+ * Effect.runPromise(runnable).then(console.log)
11787
+ * // Output: "Hello, World!"
11788
+ * ```
11789
+ *
11790
+ * @see {@link provideContext} for partially satisfying an effect's context requirements.
11791
+ * @see {@link updateContext} for deriving the required context from the current one.
11792
+ *
11793
+ * @category environment
11794
+ * @since 4.0.0
11795
+ */
11796
+ export const setContext: {
11797
+ /**
11798
+ * Runs an effect with the provided context as its complete environment.
11799
+ *
11800
+ * **When to use**
11801
+ *
11802
+ * Use when you already have a `Context` containing every service required by
11803
+ * the effect and want the wrapped effect to run with exactly that context.
11804
+ *
11805
+ * **Gotchas**
11806
+ *
11807
+ * `setContext` replaces the current context for the wrapped effect. Services
11808
+ * from an outer context are not inherited unless they are also present in the
11809
+ * context passed to `setContext`.
11810
+ *
11811
+ * **Example** (Running with a complete context)
11812
+ *
11813
+ * ```ts
11814
+ * import { Context, Effect } from "effect"
11815
+ *
11816
+ * class Config extends Context.Service<Config, {
11817
+ * readonly greeting: string
11818
+ * }>()("Config") {}
11819
+ *
11820
+ * const program = Effect.gen(function*() {
11821
+ * const config = yield* Effect.service(Config)
11822
+ * return `${config.greeting}, World!`
11823
+ * })
11824
+ *
11825
+ * const context = Context.make(Config, { greeting: "Hello" })
11826
+ *
11827
+ * const runnable = Effect.setContext(program, context)
11828
+ *
11829
+ * Effect.runPromise(runnable).then(console.log)
11830
+ * // Output: "Hello, World!"
11831
+ * ```
11832
+ *
11833
+ * @see {@link provideContext} for partially satisfying an effect's context requirements.
11834
+ * @see {@link updateContext} for deriving the required context from the current one.
11835
+ *
11836
+ * @category environment
11837
+ * @since 4.0.0
11838
+ */
11839
+ <R>(context: Context.Context<R>): <A, E>(self: Effect<A, E, R>) => Effect<A, E>
11840
+ /**
11841
+ * Runs an effect with the provided context as its complete environment.
11842
+ *
11843
+ * **When to use**
11844
+ *
11845
+ * Use when you already have a `Context` containing every service required by
11846
+ * the effect and want the wrapped effect to run with exactly that context.
11847
+ *
11848
+ * **Gotchas**
11849
+ *
11850
+ * `setContext` replaces the current context for the wrapped effect. Services
11851
+ * from an outer context are not inherited unless they are also present in the
11852
+ * context passed to `setContext`.
11853
+ *
11854
+ * **Example** (Running with a complete context)
11855
+ *
11856
+ * ```ts
11857
+ * import { Context, Effect } from "effect"
11858
+ *
11859
+ * class Config extends Context.Service<Config, {
11860
+ * readonly greeting: string
11861
+ * }>()("Config") {}
11862
+ *
11863
+ * const program = Effect.gen(function*() {
11864
+ * const config = yield* Effect.service(Config)
11865
+ * return `${config.greeting}, World!`
11866
+ * })
11867
+ *
11868
+ * const context = Context.make(Config, { greeting: "Hello" })
11869
+ *
11870
+ * const runnable = Effect.setContext(program, context)
11871
+ *
11872
+ * Effect.runPromise(runnable).then(console.log)
11873
+ * // Output: "Hello, World!"
11874
+ * ```
11875
+ *
11876
+ * @see {@link provideContext} for partially satisfying an effect's context requirements.
11877
+ * @see {@link updateContext} for deriving the required context from the current one.
11878
+ *
11879
+ * @category environment
11880
+ * @since 4.0.0
11881
+ */
11882
+ <A, E, R>(self: Effect<A, E, R>, context: Context.Context<R>): Effect<A, E>
11883
+ } = internal.setContext
11884
+
11754
11885
  /**
11755
11886
  * Accesses a service from the context.
11756
11887
  *
package/src/FileSystem.ts CHANGED
@@ -118,6 +118,16 @@ export interface FileSystem {
118
118
  uid: number,
119
119
  gid: number
120
120
  ) => Effect.Effect<void, PlatformError>
121
+ /**
122
+ * Glob a directory.
123
+ */
124
+ readonly glob: (
125
+ pattern: string,
126
+ options?: {
127
+ readonly root?: string | undefined
128
+ readonly exclude?: ReadonlyArray<string> | undefined
129
+ }
130
+ ) => Effect.Effect<Array<string>, PlatformError>
121
131
  /**
122
132
  * Checks whether a path exists.
123
133
  */
@@ -917,6 +927,9 @@ export const makeNoop = (fileSystem: Partial<FileSystem>): FileSystem =>
917
927
  copyFile(path) {
918
928
  return Effect.fail(notFound("copyFile", path))
919
929
  },
930
+ glob(pattern) {
931
+ return Effect.fail(notFound("glob", pattern))
932
+ },
920
933
  exists() {
921
934
  return Effect.succeed(false)
922
935
  },
package/src/Layer.ts CHANGED
@@ -565,10 +565,10 @@ export const forkMemoMap = (parent: MemoMap): Effect<MemoMap> => internalEffect.
565
565
  * @since 3.13.0
566
566
  */
567
567
  export class CurrentMemoMap extends Context.Service<CurrentMemoMap, MemoMap>()("effect/Layer/CurrentMemoMap") {
568
- static getOrCreate: <Services>(self: Context.Context<Services>) => MemoMap = Context.getOrElse(
569
- this,
570
- makeMemoMapUnsafe
571
- )
568
+ static forkOrCreate<Services>(self: Context.Context<Services>): MemoMap {
569
+ const current = Context.getOrUndefined(self, CurrentMemoMap)
570
+ return current ? forkMemoMapUnsafe(current) : makeMemoMapUnsafe()
571
+ }
572
572
  }
573
573
 
574
574
  /**
@@ -766,7 +766,7 @@ export const build = <RIn, E, ROut>(
766
766
  core.withFiber((fiber) =>
767
767
  buildWithMemoMap(
768
768
  self,
769
- CurrentMemoMap.getOrCreate(fiber.context),
769
+ CurrentMemoMap.forkOrCreate(fiber.context),
770
770
  Context.getUnsafe(fiber.context, Scope.Scope)
771
771
  )
772
772
  )
@@ -922,7 +922,7 @@ export const buildWithScope: {
922
922
  core.withFiber((fiber) =>
923
923
  buildWithMemoMap(
924
924
  self,
925
- CurrentMemoMap.getOrCreate(fiber.context),
925
+ CurrentMemoMap.forkOrCreate(fiber.context),
926
926
  scope
927
927
  )
928
928
  ))
package/src/LayerMap.ts CHANGED
@@ -153,7 +153,7 @@ export const make: <
153
153
  } | undefined
154
154
  ) {
155
155
  const context = yield* Effect.context<never>()
156
- const memoMap = Layer.CurrentMemoMap.getOrCreate(context)
156
+ const memoMap = Layer.CurrentMemoMap.forkOrCreate(context)
157
157
 
158
158
  const rcMap = yield* RcMap.make({
159
159
  lookup: (key: K) =>