On Fri, Dec 15, 2023 at 1:29 AM Patrick Steinhardt <ps@xxxxxx> wrote: > On Fri, Dec 15, 2023 at 01:24:20AM -0500, Eric Sunshine wrote: > > Just an aside, not strictly relevant at this time: Ævar has proposed > > that check-chainlint should not be creating conglomerate "test", > > "expect", and "actual" files, but should instead let `make` run > > chainlint.pl separately on each chainlint self-test file, thus > > benefiting from `make`'s innate parallelism rather than baking > > parallelism into chainlint.pl itself. More importantly, `make`'s > > dependency tracking would ensure that a chainlint self-test file only > > gets rechecked if its timestamp changes. That differs from the current > > situation in which _all_ of the chainlint self-test files are checked > > on _every_ `make test` which is wasteful if none of them have changed. > > Anyhow, with his proposed approach, there wouldn't be cascading line > > number changes just because a new self-test file was added. > > I was indeed also thinking along this way and would tend to agree. I > punted on it as I honestly only really care for fixing the immediate > issue that the post-processing causes for me. > > Are you fine with deferring this bigger refactoring? Oh, yes, of course. Please don't read my aside-comment as a suggestion that you should tackle such a change or that there is any urgent need to change how this all works. The currently proposed simple solution(s) to allow you to get past this issue are perfectly acceptable. (As a further aside, just for completeness since I already mentioned part of his plan, Ævar also really intended that the test scripts themselves, "t/t????-*.sh", should be run individually through chainlint.pl by the Makefile rather than sending all of them through it in one go, thus once again taking advantage of `make`'s innate parallelism, and only checking for &&-chain breakage if a test script's timestamp has actually changed rather than checking all test scripts unconditionally on every `make test`[1,2,3].) [1]: https://lore.kernel.org/git/220901.86bkrzjm6e.gmgdl@xxxxxxxxxxxxxxxxxxx/ [2]: https://lore.kernel.org/git/221122.86cz9fbyln.gmgdl@xxxxxxxxxxxxxxxxxxx/ [3]: https://github.com/avar/git/commit/ff8b4a12b30ac5ca521a64e74b0fd968ab2d4585