From b56dbf4717bcdb962619a5847788c73e04f0a9f1 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 4 May 2026 10:25:24 +0000 Subject: [PATCH 1/5] Initial plan From 01448e18478aa3e773e883f743342d14bc3de41d Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 4 May 2026 10:27:43 +0000 Subject: [PATCH 2/5] fix(setup): update auditwheel to 6.3.0 and use Path objects for InWheel Agent-Logs-Url: https://github.com/microsoft/playwright-python/sessions/fd70085c-5b32-4dc2-8e63-b6edeadc9114 Co-authored-by: Skn0tt <14912729+Skn0tt@users.noreply.github.com> --- pyproject.toml | 2 +- setup.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 98ef2e892..88b20ba9a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,5 +1,5 @@ [build-system] -requires = ["setuptools==80.9.0", "setuptools-scm==9.2.2", "wheel==0.45.1", "auditwheel==6.2.0"] +requires = ["setuptools==80.9.0", "setuptools-scm==9.2.2", "wheel==0.45.1", "auditwheel==6.3.0"] build-backend = "setuptools.build_meta" [project] diff --git a/setup.py b/setup.py index 3bfa8d6f2..820b6a442 100644 --- a/setup.py +++ b/setup.py @@ -19,6 +19,7 @@ import subprocess import sys import zipfile +from pathlib import Path from typing import Dict driver_version = "1.59.1" @@ -176,7 +177,7 @@ def _build_wheel( if InWheel: wheelhouse_whl = os.path.join("wheelhouse", os.path.basename(whlfile)) shutil.move(whlfile, wheelhouse_whl) - with InWheel(in_wheel=wheelhouse_whl, out_wheel=whlfile): + with InWheel(in_wheel=Path(wheelhouse_whl), out_wheel=Path(whlfile)): print(f"Updating RECORD file of {whlfile}") print("Copying new wheels") shutil.rmtree("wheelhouse") From f22326471774c3fc70c2f8e4e2953f29f4feb6f0 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 5 May 2026 08:10:59 +0000 Subject: [PATCH 3/5] fix(setup): resolve InWheel path symlinks for macOS builds Agent-Logs-Url: https://github.com/microsoft/playwright-python/sessions/c7067ec4-86a2-4d5a-946e-959dd18402fa Co-authored-by: Skn0tt <14912729+Skn0tt@users.noreply.github.com> --- setup.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 820b6a442..bfa1413d7 100644 --- a/setup.py +++ b/setup.py @@ -177,7 +177,10 @@ def _build_wheel( if InWheel: wheelhouse_whl = os.path.join("wheelhouse", os.path.basename(whlfile)) shutil.move(whlfile, wheelhouse_whl) - with InWheel(in_wheel=Path(wheelhouse_whl), out_wheel=Path(whlfile)): + with InWheel( + in_wheel=Path(wheelhouse_whl).resolve(), + out_wheel=Path(whlfile).resolve(), + ): print(f"Updating RECORD file of {whlfile}") print("Copying new wheels") shutil.rmtree("wheelhouse") From 09b5eaf1d5350edd918f619dc9a30edb90216ab4 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 5 May 2026 08:27:42 +0000 Subject: [PATCH 4/5] fix(setup): resolve tempfile.tempdir for auditwheel 6.3.0 on macOS Agent-Logs-Url: https://github.com/microsoft/playwright-python/sessions/1a8a3424-455a-40cd-85d7-7df3750e3334 Co-authored-by: Skn0tt <14912729+Skn0tt@users.noreply.github.com> --- setup.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/setup.py b/setup.py index bfa1413d7..3508a26f1 100644 --- a/setup.py +++ b/setup.py @@ -18,10 +18,18 @@ import shutil import subprocess import sys +import tempfile import zipfile from pathlib import Path from typing import Dict +# auditwheel 6.3.0's InWheel uses tempfile.TemporaryDirectory for its bdist_dir, +# but its rewrite_record helper walks files via Path.resolve(strict=True). On +# macOS (and any system whose tempdir traverses a symlink, e.g. /var -> +# /private/var) the walked paths don't share a prefix with bdist_dir, causing +# Path.relative_to() to fail. Resolve the tempdir up front so both sides match. +tempfile.tempdir = str(Path(tempfile.gettempdir()).resolve()) + driver_version = "1.59.1" base_wheel_bundles = [ @@ -177,10 +185,7 @@ def _build_wheel( if InWheel: wheelhouse_whl = os.path.join("wheelhouse", os.path.basename(whlfile)) shutil.move(whlfile, wheelhouse_whl) - with InWheel( - in_wheel=Path(wheelhouse_whl).resolve(), - out_wheel=Path(whlfile).resolve(), - ): + with InWheel(in_wheel=Path(wheelhouse_whl), out_wheel=Path(whlfile)): print(f"Updating RECORD file of {whlfile}") print("Copying new wheels") shutil.rmtree("wheelhouse") From ce6efc123de78c208537c948f495bfcb2338a151 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 6 May 2026 07:51:22 +0000 Subject: [PATCH 5/5] fix(setup): bump auditwheel to 6.4.0 to drop tempdir global override auditwheel 6.4.0 includes pypa/auditwheel#569, which resolves the InTemporaryDirectory path internally. With that fix upstream we no longer need to mutate tempfile.tempdir at module load to work around the macOS /var -> /private/var symlink mismatch. Agent-Logs-Url: https://github.com/microsoft/playwright-python/sessions/d9049c05-0054-4d3c-a0d1-f6c72264b15e Co-authored-by: Skn0tt <14912729+Skn0tt@users.noreply.github.com> --- pyproject.toml | 2 +- setup.py | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 88b20ba9a..7ccb314f5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,5 +1,5 @@ [build-system] -requires = ["setuptools==80.9.0", "setuptools-scm==9.2.2", "wheel==0.45.1", "auditwheel==6.3.0"] +requires = ["setuptools==80.9.0", "setuptools-scm==9.2.2", "wheel==0.45.1", "auditwheel==6.4.0"] build-backend = "setuptools.build_meta" [project] diff --git a/setup.py b/setup.py index 3508a26f1..820b6a442 100644 --- a/setup.py +++ b/setup.py @@ -18,18 +18,10 @@ import shutil import subprocess import sys -import tempfile import zipfile from pathlib import Path from typing import Dict -# auditwheel 6.3.0's InWheel uses tempfile.TemporaryDirectory for its bdist_dir, -# but its rewrite_record helper walks files via Path.resolve(strict=True). On -# macOS (and any system whose tempdir traverses a symlink, e.g. /var -> -# /private/var) the walked paths don't share a prefix with bdist_dir, causing -# Path.relative_to() to fail. Resolve the tempdir up front so both sides match. -tempfile.tempdir = str(Path(tempfile.gettempdir()).resolve()) - driver_version = "1.59.1" base_wheel_bundles = [