Skip to content

Conversation

@tony
Copy link
Member

@tony tony commented Jan 25, 2026

Summary

Problem

The gitconfig fixture had an early return at lines 157-158:

if gitconfig.exists():
    return gitconfig

If ANYTHING creates .gitconfig first (empty or incomplete) - git itself during git init, the nspawn container setup, another fixture - the fixture returns early WITHOUT writing protocol.file.allow=always.

Confirmed by reporter running debug script: empty .gitconfig was created by container/git before the fixture could write the proper config.

Solution

Remove the early return. The fixture now always writes the complete config with protocol.file.allow=always.

Test plan

  • test_git_repo_fixture_submodule_file_protocol passes
  • All 18 submodule tests pass
  • Full test suite passes (565 passed, 1 skipped)
  • Arch Linux build test (reporter to verify)

@codecov
Copy link

codecov bot commented Jan 25, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 53.48%. Comparing base (e3ed829) to head (522e3c4).
⚠️ Report is 3 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #512      +/-   ##
==========================================
+ Coverage   53.46%   53.48%   +0.01%     
==========================================
  Files          38       38              
  Lines        5705     5703       -2     
  Branches     1063     1062       -1     
==========================================
  Hits         3050     3050              
+ Misses       2144     2143       -1     
+ Partials      511      510       -1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

tony added 2 commits January 25, 2026 16:42
why: The fixture was returning early if .gitconfig already existed,
even if the file was empty or missing protocol.file.allow=always.
This caused failures on Arch Linux build where git/container setup
creates an incomplete .gitconfig before the fixture runs.

what:
- Remove early return that skipped writing when file exists
- Fixture now always writes the full config with protocol.file.allow
- Follow-up to #510, #511 for #509
@tony tony force-pushed the libvcs-0.38.4-fix branch from 8cfe108 to 522e3c4 Compare January 25, 2026 22:43
@tony tony merged commit 1367c9a into master Jan 25, 2026
8 checks passed
@tony tony deleted the libvcs-0.38.4-fix branch January 25, 2026 22:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants