Commit Graph

1 Commits (d86b18844e34a69ed3d83d8566b22002825feb3c)

Author SHA1 Message Date
Delyan Angelov eb45a321a5
tools: add cmd/tools/regress.v to simplify bisecting for regression bugs/features:
Support finding which commit introduced a regression:
       ./v run cmd/tools/regress.v --old COMMIT --command './v run /abs/path/to/regression_bug.v'

   Support also finding which commit introduced a feature (or made code compile/run):
       ./v run cmd/tools/regress.v --old COMMIT --command '! ./v run /abs/path/to/feature.v'

   NB: the '! ' is a POSIX shell feature. It may not work on Windows outside of WSL.
   Its meaning is to invert the exit code for the next command, i.e. 0 -> 1, non 0 -> 0

   If it does not work for you, you need to write a more explicit script that will exit
   with 0 code for all commits, where the feature does NOT work, and with non 0 code for
   all commits, where the feature does work.
2022-02-17 18:07:28 +02:00