effect 3.10.6 → 3.10.7

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.
@@ -1,4 +1,4 @@
1
- let moduleVersion = "3.10.6";
1
+ let moduleVersion = "3.10.7";
2
2
  export const getCurrentVersion = () => moduleVersion;
3
3
  export const setCurrentVersion = version => {
4
4
  moduleVersion = version;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "effect",
3
- "version": "3.10.6",
3
+ "version": "3.10.7",
4
4
  "description": "The missing standard library for TypeScript, for writing production-grade software.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -1711,7 +1711,7 @@ export const mergeWith = dual<
1711
1711
  Effect.succeed(
1712
1712
  core.flatMap(core.write(elem), () =>
1713
1713
  core.flatMap(
1714
- core.fromEffect(Effect.forkDaemon(pull)),
1714
+ core.fromEffect(Effect.forkIn(Effect.interruptible(pull), scope)),
1715
1715
  (leftFiber) => go(both(leftFiber, fiber))
1716
1716
  ))
1717
1717
  )
@@ -1807,8 +1807,8 @@ export const mergeWith = dual<
1807
1807
  return pipe(
1808
1808
  core.fromEffect(
1809
1809
  Effect.zipWith(
1810
- Effect.forkIn(pullL, scope),
1811
- Effect.forkIn(pullR, scope),
1810
+ Effect.forkIn(Effect.interruptible(pullL), scope),
1811
+ Effect.forkIn(Effect.interruptible(pullR), scope),
1812
1812
  (left, right): State =>
1813
1813
  mergeState.BothRunning<
1814
1814
  Env | Env1,
@@ -5475,17 +5475,32 @@ export const retry = dual<
5475
5475
  self: Stream.Stream<A, E, R>,
5476
5476
  schedule: Schedule.Schedule<X, E0, R2>
5477
5477
  ): Stream.Stream<A, E, R | R2> =>
5478
- unwrap(
5479
- Effect.map(Schedule.driver(schedule), (driver) => {
5480
- const loop: Stream.Stream<A, E, R | R2> = catchAll(self, (error) =>
5481
- unwrap(
5482
- Effect.matchEffect(driver.next(error as E0), {
5483
- onFailure: () => Effect.fail(error),
5484
- onSuccess: () => Effect.succeed(pipe(loop, tap(() => driver.reset)))
5485
- })
5486
- ))
5478
+ Schedule.driver(schedule).pipe(
5479
+ Effect.map((driver) => {
5480
+ const loop: Channel.Channel<
5481
+ Chunk.Chunk<A>,
5482
+ unknown,
5483
+ E,
5484
+ unknown,
5485
+ unknown,
5486
+ unknown,
5487
+ R | R2
5488
+ > = toChannel(self).pipe(
5489
+ channel.mapOutEffect((out) => Effect.as(driver.reset, out)),
5490
+ channel.catchAll((error) =>
5491
+ driver.next(error as E0).pipe(
5492
+ Effect.match({
5493
+ onFailure: () => core.fail(error),
5494
+ onSuccess: () => loop
5495
+ }),
5496
+ channel.unwrap
5497
+ )
5498
+ )
5499
+ )
5487
5500
  return loop
5488
- })
5501
+ }),
5502
+ channel.unwrap,
5503
+ fromChannel
5489
5504
  )
5490
5505
  )
5491
5506
 
@@ -1,4 +1,4 @@
1
- let moduleVersion = "3.10.6"
1
+ let moduleVersion = "3.10.7"
2
2
 
3
3
  export const getCurrentVersion = () => moduleVersion
4
4