SAP / project-foxhound

A web browser with dynamic data-flow tracking enabled in the Javascript engine and DOM, based on Mozilla Firefox (https://github.com/mozilla/gecko-dev). It can be used to identify insecure data flows or data privacy leaks in client-side web applications.
GNU General Public License v3.0
80 stars 15 forks source link

Make matching Playwright version available for automation #212

Closed leeN closed 1 month ago

leeN commented 6 months ago

I was thinking about how we can improve the onboarding experience, as there is no longer a tutorial on how to build Foxhound with Playwright integration.

Internally, I have a script that builds and adds the Playwright nits automatically. One difficulty is that it requires some configuration, as we do not expose the current Playwright version in a way that a shell script can easily read.

I was wondering if we could simplify this, e.g., by having a .PLAYWRIGHT_VERSION file inside the foxhound repository, which contains the currently matching release. If that messes with the (completely insane) mach bootstrap logic, we can also add this to the mozconfig as PLAYWRIGHT_VERSION="release-1.42" or similar. This should hopefully not mess with any mozbuild aspects. Compared to the first suggestion, this increases the maintenance effort significantly, as you have to touch a bunch of files for each change.

leeN commented 6 months ago

I have uploaded the build script here but it still needs a bit of messing around with. If you consider this something we want to include in foxhound directly, we can move it to this repo.

tmbrbr commented 6 months ago

Very nice, I think would be super useful to make playwright builds easier.

I would be in favour of not integrating into the mozconfig / mach build system to avoid higher maintainence costs.

@leeN could you prepare a PR which adds the suggested .PLAYWRIGHT_VERSION file? I'm also happy to include the script in the main repo as well.

tmbrbr commented 1 month ago

This can be closed, right? It should have been integrated in #225

leeN commented 1 month ago

Yes!