From 7100a3c45b43be25497d292b9568a1292dce42a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Valverd=C3=A9?= Date: Sat, 20 Jun 2026 17:02:18 +0200 Subject: [PATCH] Fix --- packages/effect-lens-next/src/Lens.ts | 10 ++++++---- packages/effect-lens/src/Lens.ts | 9 +++++---- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/packages/effect-lens-next/src/Lens.ts b/packages/effect-lens-next/src/Lens.ts index aa71810..710c496 100644 --- a/packages/effect-lens-next/src/Lens.ts +++ b/packages/effect-lens-next/src/Lens.ts @@ -219,11 +219,13 @@ extends LensImpl { * Note: since `Ref` does not provide any kind of reactivity mechanism, the produced `Lens` will be non-reactive. * This means its `changes` stream will only emit the current value once when evaluated and nothing else. */ -export const fromRef = Effect.fnUntraced(function* ( +export const fromRef = ( ref: Ref.Ref -): Effect.fn.Return, never, never> { - return new RefLensImpl(ref, yield* Semaphore.make(1)) -}) +): Effect.Effect, never, never> => Effect.map( + Semaphore.make(1), + semaphore => new RefLensImpl(ref, semaphore), +) + export class SynchronizedRefLensImpl extends LensImpl { diff --git a/packages/effect-lens/src/Lens.ts b/packages/effect-lens/src/Lens.ts index 55515a7..0f76c0b 100644 --- a/packages/effect-lens/src/Lens.ts +++ b/packages/effect-lens/src/Lens.ts @@ -182,11 +182,12 @@ extends LensImpl { * Note: since `Ref` does not provide any kind of reactivity mechanism, the produced `Lens` will be non-reactive. * This means its `changes` stream will only emit the current value once when evaluated and nothing else. */ -export const fromRef = Effect.fnUntraced(function* ( +export const fromRef = ( ref: Ref.Ref -): Effect.fn.Return, never, never> { - return new RefLensImpl(ref, yield* Effect.makeSemaphore(1)) -}) +): Effect.Effect, never, never> => Effect.map( + Effect.makeSemaphore(1), + semaphore => new RefLensImpl(ref, semaphore), +) export declare namespace SynchronizedRefLensImpl {