Skip to content

Commit 2bc1d49

Browse files
committed
Use Ki to propagate exceptions from streams properly
1 parent 2f1b8d4 commit 2bc1d49

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

src/Share/Web/UCM/SyncV2/Impl.hs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import Data.Binary.Builder qualified as Builder
1313
import Data.Set qualified as Set
1414
import Data.Text.Encoding qualified as Text
1515
import Data.Vector qualified as Vector
16+
import Ki.Unlifted qualified as Ki
1617
import Servant
1718
import Servant.Conduit (ConduitToSourceIO (..))
1819
import Servant.Types.SourceT (SourceT (..))
@@ -42,7 +43,6 @@ import Unison.SyncV2.API qualified as SyncV2
4243
import Unison.SyncV2.Types (CausalDependenciesChunk (..), DependencyType (..), DownloadEntitiesChunk (..), EntityChunk (..), ErrorChunk (..), StreamInitInfo (..))
4344
import Unison.SyncV2.Types qualified as SyncV2
4445
import UnliftIO qualified
45-
import UnliftIO.Async qualified as Async
4646

4747
batchSize :: Int32
4848
batchSize = 1000
@@ -184,4 +184,6 @@ codebaseForBranchRef branchRef = do
184184
sourceIOWithAsync :: IO a -> SourceIO r -> SourceIO r
185185
sourceIOWithAsync action (SourceT k) =
186186
SourceT \k' ->
187-
Async.withAsync action \_ -> k k'
187+
Ki.scoped \scope -> do
188+
_ <- Ki.fork scope action
189+
k k'

0 commit comments

Comments
 (0)