playwright-roll

Automate Playwright Java client version bumps and regenerate API bindings.

1.5k|294|Updated Sep 25, 2020
One-click install
npx skills add https://github.com/microsoft/playwright-java --skill playwright-roll
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: playwright-roll
Source: https://github.com/microsoft/playwright-java/tree/main/.claude/skills/playwright-roll
Command: npx skills add https://github.com/microsoft/playwright-java --skill playwright-roll

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Provides a structured, repeatable workflow and guidance for updating the Playwright Java client to a new upstream release, resolving generator and implementation mismatches, and ensuring the Java bindings, driver resources, and tests are in sync with the upstream JavaScript implementation.

Core Features & Use Cases

  • Version bump and driver refresh: Run the roll pipeline to bump DRIVER_VERSION, download updated drivers, and regenerate api.json and Java interfaces.
  • API generator and Impl fixes: Guidance for updating ApiGenerator mappings, imports, and generated interfaces, and for implementing missing or changed methods in *Impl classes.
  • Test porting and debugging: Instructions for porting upstream tests, diagnosing hanging tests, rebuilding driver-bundle, and running targeted Maven test invocations.
  • Use Case: A maintainer performing a release roll uses the scripts and this checklist to update driver assets, regenerate APIs, fix compilation errors, and validate the full test suite.

Quick Start

Run the repository's roll_driver.sh script, follow the ROLLING.md checklist to regenerate the API and driver resources, then rebuild driver-bundle and run Maven to compile and fix any generator or Impl errors.

Frequently Asked Questions about playwright-roll

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I update Playwright Java to a new upstream release?

To update Playwright Java to a new upstream release, run the roll_driver.sh script to bump the driver version, regenerate the API bindings, and rebuild the Maven modules to sync with the upstream JavaScript implementation.

What is the process for regenerating Playwright Java API bindings after a version bump?

Regenerating Playwright Java API bindings involves running the roll pipeline to download updated drivers and generate api.json, followed by updating ApiGenerator mappings and editing Impl classes to accommodate new types and protocol changes.

How do I fix compilation errors in Playwright Java Impl classes after rolling a release?

Fixing Playwright Java Impl compilation errors after a release roll requires editing the Impl classes to implement missing or changed methods, then running targeted Maven test invocations to validate the fixes against the regenerated interfaces.

Can I automate porting upstream tests when updating the Playwright Java client?

You can automate porting upstream tests during a Playwright Java release roll by following the ROLLING.md checklist, which provides instructions for diagnosing hanging tests, rebuilding the driver-bundle, and running the full Maven test suite.

Why does my Playwright Java driver-bundle build hang after a version bump?

A Playwright Java driver-bundle build may hang after a version bump due to mismatched driver resources or incomplete API generation, requiring you to rerun the roll scripts and debug the test suite using the provided diagnostic instructions.

Do I need Maven to run the Playwright Java release roll pipeline?

Yes, you need Maven to run the Playwright Java release roll pipeline, as it is required to rebuild the driver-bundle module, compile the generated interfaces, and run the targeted test invocations for validation.