Closed En3Tho closed 1 month ago
It looks like you still have some very old Playwright cached somewhere, since the protocol logs show that its offering Chromium 1033 which corresponds to Playwright 1.28 while you connect with a more modern Playwright (1.43ish). So maybe try to purge some .NET interactive caches? Most likely its some old bin
/obj
folder somewhere.
I wonder where it is coming from because I do have chromium-1134 ffmpeg-1010
in /root/.cache/ms-playwright
. I did a clean install of playwright@1.47
and it is still weirdly reporting that. It is also happening when installing using a dontet build
+ install.ps1
combination. I wonder if I do in fact have some garbage cached in docker itself that somehow gets into container
I'm unfortunately not familiar with dotnet-repl, it seems to be using Microsoft.DotNet.Interactive.CSharp
- so maybe it has a cache somewhere.
I'd try deleting ~/.nuget/packages
as per here. Are you able to share a full reproduction? Ideally a Dockerfile which we can run? Does it reproduce there?
@mxschmitt Sorry for the delayed response. You were right: dotnet repl
bundles an old playwright version. Using driver search path env variable fixed the issue.
It is also worth noting that dotnet repl
has lots of problems and I ended up using dotnet script
instead as it's much more stable and easier to work with
Version
1.43-1.47
Steps to reproduce
Repro steps are somewhat convoluted:
dotnet repl --run (Resolve-Path ./Playwright.dib)
Expected behavior
Instance of LocalUtils is created without exception or a meaningful exception is thrown
Actual behavior
NullReferenceException
is thrown which is not really good or helpfulAdditional context
Below is a full output from notebook. There is an important hint:
pw:channel:recv: {"guid":"","method":"__create__","params":{"type":"LocalUtils","initializer":{},"guid":"localUtils"}}
LocalUtils initializer comes empty and triggers a null-ref inside LocalUtils ctor:I do see a guard from missing LocalUtils here:
Does it mean that LocalUtils initilizer must come non-empty? If so then a proper check should be done on deserialization from json. Null reference exception simply indicates there is a bug but it doesn't describe a context why it is a bug.
Or can local utils initializer be actually empty? E.g. no devices (not sure what those are in context of playwright).
Output:
Environment