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
Playwright 1.65.0 fails to start on macOS 13.2 due to bundled Node.js compatibility (Stealthy Playwright Mode) #4551
When running Playwright 1.65.0 on macOS 13.2.1 (Ventura), Playwright's bundled Node.js executable fails to start because it was built for macOS 13.5 or later.
This causes sync_playwright() to fail with a dynamic linker (dyld) error.
Environment
macOS: 13.2.1 (Ventura)
Architecture: Apple Silicon (arm64)
Python: 3.13
Playwright: 1.65.0
Node.js (system installation): 24.19.0
Error
dyld: Symbol not found: __ZNSt3__122__libcpp_verbose_abortEPKcz
Referenced from: .../site-packages/playwright/driver/node
(built for macOS 13.5 which is newer than running OS)
Expected in: /usr/lib/libc++.1.dylib
This subsequently causes:
Exception: Connection closed while reading from the driver.
Observe the dyld error when Playwright attempts to launch its bundled Node.js executable.
Workaround
Using a system-installed Node.js executable resolves the issue.
For example:
export PLAYWRIGHT_NODEJS_PATH=/usr/local/bin/node
With this environment variable set, Playwright successfully starts using the system Node.js 24.19.0.
Proposed SeleniumBase Fix
Automatically set PLAYWRIGHT_NODEJS_PATH on macOS versions below 13.5.
The implementation checks the macOS version, obtains the system Node.js path using which node, and sets:
os.environ["PLAYWRIGHT_NODEJS_PATH"] =node_path
This avoids requiring users to manually configure the environment variable or upgrade macOS.
Expected Behavior
SeleniumBase should automatically configure Playwright to use the system-installed Node.js on affected macOS versions, allowing Playwright-based SeleniumBase examples and integrations to work without manual intervention.
Additional Notes
No changes to Playwright itself are necessary.
No Python or Playwright downgrade is necessary.
The workaround was verified on an Apple Silicon Mac running macOS 13.2.1 with Playwright 1.65.0 and Node.js 24.19.0.
Browser binary compatibility requirements may be separate from the Node.js driver compatibility issue.
Activity