gecko-dev/gfx/wr/wrench
2023-12-04 19:09:41 +00:00
..
benchmarks
examples
invalidation Bug 1836063 - Add invalidation regression test r=gfx-reviewers,gw 2023-07-13 19:42:21 +00:00
reftests Bug 1868026 - Fix compositor surface promotion with underlay + masks on translucent slices r=gfx-reviewers,lsalzman 2023-12-04 19:09:41 +00:00
res
script
src Bug 1862061 - Fix wrench build bustage. 2023-11-01 11:04:11 +01:00
.gitignore
android.txt Bug 1823842 - Explicitly only build the wrench library on android. r=gfx-reviewers,jnicol 2023-03-22 09:02:37 +00:00
build.rs
Cargo.toml Bug 1838493 - Update wgpu to revision dcad7dfba92dd85c3ca21bb553a61834e01b04f5. r=webgpu-reviewers,gfx-reviewers,supply-chain-reviewers,glandium,ErichDonGubler 2023-07-07 21:39:24 +00:00
README.md

wrench

wrench is a tool for debugging webrender outside of a browser engine.

Build

Build wrench with cargo build --release within the wrench directory.

headless

wrench has an optional headless mode for use in continuous integration. To run in headless mode, instead of using cargo run -- args, use ./headless.py args.

show

If you are working on gecko integration you can capture a frame via the following steps.

  • Visit about:support and check that the "Compositing" value in the "Graphics" table says "WebRender". Enable gfx.webrender.all in about:config if necessary to enable WebRender.
  • Hit ctrl-shift-3 to capture the frame. The data will be put in ~/wr-capture.
  • View the capture with wrench show ~/wr-capture.

reftest

Wrench also has a reftest system for catching regressions.

  • To run all reftests, run script/headless.py reftest
  • To run specific reftests, run script/headless.py reftest path/to/test/or/dir
  • To examine test failures, use the reftest analyzer
  • To add a new reftest, create an example frame and a reference frame in reftests/ and then add an entry to reftests/reftest.list