Skip to content

Commit f4c7b97

Browse files
authored
chore: roll 1.55.0 (#1827)
1 parent dd87b30 commit f4c7b97

File tree

14 files changed

+59
-144
lines changed

14 files changed

+59
-144
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@ Playwright is a Java library to automate [Chromium](https://www.chromium.org/Hom
1010

1111
| | Linux | macOS | Windows |
1212
| :--- | :---: | :---: | :---: |
13-
| Chromium <!-- GEN:chromium-version -->139.0.7258.5<!-- GEN:stop --> | :white_check_mark: | :white_check_mark: | :white_check_mark: |
13+
| Chromium <!-- GEN:chromium-version -->140.0.7339.16<!-- GEN:stop --> | :white_check_mark: | :white_check_mark: | :white_check_mark: |
1414
| WebKit <!-- GEN:webkit-version -->26.0<!-- GEN:stop --> ||||
15-
| Firefox <!-- GEN:firefox-version -->140.0.2<!-- GEN:stop --> | :white_check_mark: | :white_check_mark: | :white_check_mark: |
15+
| Firefox <!-- GEN:firefox-version -->141.0<!-- GEN:stop --> | :white_check_mark: | :white_check_mark: | :white_check_mark: |
1616

1717
## Documentation
1818

examples/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
<name>Playwright Client Examples</name>
1111
<properties>
1212
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
13-
<playwright.version>1.54.0</playwright.version>
13+
<playwright.version>1.55.0</playwright.version>
1414
</properties>
1515
<dependencies>
1616
<dependency>

playwright/src/main/java/com/microsoft/playwright/APIRequest.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,10 @@ class NewContextOptions {
5151
* {@code pfx}). Optionally, {@code passphrase} property should be provided if the certificate is encrypted. The {@code
5252
* origin} property should be provided with an exact match to the request origin that the certificate is valid for.
5353
*
54+
* <p> Client certificate authentication is only active when at least one client certificate is provided. If you want to reject
55+
* all client certificates sent by the server, you need to provide a client certificate with an {@code origin} that does
56+
* not match any of the domains you plan to visit.
57+
*
5458
* <p> <strong>NOTE:</strong> When using WebKit on macOS, accessing {@code localhost} will not pick up client certificates. You can make it work by
5559
* replacing {@code localhost} with {@code local.playwright}.
5660
*/
@@ -134,6 +138,10 @@ public NewContextOptions setBaseURL(String baseURL) {
134138
* {@code pfx}). Optionally, {@code passphrase} property should be provided if the certificate is encrypted. The {@code
135139
* origin} property should be provided with an exact match to the request origin that the certificate is valid for.
136140
*
141+
* <p> Client certificate authentication is only active when at least one client certificate is provided. If you want to reject
142+
* all client certificates sent by the server, you need to provide a client certificate with an {@code origin} that does
143+
* not match any of the domains you plan to visit.
144+
*
137145
* <p> <strong>NOTE:</strong> When using WebKit on macOS, accessing {@code localhost} will not pick up client certificates. You can make it work by
138146
* replacing {@code localhost} with {@code local.playwright}.
139147
*/

playwright/src/main/java/com/microsoft/playwright/Browser.java

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,10 @@ class NewContextOptions {
106106
* {@code pfx}). Optionally, {@code passphrase} property should be provided if the certificate is encrypted. The {@code
107107
* origin} property should be provided with an exact match to the request origin that the certificate is valid for.
108108
*
109+
* <p> Client certificate authentication is only active when at least one client certificate is provided. If you want to reject
110+
* all client certificates sent by the server, you need to provide a client certificate with an {@code origin} that does
111+
* not match any of the domains you plan to visit.
112+
*
109113
* <p> <strong>NOTE:</strong> When using WebKit on macOS, accessing {@code localhost} will not pick up client certificates. You can make it work by
110114
* replacing {@code localhost} with {@code local.playwright}.
111115
*/
@@ -323,6 +327,10 @@ public NewContextOptions setBypassCSP(boolean bypassCSP) {
323327
* {@code pfx}). Optionally, {@code passphrase} property should be provided if the certificate is encrypted. The {@code
324328
* origin} property should be provided with an exact match to the request origin that the certificate is valid for.
325329
*
330+
* <p> Client certificate authentication is only active when at least one client certificate is provided. If you want to reject
331+
* all client certificates sent by the server, you need to provide a client certificate with an {@code origin} that does
332+
* not match any of the domains you plan to visit.
333+
*
326334
* <p> <strong>NOTE:</strong> When using WebKit on macOS, accessing {@code localhost} will not pick up client certificates. You can make it work by
327335
* replacing {@code localhost} with {@code local.playwright}.
328336
*/
@@ -674,6 +682,10 @@ class NewPageOptions {
674682
* {@code pfx}). Optionally, {@code passphrase} property should be provided if the certificate is encrypted. The {@code
675683
* origin} property should be provided with an exact match to the request origin that the certificate is valid for.
676684
*
685+
* <p> Client certificate authentication is only active when at least one client certificate is provided. If you want to reject
686+
* all client certificates sent by the server, you need to provide a client certificate with an {@code origin} that does
687+
* not match any of the domains you plan to visit.
688+
*
677689
* <p> <strong>NOTE:</strong> When using WebKit on macOS, accessing {@code localhost} will not pick up client certificates. You can make it work by
678690
* replacing {@code localhost} with {@code local.playwright}.
679691
*/
@@ -891,6 +903,10 @@ public NewPageOptions setBypassCSP(boolean bypassCSP) {
891903
* {@code pfx}). Optionally, {@code passphrase} property should be provided if the certificate is encrypted. The {@code
892904
* origin} property should be provided with an exact match to the request origin that the certificate is valid for.
893905
*
906+
* <p> Client certificate authentication is only active when at least one client certificate is provided. If you want to reject
907+
* all client certificates sent by the server, you need to provide a client certificate with an {@code origin} that does
908+
* not match any of the domains you plan to visit.
909+
*
894910
* <p> <strong>NOTE:</strong> When using WebKit on macOS, accessing {@code localhost} will not pick up client certificates. You can make it work by
895911
* replacing {@code localhost} with {@code local.playwright}.
896912
*/

playwright/src/main/java/com/microsoft/playwright/BrowserType.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -491,6 +491,10 @@ class LaunchPersistentContextOptions {
491491
* {@code pfx}). Optionally, {@code passphrase} property should be provided if the certificate is encrypted. The {@code
492492
* origin} property should be provided with an exact match to the request origin that the certificate is valid for.
493493
*
494+
* <p> Client certificate authentication is only active when at least one client certificate is provided. If you want to reject
495+
* all client certificates sent by the server, you need to provide a client certificate with an {@code origin} that does
496+
* not match any of the domains you plan to visit.
497+
*
494498
* <p> <strong>NOTE:</strong> When using WebKit on macOS, accessing {@code localhost} will not pick up client certificates. You can make it work by
495499
* replacing {@code localhost} with {@code local.playwright}.
496500
*/
@@ -813,6 +817,10 @@ public LaunchPersistentContextOptions setChromiumSandbox(boolean chromiumSandbox
813817
* {@code pfx}). Optionally, {@code passphrase} property should be provided if the certificate is encrypted. The {@code
814818
* origin} property should be provided with an exact match to the request origin that the certificate is valid for.
815819
*
820+
* <p> Client certificate authentication is only active when at least one client certificate is provided. If you want to reject
821+
* all client certificates sent by the server, you need to provide a client certificate with an {@code origin} that does
822+
* not match any of the domains you plan to visit.
823+
*
816824
* <p> <strong>NOTE:</strong> When using WebKit on macOS, accessing {@code localhost} will not pick up client certificates. You can make it work by
817825
* replacing {@code localhost} with {@code local.playwright}.
818826
*/
@@ -1386,6 +1394,11 @@ default Browser launch() {
13861394
* the **parent** directory of the "Profile Path" seen at {@code chrome://version}.
13871395
*
13881396
* <p> Note that browsers do not allow launching multiple instances with the same User Data Directory.
1397+
*
1398+
* <p> <strong>NOTE:</strong> Chromium/Chrome: Due to recent Chrome policy changes, automating the default Chrome user profile is not supported.
1399+
* Pointing {@code userDataDir} to Chrome's main "User Data" directory (the profile used for your regular browsing) may
1400+
* result in pages not loading or the browser exiting. Create and use a separate directory (for example, an empty folder)
1401+
* as your automation profile instead. See https://developer.chrome.com/blog/remote-debugging-port for details.
13891402
* @since v1.8
13901403
*/
13911404
default BrowserContext launchPersistentContext(Path userDataDir) {
@@ -1406,6 +1419,11 @@ default BrowserContext launchPersistentContext(Path userDataDir) {
14061419
* the **parent** directory of the "Profile Path" seen at {@code chrome://version}.
14071420
*
14081421
* <p> Note that browsers do not allow launching multiple instances with the same User Data Directory.
1422+
*
1423+
* <p> <strong>NOTE:</strong> Chromium/Chrome: Due to recent Chrome policy changes, automating the default Chrome user profile is not supported.
1424+
* Pointing {@code userDataDir} to Chrome's main "User Data" directory (the profile used for your regular browsing) may
1425+
* result in pages not loading or the browser exiting. Create and use a separate directory (for example, an empty folder)
1426+
* as your automation profile instead. See https://developer.chrome.com/blog/remote-debugging-port for details.
14091427
* @since v1.8
14101428
*/
14111429
BrowserContext launchPersistentContext(Path userDataDir, LaunchPersistentContextOptions options);

playwright/src/main/java/com/microsoft/playwright/Page.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5812,8 +5812,8 @@ default Locator locator(String selector) {
58125812
*/
58135813
Page opener();
58145814
/**
5815-
* Pauses script execution. Playwright will stop executing the script and wait for the user to either press 'Resume' button
5816-
* in the page overlay or to call {@code playwright.resume()} in the DevTools console.
5815+
* Pauses script execution. Playwright will stop executing the script and wait for the user to either press the 'Resume'
5816+
* button in the page overlay or to call {@code playwright.resume()} in the DevTools console.
58175817
*
58185818
* <p> User can inspect selectors or perform manual steps while paused. Resume will continue running the original script from
58195819
* the place it was paused.

playwright/src/test/java/com/microsoft/playwright/TestDownload.java

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -93,18 +93,12 @@ void shouldReportDownloadWhenNavigationTurnsIntoDownload() throws IOException {
9393
assertTrue(Files.exists(path));
9494
byte[] bytes = readAllBytes(path);
9595
assertEquals("Hello world", new String(bytes, UTF_8));
96-
if (isChromium()) {
97-
assertNotNull(error[0]);
98-
assertTrue(error[0].getMessage().contains("net::ERR_ABORTED"));
99-
assertEquals("about:blank", page.url());
100-
} else if (isWebKit()) {
101-
assertNotNull(error[0]);
102-
assertTrue(error[0].getMessage().contains("Download is starting"));
103-
assertEquals("about:blank", page.url());
104-
} else {
105-
assertNotNull(error[0]);
96+
assertNotNull(error[0]);
97+
if (!chromiumVersionLessThan(browser.version(), "140.0.0.0")) {
10698
assertTrue(error[0].getMessage().contains("Download is starting"));
10799
}
100+
if (!isFirefox())
101+
assertEquals("about:blank", page.url());
108102
page.close();
109103
}
110104

playwright/src/test/java/com/microsoft/playwright/TestLaunch.java

Lines changed: 0 additions & 88 deletions
This file was deleted.

playwright/src/test/java/com/microsoft/playwright/TestPageInterception.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,13 @@ void shouldWorkWithGlob() {
186186
assertTrue(urlMatches("http://playwright.dev", "http://playwright.dev/?x=y", "?x=y"));
187187
assertTrue(urlMatches("http://playwright.dev/foo/", "http://playwright.dev/foo/bar?x=y", "./bar?x=y"));
188188

189+
// Case insensitive matching
190+
assertTrue(urlMatches(null, "https://playwright.dev/fooBAR", "HtTpS://pLaYwRiGhT.dEv/fooBAR"));
191+
assertTrue(urlMatches("http://ignored", "https://playwright.dev/fooBAR", "HtTpS://pLaYwRiGhT.dEv/fooBAR"));
192+
// Path and search query are case-sensitive
193+
assertFalse(urlMatches(null, "https://playwright.dev/foobar", "https://playwright.dev/fooBAR"));
194+
assertFalse(urlMatches(null, "https://playwright.dev/foobar?a=b", "https://playwright.dev/foobar?A=B"));
195+
189196
// This is not supported, we treat ? as a query separator.
190197
assertFalse(urlMatches(null, "http://localhost:8080/Simple/path.js", "http://localhost:8080/?imple/path.js"));
191198
assertFalse(urlMatches(null, "http://playwright.dev/", "http://playwright.?ev"));

playwright/src/test/java/com/microsoft/playwright/TestTracing.java

Lines changed: 0 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -269,27 +269,6 @@ void shouldTraceVariousAPIs(@TempDir Path tempDir) throws Exception {
269269
calls);
270270
}
271271

272-
@Test
273-
public void shouldNotRecordNetworkActions(@TempDir Path tempDir) throws IOException {
274-
context.tracing().start(new Tracing.StartOptions());
275-
276-
page.onRequest(request -> {
277-
request.allHeaders();
278-
});
279-
page.onResponse(response -> {
280-
response.text();
281-
});
282-
page.navigate(server.EMPTY_PAGE);
283-
284-
Path traceFile1 = tempDir.resolve("trace1.zip");
285-
context.tracing().stop(new Tracing.StopOptions().setPath(traceFile1));
286-
287-
List<TraceEvent> events = parseTraceEvents(traceFile1);
288-
List<String> calls = events.stream().filter(e -> e.renderedTitle() != null).map(e -> e.renderedTitle())
289-
.collect(Collectors.toList());
290-
assertEquals(asList("Frame.goto"), calls);
291-
}
292-
293272
private static class TraceEvent {
294273
String type;
295274
String name;

0 commit comments

Comments
 (0)