rusackas commented on PR #45371:
URL: https://github.com/apache/superset/pull/45371#issuecomment-6323516825

   Found it. These tests capture the export response via 
`page.waitForResponse()` after the click, but the app itself also consumes that 
same response via `fetch().then(r => r.blob())` to trigger the download. 
Playwright 1.64 bundles Chromium 156 (up from whatever 1.62.1 shipped with), 
and it no longer reliably keeps the network body available to `response.body()` 
once the renderer's already drained it - headers come through fine (that's why 
the status/content-type checks never failed), just the body race lost.
   
   Pushed a fix: new `interceptGet()` helper in `intercepts.ts` that fetches 
the matched request independently via `route.fetch()` before handing an 
identical response through to the page via `route.fulfill()`, so the body read 
no longer races the page's own consumption. Swapped the 6 export-as-zip call 
sites (chart/dashboard/dataset list specs) from `waitForGet` to this; nothing 
else changed. oxfmt/oxlint/stylelint/custom-rules all pass locally - couldn't 
get a clean local `Type-Checking` run since this worktree's `packages/*/lib` 
isn't built (pre-existing, unrelated to this diff), but a full `tsc --noEmit` 
against a checkout with those built came back clean on all 4 touched files. CI 
will be the real tiebreaker - let's see how the e2e run goes.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to