Repository navigation
Conversation
Contributor
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
lahfir
force-pushed
the
laf/bidi-engine-launch
branch
from
October 23, 2026 16:40
8f47474 to
93cd7e6
Compare
ctate
reviewed
Oct 23, 2026
lahfir
force-pushed
the
laf/bidi-engine-launch
branch
from
October 23, 2026 20:45
93cd7e6 to
2c6854a
Compare
lahfir
force-pushed
the
laf/bidi-engine-launch
branch
from
October 23, 2026 23:21
36a6633 to
a6896c4
Compare
lahfir
force-pushed
the
laf/bidi-engine-launch
branch
from
October 26, 2026 20:33
a6896c4 to
88515d4
Compare
lahfir
marked this pull request as ready for review
October 26, 2026 22:50
ctate
approved these changes
Oct 27, 2026
ctate
approved these changes
Nov 7, 2026
Subscribe to browsingContext.contextDestroyed and remove destroyed top-level contexts from the tab list and labels. If the active tab was destroyed, fall back to a surviving tab and reset refs and frame state, so later commands work and the label can be reused.
ctate
reviewed
Nov 8, 2026
…gger socket tab new <url> now returns with dialogOpened set when the page opens a prompt during load, instead of waiting out the 30s BiDi timeout. Firefox no longer starts the DevTools server or enables chrome devtools here, since nothing in this change connects to it.
ctate
approved these changes
Nov 8, 2026
…pts and launch validation
dialog now targets the context recorded with the pending prompt instead of the active tab, so a prompt in a tab you switched away from can still be accepted or dismissed.
ctate
approved these changes
Nov 8, 2026
The test asserted only that handleUserPrompt was sent, so it passed while the command went to the active tab. It now checks the context in the request.
ctate
approved these changes
Nov 8, 2026
window new now opens the window in a fresh BiDi user context, so it starts without the other window's cookies and storage, like Chrome's browser context. Closing the window removes the user context.
ctate
reviewed
Nov 8, 2026
Cookie reads, writes and clears use the active tab's storage partition, and tab new opens in that user context, so an isolated window stays isolated.
ctate
reviewed
Nov 8, 2026
# Conflicts: # docs/content/docs/network.mdx
A tab opened from an isolated window was created in that window's user context but never recorded as belonging to it. active_partition looked the new tab's context up in window_contexts, missed, and fell back to the default jar, so cookie reads and writes on that tab went to the wrong jar and the next tab opened outside the window. tab_new now records the user context it created along with the context, which keeps active_partition and the following tab_new inside the window. Several tabs now share one user context, and tab_close still drops the context only when the last tab of the window closes, counting by user context value. A state load replayed saved cookies without a partition, so loading while an isolated window was active wrote them into the default jar. The restore path now sends the active partition, the same way cookies_set does. The other cookie calls in this module already carried it. The window cookie e2e test now sets a cookie in a tab opened from the window, checks a third tab opened from that one stays in the same jar, and checks the default jar stays clean once the window closes. A new e2e test covers restoring cookies while an isolated window is active.
ctate
reviewed
Nov 9, 2026
ctate
reviewed
Nov 10, 2026
Railly
reviewed
Nov 10, 2026
Railly
left a comment
Member
There was a problem hiding this comment.
+1 to ctate's notes, plus one small nit
Tab ids, labels, the active tab and each tab's cookie jar lived in five maps on the session that every handler updated by hand. A popup opened from an isolated window was never added to the jar map, so cookie commands and state save used the default jar while it was active. `Contexts` now records every context Firefox reports, frames included, with the user context Firefox reports for it. Tab ownership, the active context and the storage partition are answered there and nowhere else. User contexts created by `window new` are removed once their last tab is gone, whoever closed it. Also in this change: - `window new` honours `viewport`, as it does on Chrome. - The DevTools client and its socket setup move to the snapshots change, the first one that uses them, so the module-wide `allow(dead_code)` can go. - Drop a launch test that repeated the fake-binary test and the e2e smoke test. Tested with `cargo test firefox` and the Firefox e2e suite; the window test now opens a popup from an isolated window and reads its cookies.
After the last known tab closed, the session kept an empty active context, so commands failed until a tab switch even though a new tab had opened. The registry now makes the first tab it records active when none is.
When no context is active, read the context tree instead of waiting for an event that may have been dropped. Also restore the launch test's check that Firefox is not started with a DevTools server.
State save from a window opened by `window new` read open tabs from every jar and re-read visited origins in a tab created in the default jar, so it dropped the window's storage and picked up the default window's. It now reads only tabs in the active tab's jar and creates the storage tab in that jar, both asked of the context registry. The window e2e test saves state from an isolated window after navigating away and checks the saved storage is that window's.
ctate
approved these changes
Nov 11, 2026
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
--engine firefox, which launches an owned Firefox over WebDriver BiDi and runs page, tab, storage and capture commands on it.