Skip to content

Remove direct OpenSSL dependency, use OS-native TLS#35

Merged
ctron merged 1 commit into
mainfrom
remove-openssl
Jul 14, 2026
Merged

Remove direct OpenSSL dependency, use OS-native TLS#35
ctron merged 1 commit into
mainfrom
remove-openssl

Conversation

@ctron

@ctron ctron commented Jul 14, 2026

Copy link
Copy Markdown
Owner

Summary

  • Remove the explicit openssl crate dependency and actix-web's openssl feature (actix-web only serves plain HTTP on localhost for OAuth2 callbacks)
  • Disable default TLS features on openidconnect, oauth2, and reqwest to control the TLS backend explicitly
  • Add two mutually exclusive features: native-tls (default) and rustls (for musl targets)
  • Remove vcpkg/OpenSSL setup from CI and release workflows for Windows
  • Musl release builds now use --no-default-features --features rustls instead of --features vendored

Test plan

  • CI passes on all platforms (ubuntu, windows, macos)
  • Release workflow builds for all targets (gnu, musl, darwin, windows)
  • cargo build works with default features (native-tls)
  • cargo build --no-default-features --features rustls works (musl scenario)

🤖 Generated with Claude Code

Remove the explicit openssl crate dependency and actix-web's openssl
feature. TLS is now controlled via two mutually exclusive features:

- native-tls (default): uses the OS-native TLS stack (OpenSSL on Linux,
  Secure Transport on macOS, SChannel on Windows)
- rustls: pure-Rust TLS, used for musl targets that lack a system TLS

This eliminates the vendored feature, the vcpkg/OpenSSL setup in CI for
Windows builds, and reduces the dependency tree significantly.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@ctron
ctron merged commit d2c3a03 into main Jul 14, 2026
9 checks passed
@ctron
ctron deleted the remove-openssl branch July 14, 2026 12:55
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.

1 participant