core: parallelise bootstrap (#22514)

This commit is contained in:
Brendan Allan
2026-04-15 03:23:28 +00:00
committed by GitHub
parent a60fd89d1e
commit 548d9ac726
+12 -8
View File
@@ -15,14 +15,18 @@ import * as Effect from "effect/Effect"
export const InstanceBootstrap = Effect.gen(function* () { export const InstanceBootstrap = Effect.gen(function* () {
Log.Default.info("bootstrapping", { directory: Instance.directory }) Log.Default.info("bootstrapping", { directory: Instance.directory })
yield* Plugin.Service.use((svc) => svc.init()) yield* Effect.all(
yield* ShareNext.Service.use((svc) => svc.init()).pipe(Effect.forkDetach) [
yield* Format.Service.use((svc) => svc.init()).pipe(Effect.forkDetach) Plugin.Service,
yield* LSP.Service.use((svc) => svc.init()) LSP.Service,
yield* File.Service.use((svc) => svc.init()).pipe(Effect.forkDetach) ShareNext.Service,
yield* FileWatcher.Service.use((svc) => svc.init()).pipe(Effect.forkDetach) Format.Service,
yield* Vcs.Service.use((svc) => svc.init()).pipe(Effect.forkDetach) File.Service,
yield* Snapshot.Service.use((svc) => svc.init()).pipe(Effect.forkDetach) FileWatcher.Service,
Vcs.Service,
Snapshot.Service,
].map((s) => Effect.forkDetach(s.use((i) => i.init()))),
)
yield* Bus.Service.use((svc) => yield* Bus.Service.use((svc) =>
svc.subscribeCallback(Command.Event.Executed, async (payload) => { svc.subscribeCallback(Command.Event.Executed, async (payload) => {