[Feature]: relax the pyee upper-bound pin (currently <14) in pyproject.toml
(Filing here rather than in microsoft/playwright — the pin lives in this repo's pyproject.toml/meta.yaml, and prior reports of the same class of issue, #2190 and #2666, were both handled directly in playwright-python rather than redirected. The "please file at microsoft/playwright" notice on this tracker appears to be specific to the playwright-mcp bug template, not Python packaging issues.)
Feature Request
playwright currently pins pyee<14,>=13 (unchanged across the 1.62.0 → 1.63.0 release). pyee 14.0.0 was released on 2026-08-12 — over a month ago — but installing playwright alongside pyee==14.0.0 (or any other package that requires it) fails with a dependency-resolution conflict:
ERROR: Cannot install -r requirements.txt (line N) and pyee==14.0.0 because these package versions have conflicting dependencies.
ERROR: ResolutionImpossibleLooking at pyee's 14.0.0 changelog, the changes are: switching the build tooling to uv, dropping Python 3.8–3.11 support, and a bugfix to remove_all_listeners (only removing listeners for the specified event). None of that looks like it should be a breaking change for the subset of pyee's EventEmitter API playwright uses — but I haven't run playwright's own test suite against it to confirm.
Example
pip install playwright pyee==14.0.0should not raise ResolutionImpossible.
Motivation
We run playwright in CI alongside other dependencies that have already moved to pyee 14.x (via automated dependency updates), and the pin blocks that upgrade from landing.
A ceiling tied to "next major version" (<14, or even <15 after a one-time bump) isn't a durable fix here — pyee's own release history shows it doesn't reserve major version bumps for actual breaking changes: 9.0.0 → 14.0.0 in about 4 years, several majors released within days of the prior one, and 14.0.0 itself is a Python-support drop plus a bugfix, not an API break. A hard major-version ceiling on a dependency with that release pattern will go stale almost every time pyee publishes anything, recreating this exact issue repeatedly. We'd suggest dropping the upper bound entirely (pyee>=13) rather than replacing one ceiling with another — closer to what #2698 did for greenlet, whose bound was widened rather than left to go stale again.
Claude on behalf of e2jk
Source: microsoft/playwright-python