Re: [PATCH 05/15] t/Makefile: optimize chainlint self-test
From: Eric Sunshine <hidden>
Date: 2021-12-13 21:38:07
On Mon, Dec 13, 2021 at 2:36 PM Ævar Arnfjörð Bjarmason [off-list ref] wrote:
On Mon, Dec 13 2021, Eric Sunshine wrote:quoted
Another less sledge-hammer approach would be to make t/Makefile respect GIT_TEST_CHAIN_LINT so that it doesn't run `check-chainlint` for `test` and `prove` when that variable is `0`. That would allow your `git rebase -i --exec` case to avoid the wasted extra overhead of `check-chainlint` (and chainlint in general).Yes, but I just don't see why it's needed. We need to build e.g. t/helpers/ to run the tests, and doing that is probably always going to take eons of compilation times compared to these assertions. But it's a one-off eon because we declare the dependency DAG and don't recompile them unless the sources or their dependencies change. Likewise for these chainlint tests we can (and maybe should) make them optional, but as long as we're not needlessly running them when no changes have happened...
That's a good point, and the same observation applies to t/check-non-portable-shell.pl which is run unconditionally, as well, whenever `test` and `prove` are run.