You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
codecept info reports "Playwright not installed" under Bun because it shells out to npx #5713
A Bun-only environment has no npx on PATH, so execSync throws and the catch reports Playwright not installed. That is a false negative rather than a visible error, which makes it look like a genuine misconfiguration.
Details
Reproduce with Bun installed and Node/npm absent from PATH:
$ PATH=/path/to/bun/bin:/usr/bin:/bin bun ./bin/codecept.js info <dir>
bunInfo: 1.4.2
playwrightBrowsers: "Playwright not installed"
The workaround currently needed is symlinking npx to bun in the image, which is fragile and shouldn't be required just to read a version string.
Proposed fix
Pick the package runner from the runtime that is actually executing rather than from whatever PATH happens to hold — bunx under Bun, npx otherwise — detected via process.versions.bun. This is the same detection already used for getRuntimeInfo() in #5700. bunx playwright install --dry-run resolves the local node_modules/.bin/playwright and produces output identical to the npx form, so parsePlaywrightBrowsers() is unaffected and Node behaviour is unchanged.
This is the only place CodeceptJS actually shells out to npx; every other occurrence under lib/ is documentation text.
Activity
fix: use bunx instead of npx to read Playwright versions under Bun (c…