-
-
Notifications
You must be signed in to change notification settings - Fork 688
Remove vendored OpenSSL in favor of platform-native TLS #2840
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Remove vendored OpenSSL in favor of platform-native TLS #2840
Conversation
Switch to using platform-native TLS implementations: - Windows: WinHTTP/Schannel (built-in) - macOS: SecureTransport (built-in) - Linux: System OpenSSL (via package manager) This removes the vendor-openssl feature and the openssl-sys dependency, eliminating the need to bundle OpenSSL with the binary. Users on Windows and macOS get TLS support out of the box, while Linux users need to have OpenSSL development libraries installed (which is common on most systems). Closes gitui-org#2004
d6e98c0 to
4eef238
Compare
| "status", | ||
| ] } | ||
| log = "0.4" | ||
| # git2 = { path = "../../extern/git2-rs", features = ["vendored-openssl"]} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
please only remove the relevant parts and leave the others
asyncgit/Cargo.toml
Outdated
| dirs = "6.0" | ||
| easy-cast = "0.5" | ||
| fuzzy-matcher = "0.3" | ||
| # TLS is provided by platform-native libraries: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is misplaced. lets remove and make sure all context is given in the readme section you edited
- Remove TLS comment from asyncgit/Cargo.toml (context is in README) - Restore commented git2 lines that were unrelated to OpenSSL changes - Restore vendor-openssl feature for cross-compilation targets - Update Makefile to use vendor-openssl for musl, ARM, and Apple x86 builds The vendor-openssl feature is no longer in defaults, allowing native TLS on standard builds while still supporting vendored OpenSSL for cross-compilation where system libraries aren't available.
|
@extrawurst , addressed both points in the latest commit. reverted the asyncgit/Cargo.toml changes entirely so theres no modifications to that file anymore. the TLS explanation is only in the README now and i left the unrelated commented lines alone. the approach now is simpler: just remove vendor-openssl from defaults but keep it available for cross-compilation via the Makefile targets. looks like CI hasnt triggered yet, might need approval to run? |
|
Hey, just checking if you could approve the CI run when you get a chance? Made the changes you requested in the latest commit. |
Summary
This PR removes the
vendor-opensslfeature and switches to platform-native TLS implementations:libssl-devor equivalent package)Changes
vendor-opensslfeature fromCargo.tomlandasyncgit/Cargo.tomlopenssl-sysdependency with vendored featureBenefits
Test plan
Closes #2004