3 hours ago
Activiti
18 hours ago
playwright-java

v1.63.0

🪟 Locate across frames

page.frameLocator() and frame.frameLocator() called without a selector search in any frame of the subtree, so you no longer need to locate the iframe first:

// Finds the button in any frame on the page.
page.frameLocator().getByRole(AriaRole.BUTTON).click();

The rest of the locator resolves inside a single frame, just like a regular locator, and an error is thrown when it matches elements in several frames.

👁️ Visible-only locators

New locator.visible() returns a locator that matches only visible elements. It is the recommended replacement for the :visible CSS pseudo-class:

page.locator("button").visible().click();

🖼️ Aria and screen snapshots in traces

New ariaSnapshots and screenSnapshots options of tracing.start() capture an aria snapshot and a screenshot of the page on every action:

context.tracing().start(new Tracing.StartOptions()
  .setSnapshots(true)
  .setAriaSnapshots(true)
  .setScreenSnapshots(true));

With aria and screen snapshots recorded, the new Display Aria mode in the trace viewer shows the action screenshot side by side with the aria snapshot, and hovering an aria node highlights it on the screenshot.

☕ Nullability annotations

The public API is now annotated with JSpecify nullability annotations. The com.microsoft.playwright, com.microsoft.playwright.options and com.microsoft.playwright.assertions packages are @NullMarked, and values that can be absent are marked @Nullable, so null-checking tools such as NullAway, as well as Kotlin code, can catch missing null checks at compile time.

New APIs

Browser and Context

Command line

  • mvn exec:java -e -D exec.mainClass=com.microsoft.playwright.CLI -D exec.args="install --no-remove" keeps the browsers of other Playwright installations instead of removing them.
  • mvn exec:java -e -D exec.mainClass=com.microsoft.playwright.CLI -D exec.args="codegen --http-credentials" records against pages behind HTTP authentication.

Announcements

  • ⚠️ Ubuntu 20.04 is not supported anymore.
  • 🐧 On Linux arm64, Playwright now downloads the Chrome for Testing build of Chromium, the same build used on all other platforms.

Browser Versions

  • Chromium 153.0.8010.12
  • Mozilla Firefox 155.0
  • WebKit 26.6

This version was also tested against the following stable channels:

  • Google Chrome 153
  • Microsoft Edge 153
19 hours ago
byte-buddy

Byte Buddy 1.18.14

  • Avoid exposure of the agent argument on the command line of the process that is spawned for an external attachment.
  • Avoid the resolution of symbolic links when the Gradle plugin deletes a folder recursively.
  • Limit the nesting depth that is accepted when parsing a generic type signature to avoid an exhaustion of the stack for a malformed class file.
  • Sign all deployed files using sigstore, in addition to the existing GPG signature.
  • Validate entry names when the Android plugin retains a file to avoid the propagation of path traversals.
1 days ago
selenium

Nightly

Commits

  • b39d1c2: [build] Automated Dependency Update (#18032) (Selenium CI Bot) #18032
  • 436022c: [build] Automated Selenium Manager Update (Selenium CI Bot)
1 days ago
selenium

Nightly

Commits

  • 413306e: [py] cleanup for ruff b904 raise from (#18030) (Alex Popov) #18030
1 days ago
JSqlParser

jsqlparser-5.4

What's Changed

Changes and new Features

New Contributors

Full Changelog: https://github.com/JSQLParser/JSqlParser/compare/jsqlparser-5.3...jsqlparser-5.4

2 days ago
selenium

Nightly

Commits

  • ea152c5: [build] start the nightly grid build at release approval instead of after publish (Titus Fortner)
  • 141e9b8: [build] always use the latest Selenium Manager code when needed for tests (#18024) (Titus Fortner) #18024
  • fc33fe1: [build] Automated Browser Version Update (#18026) (Selenium CI Bot) #18026
  • 68d8d73: [build] Automated Selenium Manager Update (Selenium CI Bot)
  • f648460: [build] generate nightly versions at release approval instead of after publish (Titus Fortner)