Thread (2 messages) 2 messages, 2 authors, 2026-01-17

Re: [PATCH] ci(*-leaks): skip the git-svn tests to save time

From: Phillip Wood <hidden>
Date: 2026-01-17 15:04:53

Hi Johannes

On 16/01/2026 17:31, Johannes Schindelin via GitGitGadget wrote:
From: Johannes Schindelin <redacted>

I noticed recently that the leak-checking jobs still take a lot of time,
and upon analysis, the git-svn tests contribute significantly to this.

Analyzing a recent CI run, I saw that the Git test suite contains
1,017 tests, running for approximately 5¼ hours total. Of these, 65
git-svn-related tests (~6% of test count) took 42.24 minutes combined,
accounting for ~13.% of the total runtime. This implies that the git-svn
tests are roughly twice as expernsive compared to the other tests.
Looking at the CI logs for this PR the p4 and cvs tests account for 
another 24 minutes of test time and I suspect they also offer little in 
the way of extra coverage. Unfortunately there is no equivalent of 
NO_SVN_TESTS to disable them - I wonder if building with NO_PYTHON and 
NO_PERL would make sense for the leak test job?

Either way I like the direction of this patch

Thanks

Phillip
quoted hunk ↗ jump to hunk
However, testing git-svn in the leak-checking jobs provides minimal
value: git-svn is implemented as a Perl script, and leak checking only
handles C code. While git-svn does call into Git's built-in commands
that are implemented in C, these are standard Git operations that are
already thoroughly exercised elsewhere in the test suite. Therefore,
running the git-svn tests in the leak-checking jobs only adds to the
overall run time with little value in return.

Given that the leak-checking jobs are particularly time-intensive and
these 42+ minutes of SVN tests per job provide no additional leak
detection value, skip them in the *-leaks jobs to reduce CI runtime.

Assisted-by: Claude Sonnet 4.5
Signed-off-by: Johannes Schindelin <redacted>
---
     ci(*-leaks): skip the git-svn tests to save time
     
     I leaned heavily on AI to implement this patch, in particular when
     analyzing the logs. That's why I added that trailer talking about Claude
     Sonnet. If this is undesirable, please let me know.

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-2031%2Fdscho%2Fskip-svn-and-leak-tests-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-2031/dscho/skip-svn-and-leak-tests-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/2031

  ci/lib.sh | 1 +
  1 file changed, 1 insertion(+)
diff --git a/ci/lib.sh b/ci/lib.sh
index f561884d40..a165c7f268 100755
--- a/ci/lib.sh
+++ b/ci/lib.sh
@@ -356,6 +356,7 @@ linux-musl-meson)
  	;;
  linux-leaks|linux-reftable-leaks)
  	export SANITIZE=leak
+	export NO_SVN_TESTS=LetsSaveSomeTime
  	;;
  linux-asan-ubsan)
  	export SANITIZE=address,undefined
base-commit: 7264e61d87e58b9d0f5e6424c47c11e9657dfb75
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help