Binary fails with 'Worker Pool Error'
Downloaded the latest version (3.0.0) and then ran it. It opened a console windows, ran for a while (several minutes), then output error messages:
Reading logs, please wait...
Skipping DataSpell2025.2 because it does not have a projects directory
Skipping Fleet because it does not have a projects directory
Skipping jetbrains-ai-lsp because it does not have a projects directory
Skipping RustRover2025.1 because it does not have a projects directory
Skipping RustRover2025.2 because it does not have a projects directory
Skipping Toolbox because it does not have a projects directory
Skipping Toolbox-Dev because it does not have a projects directory
Concurrency is 12. Set environment CONCURRENCY to configure
Worker pool error: ErrorEvent {
type: "error",
message: "BuildMessage: ModuleNotFound resolving \"./src/workers/loadEventsWorker.ts\" (entry point)",
error: null,
}
Worker pool error: ErrorEvent {
type: "error",
message: "BuildMessage: ModuleNotFound resolving \"./src/workers/loadEventsWorker.ts\" (entry point)",
error: null,
}
Worker pool error: ErrorEvent {
type: "error",
message: "BuildMessage: ModuleNotFound resolving \"./src/workers/loadEventsWorker.ts\" (entry point)",
error: null,
}
You need to disable concurrency - https://github.com/dmeehan1968/junie-explorer/blob/main/README.md#max-workers
Set the value to 0. This is a problem in the Bun runtime used to create the executable.
FYI - In PowerShell you can't define an environment variable on the same line as the application, so it needs to look like:
❯ $Env:CONCURRENCY = 0
❯ .\junie-explorer-windows-x64.exe
I think I finally figured out what is going wrong here, and why it works for me and not for some others.
Basically if you have cloned/forked the repo, then you have the source files. Because of how Bun binaries look for the worker scripts, it will find it relative to the current working directory.
If you have downloaded the binary from GH or are running with a different CWD, then it can't find the source file, and the source file is never bundled into the binary for it to find it otherwise. This will happen regardless of the platform you are on, whereas initially I thought this was a platform specific bug.
Bun have suggested that they will create new Worker(...) calls differently to auto bundle the source, but this hasn't happened yet.
The default is now concurrency disabled, so workers are not used. I'll look into fixing this properly so that everyone can benefit from full concurrency! That said, I'm also exploring ways to avoid the preload of all projects (#44), most of which are probably not needed unless you really want historical stats across many projects, which seems like a fringe requirement and not an issue to wait for when required.
Should be fixed in https://github.com/dmeehan1968/junie-explorer/releases/tag/v3.5.0