New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BUG] WebKit linux-arm64 crash when navigating to specific site #16261
Comments
Could you share a repro with us? Usually this means that you have missing To find out what somewhere is, its usually the first line of the exception, in your case click and check. |
@mxschmitt I will work on getting you something here shortly. To your guess on the missing awaits, wouldn't that also cause the same issue when running locally? And why would it only occur with Webkit in the Docker image? |
I cannot share a repo, but I can send you the test files along with the login and URL you will need. Would that work? I assume I will need to send it through email like I did with this issue, correct? |
not always, could be timing, cpu load etc. depended. Sure, but I'd recommend to use e.g. this ESLint rule to find out if you have a missing await somewhere. We're not here for finding missing awaits in big codebases. And take a look what's done inside selectWriterCheckbox etc. to find out the clicks. |
@mxschmitt I have gone through the code previously to check for missing awaits. I haven't found any. I would be shocked is a missing await would be problematic on in Docker and only when using Webkit. Inside the selectWriterCheckbox is this simple code:
Which references this locator: The code I am using is not too big. In fact, some tests are as simple as going to a URL and then checking that it is the same URL (meaning it did not redirect) and that the expected page title is there. It doesn't actually interact with the page at all. Even those are having issues in Docker using Webkit. I will do another check for missing awaits before I send you anything, just to make sure. I will replay here if I didn't find anything so I can get direction to where you want the code sent. |
I installed TypeScript ESLint (TSLint has been deprecated as of 2019) and ran it. I had a few errors and several warnings. |
This sounds like a browser crash which we can fix most likely on our side. For that we need a repro or You can also send it to me over Slack or email: |
When I ran it this time I got "Target Closed" and "Target Crashed". I am pasting the log below. If I can get it to show "page.reload: Navigation failed because page crashed!" again I will paste that in here as well:
|
Here is one for page crash:
|
@mxschmitt I've tentatively assigned to you as part of triaging, but please review to ensure there's enough info above to take action. |
@mxschmitt The machine I am using the Docker image on is an M1pro Mac. I just had another employee try it (on a Mac as well, not sure about the processor) and he was getting the "Target Closed" issue as well. |
We would need to have a reproduction which we can run locally to debug this further, would it be possible to share a minimal repro with us? Otherwise we unfortunately can't act on it. |
I can share the files with something like wetransfer (our repos are locked down). Would that be fine? I just need an email to send it to. |
I provided you my email here #16261 (comment) |
Thank you! I am going to get something fixed in the code that I am currently working on and then I can send you that. |
@mxschmitt I sent those files and info. Let me know if you have any issue (other than the issue you are looking into) with it. |
@mxschmitt Following up to see if you were able to get the files OK. |
I think I'm seeing this same issue on GitHub Actions running on Mac — https://github.com/inrupt/solid-client-js/runs/7917797697?check_suite_focus=true (with DEBUG on: https://github.com/inrupt/solid-client-js/runs/7918082641?check_suite_focus=true ) I'm unable to reproduce locally (I'm on a Mac), and the tests pass on all other environments. We only started seeing this after upgrading to the latest version of Playwright: inrupt/solid-client-js#1684 The trace also doesn't seem to give anything of help, from what I can tell (they're available as artifacts for that workflow) |
Unfortunately the transfer expired, do you mind sharing it again? |
@ThisIsMissEm this is most likely caused by a race inside your code, please file a separate issue with a repro, otherwise we can't act on it. |
@mxschmitt I already sent you my code. Did you not get it? If it is a race condition, why is it only happening on Mac OS systems and only when run in the Docker image? |
I haven't been able to see one, and as far as I know the mac github actions runners are running within docker, hence commenting here instead of a new ticket. If it were a race, then I'd be able to reproduce on a non-GitHub Actions environment. But if you want I can open a separate ticket (though I'm certain this is a dupe) |
@eatonjl the link to your we transfer has expired. So you need to share it with me again. |
@mxschmitt Files resent. I am sending another one with the info needed for the .env file. |
.env file data sent also. |
@mxschmitt Did you get the files alright this time around? |
Sorry I was out of office, the credentials for Martin1 are not working for me, it says they are wrong. |
Very odd. I will get the password reset so you can get in. I will post here once that is done. |
@mxschmitt The user should be working now. Let me know if you still get an issue. |
Here is an example I made that uses the base install of Playwright. It runs fine on my Mac machine, locally, using the Playwright test runner. If I use Playwright's Docker image, I get "Target Crashed" or "Target Closed" each time.
Message when run in Docker:
Message when run locally:
|
I tried to reproduce it again, but it was working for me, which exact Docker image are you using? I tried focal. Maybe its a M1 only issue, with Docker this would end up in linux-arm64 that would be plausible. |
nice yeah was able to reproduce it, it's a m1 only bug -> linux-arm64
Expected: screenshot |
Was able to repro it in 1.24, 1.25, 1.26 but in 1.27 and 1.28 it was working (fixed). So closing for now! |
@mxschmitt Thank you! I cannot try it out at the moment because I am seeing another issue with Webkit (that I created a separate issue for). I will check it out once I get that working. |
Context:
Describe the bug
When I run a certain set of dests with Webkit locally on my machine, they pass just fine. If, however, I run them in the Playwright Docker image, the tests will randomly fail with the error "Target Closed". I ran it with the debugger line, and this was the output. I would love if someone could take a look and see why running in the Docker image causes it to behave differently, or more information about what "target" closed" could mean.
The text was updated successfully, but these errors were encountered: