for PETSc v3.15.0 and v3.14.6
C codes (Chapters 1--12) were tested with PETSc main (e45b2479) and v3.15.0 (81b4a8f0) and v3.14.6 (096591eb)
Python codes (Chapters 13--14) were tested with Firedrake commit dbe39dbf; PETSc v3.4.2-33053-ge85aaad7c1
Gmsh version 4.6.0.
Test machine: bueler-galago ubuntu 20.04