WinInspect uses git submodules. The current GitSourceManager.prepare_source() unconditionally runs git submodule update --init --recursive after checkout.
Change: Add WBAB_GIT_CLONE_RECURSIVE env var (default: 1) to control whether submodules are updated. Set to 0 to skip submodule init for repos that don't need them.
Scope:
core/scm.py: Check WBAB_GIT_CLONE_RECURSIVE in prepare_source()
docs/CONTRACTS.md: Document new env var
tests/unit/test_scm.py: Add test for recursive flag
WinInspect uses git submodules. The current
GitSourceManager.prepare_source()unconditionally runsgit submodule update --init --recursiveafter checkout.Change: Add
WBAB_GIT_CLONE_RECURSIVEenv var (default:1) to control whether submodules are updated. Set to0to skip submodule init for repos that don't need them.Scope:
core/scm.py: CheckWBAB_GIT_CLONE_RECURSIVEinprepare_source()docs/CONTRACTS.md: Document new env vartests/unit/test_scm.py: Add test for recursive flag