chore(driver): roll to 1.63.0-alpha-1788460676000 - #1972
Merged
Conversation
Port upstream client changes: - multiple HTTP credentials (httpCredentials accepts a list) - dialogClosed event on Page and BrowserContext - frameLocator() without selector searches in any frame - Locator.visible() - opfs option for storageState() - Tracing.start ariaSnapshots/screenSnapshots, tracingStart param renames - tracing recovers after a failed stop, HAR export errors no longer stall close - propagate tracesDir to request context tracing Also fix BrowserContext.setStorageState(Path) to send the parsed object.
Yury Semikhatsky (yury-s)
requested review from
Devin Rousso (dcrousso) and
Dmitry Gozman (dgozman)
September 4, 2026 00:20
- keep generic serialization in Tracing.start (restores forwarding of the live option) - add BrowserContextImpl.setTracesDir and use it from all context creation paths - simplify httpCredentials normalization, close()/stop() error handling, and the generator union branch - dedupe tracing artifact tests and tidy test imports
| PlaywrightAssertions.setDefaultAssertionTimeout(1000); | ||
| AssertionFailedError exception = assertThrows(AssertionFailedError.class, () -> assertThat(locator).hasText("foo")); | ||
| assertTrue(exception.getMessage().contains("Assert \"hasText\" with timeout 1000ms"), exception.getMessage()); | ||
| assertTrue(exception.getMessage().contains("Assert \"hasText\" locator(\"div\") with timeout 1000ms"), exception.getMessage()); |
Member
Author
There was a problem hiding this comment.
This looks suspecious.
There was a problem hiding this comment.
This is expected, we now always include locator in expect titles.
Pavel Feldman (pavelfeldman)
approved these changes
Sep 4, 2026
Dmitry Gozman (dgozman)
approved these changes
Sep 4, 2026
| PlaywrightAssertions.setDefaultAssertionTimeout(1000); | ||
| AssertionFailedError exception = assertThrows(AssertionFailedError.class, () -> assertThat(locator).hasText("foo")); | ||
| assertTrue(exception.getMessage().contains("Assert \"hasText\" with timeout 1000ms"), exception.getMessage()); | ||
| assertTrue(exception.getMessage().contains("Assert \"hasText\" locator(\"div\") with timeout 1000ms"), exception.getMessage()); |
There was a problem hiding this comment.
This is expected, we now always include locator in expect titles.
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.
Summary
Ported upstream changes:
httpCredentialsacceptsHttpCredentialsorList<HttpCredentials>, the protocol always receives a list.dialogClosedevent onPageandBrowserContext.page.frameLocator()/frame.frameLocator()without a selector searches in any frame (replaces the never-shippedpierceFrames).Locator.visible().opfsoption forstorageState();APIRequestContext.storageState()now also forwardsindexedDB.Tracing.startariaSnapshotsandscreenSnapshotsoptions;tracingStartprotocol params renamed tosnapshotDom/snapshotAria/snapshotScreen/screencast.stop().BrowserContext.close().tracesDiris propagated tocontext.request().tracing().Navigate.*.Also fixed
BrowserContext.setStorageState(Path)which sent the file contents as a string instead of the parsed object.Skipped (JS-only or internal): recorder/codegen (#41902, #41958, #42442), dashboard debugger panel (#41711), MCP (#42098, #42106, #42359), trace viewer/trace model internals (#42060, #42192, #42208, #42211, #42230, #42319, #42328, #42405, #42431, #42435, #42444, #42508), reporter step params/subtitles (#42250, #42357, #42422, #42515), typed generics (#42162), browser rolls, android fixes, reverted PRs (#41294/#41964, #42157/#42400, #42283/#42411),
setHTTPCredentials(stilllangs: js).