Skip to content

feder-cr/invisible_playwright

vfirefox-5 Bugfix

This release fixes issues for SREs watching stability and regressions.

Published 13d API Development
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

anti-bot anti-detect-browser automation browser-automation browser-fingerprinting captcha
+14 more
captcha-bypass fingerprint fingerprint-spoofing fingerprintjs firefox hcaptcha headless-browser playwright recaptcha recaptcha-bypass scraping socks5 stealth web-scraping

ReleasePort's take

Light signal
editorial:auto 13d

Firefox 150 fixes crashes when overriding timezone in persistent contexts via new nsIDocShell.overrideTimezone API. Requires invisible_playwright 0.1.6.

Why it matters: Fixes crashes when overriding timezone in persistent contexts (severity 50). Standard upgrade for automation/testing workflows; no migration required.

Summary

AI summary

Implemented nsIDocShell.overrideTimezone in C++ to fix persistent context timezone crashes.

Changes in this release

Feature Medium

Adds `nsIDocShell.overrideTimezone` implementation in C++.

Adds `nsIDocShell.overrideTimezone` implementation in C++.

Source: llm_adapter@2026-05-21

Confidence: high

Dependency Medium

Requires invisible_playwright 0.1.6 for persistent context timezone handling.

Requires invisible_playwright 0.1.6 for persistent context timezone handling.

Source: llm_adapter@2026-05-21

Confidence: low

Bugfix Medium

Fixes crash when overriding timezone in persistent context.

Fixes crash when overriding timezone in persistent context.

Source: llm_adapter@2026-05-21

Confidence: high

Full changelog

Patched Firefox 150.0.1 build with the C7 closure — nsIDocShell.overrideTimezone IDL method now implemented in C++.

What changed since firefox-4

Content-side timezone propagation through Juggler used to call docShell.overrideTimezone(timezoneId) and crash with TypeError: docShell.overrideTimezone is not a function. On the non-persistent path the error was harmless (Juggler stayed up). On launch_persistent_context(timezone_id=...) it blocked the handshake and Playwright timed out at 180s. With the method present, persistent context starts in ~20s like the regular path.

All other binary content is identical to firefox-4.

SHA256

See checksums.txt.

Pair with

invisible_playwright 0.1.6 — the wrapper rev that drops the firefox-4-era workaround filtering locale/timezone_id out of the persistent context kwargs.

Patch details

docshell/base/nsIDocShell.idl declares boolean overrideTimezone(in AString aTimezone). docshell/base/nsDocShell.cpp implements it: walks GetWindow → inner window → global → realm → JS::SetRealmTimezoneOverride. Returns false only if the docShell has no current window or realm. Otherwise true.

The parent-process Browser.setTimezoneOverride path keeps using the existing BrowsingContext.TimezoneOverride FIELD + DidSet that propagate to every realm; this content-side method is its complement for realms that the docshell-restore just created.

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track feder-cr/invisible_playwright

Get notified when new releases ship.

Sign up free

About feder-cr/invisible_playwright

All releases →

Related context

Earlier breaking changes

  • vfirefox-3 Supersedes firefox-2; invisible_playwright BINARY_VERSION bumped to firefox-3 in 0.1.3.

Beta — feedback welcome: [email protected]