Skip to content

Improve gdk doctor

Ash McKenzie requested to merge ashmckenzie/improve-gdk-doctor into main

What does this Merge Request do and why?

This MR improves the speed (~30% faster!) and reliability of the gdk doctor command by:

  • Buffering diagnostic output during execution and only rendering once the entire diagnostic has finished.
  • Improved error handling for each diagnostic.
  • Creates temporary diff files under tmp/. Ideally we don't create any temporary files, but that'll be fixed in !2104 (merged).

Before

$ time gdk doctor
.............
✅️ GDK is healthy.
gdk doctor  49.33s user 73.95s system 440% cpu 27.996 total

After

$ time gdk doctor
.............
✅️ GDK is healthy.
gdk doctor  21.34s user 16.95s system 198% cpu 19.285 total

Merge Request checklist

  • This change is backward compatible. If not, please include steps to communicate to our users.
  • Tests added for new functionality. If not, please raise Issue to follow-up.
  • Documentation added/updated, if needed.
  • gdk doctor test added, if needed.
  • Add the ~highlight label if this MR should be included in the CHANGELOG.md.
Edited by Ash McKenzie

Merge request reports

Loading