Skip to content

Use NetworkOptions.ca_roots_path() for GIT_SSL_CAINFO - #73

Merged
giordano merged 1 commit into
JuliaVersionControl:masterfrom
ChronitonAI:ca-roots-path
Oct 2, 2026
Merged

giordano merged 1 commit into
JuliaVersionControl:masterfrom
ChronitonAI:ca-roots-path

Conversation

@Keno

@Keno Keno commented Oct 2, 2026

Copy link
Copy Markdown
Contributor

git() unconditionally set GIT_SSL_CAINFO to Julia's bundled share/julia/cert.pem, ignoring the user's CA configuration (JULIA_SSL_CA_ROOTS_PATH, SSL_CERT_FILE, SSL_CERT_DIR) and even an explicitly set GIT_SSL_CAINFO. Behind a TLS-intercepting proxy or with a corporate CA, HTTPS operations then fail with "self-signed certificate in certificate chain".

Take the location from NetworkOptions.ca_roots_path(), as the rest of Julia (Downloads, LibGit2) does, passing a directory as GIT_SSL_CAPATH, and leave the environment alone when the user already set GIT_SSL_CAINFO or GIT_SSL_CAPATH.

Fixes #41. Supersedes #47.

`git()` unconditionally set `GIT_SSL_CAINFO` to Julia's bundled
`share/julia/cert.pem`, ignoring the user's CA configuration
(`JULIA_SSL_CA_ROOTS_PATH`, `SSL_CERT_FILE`, `SSL_CERT_DIR`) and even an
explicitly set `GIT_SSL_CAINFO`. Behind a TLS-intercepting proxy or with
a corporate CA, HTTPS operations then fail with "self-signed certificate
in certificate chain".

Take the location from `NetworkOptions.ca_roots_path()`, as the rest of
Julia (Downloads, LibGit2) does, passing a directory as `GIT_SSL_CAPATH`,
and leave the environment alone when the user already set
`GIT_SSL_CAINFO` or `GIT_SSL_CAPATH`.

Fixes JuliaVersionControl#41. Supersedes JuliaVersionControl#47.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@codecov

codecov Bot commented Oct 2, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 90.90909% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 93.33%. Comparing base (446ceba) to head (39278f4).

Files with missing lines Patch % Lines
src/git_function.jl 90.90% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master      #73      +/-   ##
==========================================
- Coverage   94.44%   93.33%   -1.12%     
==========================================
  Files           1        1              
  Lines          36       45       +9     
==========================================
+ Hits           34       42       +8     
- Misses          2        3       +1     

☔ View full report in Codecov by Harness.
📢 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.

@Keno

Keno commented Oct 2, 2026

Copy link
Copy Markdown
Contributor Author

I don't have permissions on this repo, so you'll have to merge it.

@giordano
giordano merged commit c5867e9 into JuliaVersionControl:master Oct 2, 2026
21 of 23 checks passed
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.

Use NetworkOptions.ca_roots_path()

2 participants