Re: [PATCH 05/15] t/Makefile: optimize chainlint self-test
- From
Eric Sunshine <sunshine@sunshineco.com>
- Date
- Dec 13, 2021, 21:37 UTC
- Message-ID
- <CAPig+cRrX396RRGGhjMDB6ybNa0WxcAOY-BfW4FTE84R+ucLkQ@mail.gmail.com>
- In-Reply-To
- <211213.86zgp470wa.gmgdl@evledraar.gmail.com>
On Mon, Dec 13, 2021 at 2:36 PM Ævar Arnfjörð Bjarmason <avarab@gmail.com> wrote:
Show 18 quoted lines
> On Mon, Dec 13 2021, Eric Sunshine wrote: > > 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.